Products, the Universe and Everything

The Riverblade Developer's Blog

Beth demonstrating Visual Lint at the ACCU Conference 2008  Anna taking part in a discussion panel at the European Software Conference 2007 

Welcome to our developer's blog. We hope that this forum provides an insight into us, our products and how we develop them. Please feel free to write to us if you have anything to add to any of the posts here.

Current Entries | Archives |

LintProject Professional has been released
Friday, February 13, 2009

The changes in this version include:
  • Corrected the installer properties text.

  • Corrected the product name displayed in the ReadMe and Licence files.

  • Added the "mark of the web" to HTML reports to avoid the "active content warning from the browser when a Visual Lint generated report is opened on the local filesystem.

  • Updated the Platforms.xml file (which is used to support per platform environment variables) with new platform names for Visual Studio 2005 Smartphone and Pocket PC SDKs.

  • Corrected a bug which was preventing reports from being correctly generated if a standalone project was analysed.

  • Minor revisions to HTML report stylesheets.

  • Display "Saved configuration" when /save is supplied on the command line.

Posted by Anna at 16:23 | Get Link


PC-lint 101: What does "previously used .lnt file" mean?
Thursday, February 12, 2009

A .lnt file is an "indirect file", which is simply a collection of PC-lint directives. Indirect files can be nested, and are expanded in the order they are encountered by PC-lint.

However, if PC-lint encounters the same .lnt file twice in the same context during execution, it will abort with Fatal Error 314 ("Previously used .lnt file"). Hence, if you are seeing this message your analysis has failed due to an error in your PC-lint configuration, or a clash between it and the command line used.

To fix this, simply determine which .lnt file is being duplicated and remove one of the occurances. The former can be done quite simply by running PC-lint with the -vi option, which lists the .lnt files encountered, and where they were found:

Using -vi to identify where indirect files are referenced

If there is a duplicated indirect file in the configuration/command line, you will receive an error 314 when the second instance is encountered:

Using -vi to identify where a duplicated indirect file is referenced

Although this particular example is quite trivial, it illustrates on of the most common causes of fatal error 314 - specifying an indirect file on the command line when it is already in your PC-lint configuration.

In our experience the most common offenders in this are the warning policy file options.lnt and the IDE environment options files env-vc*.lnt - both of which are often specified both on the command line and within std.lnt.

To fix the error, all you need to do is remove the duplicate references to the indrect file in question - either from within your analysis configuration or (if applicable) the command line used to invoke lint-nt.

Posted by Anna at 16:26 | Get Link


Visual Lint has been released
Monday, February 02, 2009

The changes in this version include:
  • Removed a duplicated status message from the "Visual Lint Status" pane when a manual analysis operation is performed.

  • The name of the active configuration is now cached, removing the need for repeated calls into the automation model to read it during the loading process.

  • The display filter control in the Analysis Status Display is now correctly initialised prior to a solution being opened.

  • Improved the responsiveness of the user interface by moving a number of analysis event handlers from the UI thread to worker threads. Various consequential changes to thread locking and synchronisation logic.

  • Visual Lint no longer uses the Visual Studio automation model to determine whether a file is open when analysis completes - instead document opened/closed events are used instead for speed.

  • The Analysis History Display is no longer updated during the progress of each analysis task, as doing so can significantly increase the loading on the UI thread.

  • File report tasks are now only generated when an analysis task completes if the "auto generate reports" option is off.

  • Increased the minimum report update interval to 60s, and modified the "Auto Refresh Reports" function to guard against repeated calls at short intervals under high CPU loading conditions.

  • When a "stop" command is issued to xgconsole (the IncrediBuild XGE executable) it is now echoed to the "Visual Lint Status" pane in the Output Window [Visual Lint Enterprise Edition].

  • Fixed a potential crash when an IncrediBuild analysis task is deleted.

  • When an IncredBuild control task is shutdown, it no longer attempts to process any outstanding analysis results - ensuring that the shutdown completes faster [Visual Lint Enterprise Edition].

  • Any IncrediBuild analysis tasks which complete with errors or warnings will now be coloured red and yellow respectively in the IncrediBuild Build Monitor (note that colouring warnings in this way requires IncrediBuild 3.32 Build 930 or later) [Visual Lint Enterprise Edition].

  • Corrected a bug in the expansion of additional include folders during the generation of project.lnt files.

  • Corrected a bug in the handling of per-file preprocessor symbols during the generation of project.lnt files.

  • Added a check to the project indirect file writer to filter out newlines within project additional options, as these can cause PC-Lint to crash if they are encountered in an indirect file.

  • Updated the copyright dates in the readme and licence files from "2004-2008" to "2004-2009".

Posted by Anna at 14:11 | Get Link