(Build b735) – 8 Aug 2014
- Fixed bug where extremely long strings could cause a syntax error.
- Corrected bug in MISRA 2008 rule 16-0-6 and MISRA 2004 rule 19.10 and All Check script definitionsOfFunctionLikeMacroShallEncloseParameterInParentheses.upl where the check could not deal with a macro without parameters and where the check treated a keyword that had a parameter as a subset of that keyword as a parameter for the macro.
- Fixed bug in MISRA 2008 rule 0-1-11, 2008 MISRA rule 0-1-12, UnusedParametersVirtualAndOverride.upl, unusedLocal.upl, and UnusedParametersNonVirtual.upl where fuzzy parser treated ellipsis as a parameter.
- In MISRA 2008 rule 6-4-5, MISRA 2004 rule 15.2 and All Check script unconditionalStatmentShallTerminateNonEmptySwitchClauses.upl made it so the return, break, or throw statement can be after the block if a block was used for the body of the switch statement.
- Updated MISRA 2008 rule 6-4-5, MISRA 2004 rule 15.2 and All Check script unconditionalStatementShallTerminateNonEmptySwitchClauses.upl to accept return statements correctly.
- Corrected an issue in the naming convention Code Check script that would treat … as an individual parameter.
- Corrected a false positive issue ifdef and ifndef macros for MISRA 2008 rule 16-0-5, MISRA 2004 rule 19.9 and All Check script argumentsToFunctionMacrosShallNotUsePreproccessingDirectives.upl
- Corrected a special case issue when preprocessor is used to create if statements in MISRA 2008 rule 6-4-1, MISRA 2004 rule 14.9 and All Check ifConstructShallBeFollowedByACompountStatment.upl
- Corrected issue with double counting else statements.
- Added the option to all return statements in the body of a switch statement in MISRA 2008 rule 6-4-5, MISRA 2004 rule 15.2 and All Check script unconditionalStatementShallTerminateNonEmptySwitchClauses.upl
- Made MISRA 2008 rule 4-5-1, MISRA 2004 rule 12.6 and All Check script booleanOperatorShallBeUsedCorrectly.upl more robust and handle more situations
- Corrected issue in destructorSetDataPtrTo0.upl where an array was treated as a pointer.
- Corrected issue where empty throw specification was confused with a throw specification in MISRA 2008 rule 15-5-1 and All Check script destructorsNotThrowExceptions.upl.
- Corrected issue in operandOfSideEffect.upl where script confused ifdef with if.
- In und, always treat the first = in a macro as the split between name and value, thus allowing x=y=z (where x would be the name, and y=z would be the value). Also fixed quotes in interactive mode so that abc=\”123\” has abc as the name and “123” as the value.
- Add support for IAR RL78 compiler.
- Fixed bug where both a label and a name on a ‘do’ statement caused a syntax error in free format files.
- Fixed syntax errors for some ‘double complex’ declarations.
- Fixed bug where use of ‘\*’ in a string literal caused a syntax error when the ‘Allow C-Style comments’ option was enabled.
- Fixed bug where setting a variable with a name starting with ‘parameter’ caused a syntax error in fixed format Fortran.
- Fixed bug where a syntax error was generated when an arithmetic-if was used as the action statement in a logical-if.
- Added several types to the Dependency Filter list for the Dependency Browser and Graphs (where applicable). Also reordered the list alphabetically.
- Added ‘define implicit’ kind to identify methods that were implicitly defined.
- Updated the Watched directory exclude filter to allow a user to exclude relative to the watched directory.