Versions Compared

Key

  • This line was added.
  • This line was removed.
  • Formatting was changed.
Comment: Published by Scroll Versions from space CPPTDESKDEV and version 2020.2
Scroll Ignore

In this release, we've focused on enhancing code analysis capabilities and extending support for environments.

Extended Support for Compilers

  • Support for Green Hills Software Compiler for PPC 2017.1.x

Extended Support for Platforms

  • Support for Windows Server 2016

Extended Support for IDEs

  • Support for Eclipse 4.7

Enhanced Flow Analysis

You can now configure Flow Analysis to analyze a list of functions and files from outside the scope (see Flow Analysis for details).

New Code Analysis Rules

Rule IDHeader
GLOBAL-UNIQUETYPEA class, union or enum name (including qualification, if any) shall be a unique identifier
GLOBAL-UNUSEDFUNCEvery defined function with external linkage shall be used at least once
MISRA2008-0_1_10_bEvery defined function with external linkage shall be used
MISRA2008-2_10_41A class, union or enum name (including qualification, if any) shall be a unique identifier

Anchor
removed_rules
removed_rules
1 The following rules have been removed and with the new rule MISRA2008-2_10_4 : MISRA2008-2_10_4_a, MISRA2008-2_10_4_b, MISRA2008-2_10_4_c

Updated Code Analysis Rules

Rule Category

Rule IDs

Flow AnalysisBD-SECURITY-TDENV, BD-SECURITY-TDCONSOLE, BD-PB-CHECKRET
Coding ConventionsCODSTA-10, CODSTA-11, CODSTA-61, CODSTA-67, CODSTA-112, CODSTA-CPP-02, CODSTA-CPP-11, CODSTA-CPP-66, CODSTA-MCPP-10_a, CODSTA-MCPP-10_b, CODSTA-MCPP-14, CODSTA-MCPP-16_b, CODSTA-MCPP-16_c, CODSTA-MCPP-16_d
CommentsCOMMENT-05
ExceptionsEXCEPT-17
FormatiingFORMAT-26
InitializationINIT-06
Joint Strike FighterJSF-051_a, JSF-071_b, JSF-081, JSF-082, JSF-117_b, JSF-127, JSF-132_a, JSF-142_a, JSF-163, JSF-164, JSF-185, JSF-186_h, JSF-194, JSF-202
MISRA CMISRA-030
MISRA 2004MISRA2004-2_4, MISRA2004-5_4_a, MISRA2004-5_4_b, MISRA2004-5_4_c, MISRA2004-9_1, MISRA2004-10_1_g, MISRA2004-12_8, MISRA2004-13_3, MISRA2004-16_9
MISRA 2008MISRA2008-0_1_10, MISRA2008-2_7_2, MISRA2008-2_7_3, MISRA2008-3_9_1, MISRA2008-5_2_4, MISRA2008-5_8_1, MISRA2008-6_2_2, MISRA2008-6_4_3_c, MISRA2008-6_4_6, MISRA2008-8_4_4, MISRA2008-8_5_1, MISRA2008-15_3_6
MISRA 2012MISRA2012-DIR-4_4, MISRA2012-RULE-5_7_a, MISRA2012-RULE-5_7_b, MISRA2012-RULE-12_2, MISRA2012-RULE-18_8
Memory and Resource ManagementMRM-45
Naming ConventionsNAMING-05
Object OrientedOOP-34
OptimizationOPT-30
Possible BugsPB-23, PB-25, PB-47
SecuritySECURITY-02, SECURITY-05, SECURITY-14, SECURITY-15, SECURITY-28, SECURITY-37

Resolved Bugs and FRs

Bug/FR IDDescription
CPP-40199Support for GHS PPC 2017.1 compiler
CPP-39947Support for Windows Server 2016
CPP-37054Support for Visual Studio 2017 IDE
CPP-39500[C++test Desktop] Support for Eclipse 4.7 Oxygen IDE
CPP-31853Add MISRA2008-0_1_10_b: Every defined function with external linkage shall be used
CPP-36719PB-47 does not report a violation if an argument contains unary minus ('-a') of an unsigned type
CPP-36964SECURITY-14 does not check scanf() variants
CPP-38107CODSTA-10 does not support "auto" type
CPP-38218COMMENT-05 may not report violation for variables defined in macros
CPP-38234MISRA2012-RULE-12_2 (MISRA2004-12_8) should check conditions for loops in the same way as for 'if' 
CPP-38339SECURITY-05 may not report violation when passing function parameter to printf()
CPP-38408[C++test Desktop] View Test Configuration action for specific violation doesn't display proper configuration
CPP-38588PB-25 reports incorrect violation on std::initializer_list
CPP-38592MISRA2004-10_1_g may not report violation on implicit conversion of function arguments from and to plain char types
CPP-39416CODSTA-11 doesn't report violations for its example code
CPP-39489RuleWizard property 'Kind' for 'cast' node doesn't work correctly for functional casts
CPP-39494MRM-45 reports false positive when memory allocated by malloc() is assigned to a pointer with multiple levels of indirection
CPP-39534Compilation error C2059 for d3dx10math.h(449)
CPP-39542[C++test Desktop] Test Case Editor ctrl+space assistant sometimes inserts space before value
CPP-39548Rename STRINGIZE macro in C++test runtime
CPP-39581Make MISRA2008-2_10_4 global rule
CPP-39741[C++test Desktop] SCC instrumentation for question mark may causes compilation errors
CPP-39742[C++test Desktop] MemoryAnalysis and Stubs features enforce xharness for all files (even with all instrumentation features off)
CPP-39756[C++test Desktop] Some "Flow Analysis Advanced Settings" cannot be modified in test configuration UI
PP-39758qcc: add support for enabling c99 mode via '-Wp' option
CPP-39804Parse error: type name is not allowed
CPP-39834NAMING-05 reports false positive for range-based 'for' loops
CPP-39835INIT-06 repors false violation if member initialization is performed in different translation unit
CPP-39838FORMAT-26 reports false positive on Rvalue References
CPP-39839NAMING-05 reports false positive for range-based 'for' loops
CPP-39894[Docs] UNIX install script errors
CPP-39912[C++test Desktop] SVN server port is ignored for Static Analysis
CPP-39919MISRA2012-DIR-4_4 causes problems on multiline comments
CPP-39925JSF-081(OOP-34) and JSF-082(CODSTA-CPP-02) report false positives when an assignment operator is explicitly defined as default
CPP-39973CLLOCRIT ignores comments in functions defined outside class body
CPP-39975[C++test Desktop] Test cases with Data Sources are counted incorrectly in DTP
CPP-40040CODSTA-67 reports false positive when member variable declaration contains 'constexpr' [c++11]
CPP-40122[C++test Desktop] may report mapping errors for Team-shared rulemaps
CPP-40137[C++test Desktop] Allow cloning RuleWizard rules with the Edit Rulemap dialog
CPP-40138[C++test Desktop] Allow removing multiple entries at once in the Edit Rulemap dialog
CPP-40139[C++test Desktop] Improve error message when cloned/mapped rule id is used in the Edit Rulemap dialog
CPP-40144[C++test Desktop] Improve performance of suppressions handling
FA-5764Errors building CFGs for C++ code
FA-5623No/bad handling of no throw allocators
FA-5783BD-PB-MODSTR rule may include '$tmp_.....' in the message, making it inconsistent between runs
FA-5672BD-PB-PTRARR does not report violations if the pointer arithmetic is done on an address of the member field
FA-5760Update BD-TRS-DLOCK to not report when the 2nd lock is done using pthread_mutex_trylock (or any other functions with similar functionality)
FA-5077BD-MISC-DC not found / duplicate violations
FA-4779Java graph elements do not contain information about implicit casting
FA-4830PB.ARRAY false positives due to missing model for String.Length property
FA-5836Preanalysis broken by exceptions
FA-5091Simulation state missing info about connection between pointer and array values
FA-5905BD-PB-OVERFWRpossibly false positive - incorrect determining out-of-bounds for last struct field of type char[0]
FA-5883Incremental analysis cache compactization does not work.
XT-10181 Value input for hours drops by one causes unable to borrow license. 
XT-34419 Importing findings from IDE by project doesn't work.
XT-34610Default build.id different than what is in documentation.
XT-34642 Parasoft Jenkins plugin gets stuck when being executed as part of pipeline project.
XT-34944Calculating different session tags for the subsequent builds
XT-34960DTP highlights incorrect line for the violation.
XT-34977Incorrect session tag was included in the report - noscBranchparameter
XT-34985SVN server port is not properly passed to the engine.
XT-34995Possible issues with metadata processor.
Scroll Only

For information about this release, see https://docs.parasoft.com/display/CPPDESKE1034/Updates+in+10.3.4