Verissimo SystemVerilog Testbench Linter User Guide
Rev. 18.1.4, 15 March 2018

Chapter 13. What is New?

#.# - major version - Includes new features, major enhancements, architectural changes, bug fixes. 
Since 2015, a major version is named in sync with the release year, for example the first major version of 2015 is 15.1.
NOTE: When switching to a new major version it is recommended to start in a new workspace.

#.#.# - minor version - Includes bug fixes, minor enhancements.

18.1.4 (15 March 2018)


  • DVT-8744 & DVT-10195 Ability to tag failures and to filter them by tag


  • DVT-11259 Add parameter values in the rule description


  • DVT-11396 SVTB. False hits for methods with arguments of parameterized type

  • DVT-11403 SVTB.6.7.4 False hits when assigning a concatenation to a queue element

  • DVT-11413 Fixed HTML report file links to generated HTML code

  • DVT-11414 Fixed HTML report filtering by annotations

18.1.3 (8 March 2018)


  • DVT-11376 Fixed HTML report filtering by files and checks

18.1.2 (2 March 2018)


  • DVT-10798 Ability to merge HTML Reports


  • DVT-10694 Ability to match start/end of multi-line inline waivers based on name to allow interlaced waivers

18.1.1 (22 February 2018)


  • DVT-10217 Ability to assign fix effort estimation for check failures

17.1.45 (19 February 2018)


  • DVT-11195 New Rule: SVTB.31.2.1 Unused macro parameter


  • DVT-11120 False syntax errors for `includes between pragmas of inline lint waivers

17.1.44 (8 February 2018)


  • DVT-11155 New Rule: SVTB.1.1.9 No whitespace between hierarchical identifiers


  • DVT-11242 Add timeprecision information to SVTB. failure message

17.1.43 (1 February 2018)


  • DVT-10474 New Rule: SVTB.27.5.6 _t suffix is reserved for typedefs

  • DVT-10475 New Rule: SVTB.27.5.7 _e suffix is reserved for enums


  • DVT-10496 Add parameter to SVTB. to check delays only if time precision is set

  • DVT-11209 XVM51b should allow create calls in reg_adapter's reg2bus()


  • DVT-11199 XVM.4.22 False hits for status check inside macro

17.1.42 (25 January 2018)


  • DVT-11138 Add parameter to rule XVM28 to allow casting the result of the create call

  • DVT-11140 Ability to specify path for custom lint report using -custom_report_location


  • DVT-11157 IllegalArgumentException in SVTB.2.7, SVTB.2.8, SVTB.2.9, SVTB.27.9.2, SVTB.27.9.3

17.1.41 (19 January 2018)


  • DVT-10317 Improve performance of rule SVTB.27.10.1


  • DVT-11023 Show a warning if _JAVA_OPTIONS or JAVA_TOOL_OPTIONS system variables are set before running the tool


  • DVT-11096 IllegalArgumentException in SVTB 27.2.0

  • DVT-11106 SVTB.1.1.4 ignores maxNofChars parameter

17.1.40 (11 January 2018)


  • DVT-8842 Ability to append to the default parameter values of checks

  • DVT-10893 Ability to append to the default description of a check


  • DVT-11054 SVTB.7.27 & SVTB.12.4 false hits for let constructs

17.1.38 (18 December 2017)


  • DVT-10524 New Rule: SVTB.5.9.8 Do not assign forbidden values containing 'X' or 'Z' to the enum items

  • DVT-11007 New Rule: XVM. Do not use methods that call `xvm_info messages with XVM_NONE verbosity


  • DVT-10802 Add parameter to XVM. & XVM. to allow macro calls guarded by an if condition that checks the value of get_report_verbosity_level()

  • DVT-10885 Add parameter to SVTB.7.12.3 to allow parameterization with default values

  • DVT-10938 All rules should fail if there are no lines of compiled code

17.1.37 (6 December 2017)


  • DVT-10803 New Rule: SVTB.8.4.7 Do not use fork/join_none to call tasks inside functions


  • DVT-10782 Add parameter to SVTB.20.16 to allow input ports of type bit


  • DVT-10780 SVTB.20.16 False hits for signals of type enum that is typed to logic

  • DVT-10799 SVTB.5.2.7 False hits for assignment to structure of logic

17.1.36 (24 November 2017)


  • DVT-10192 New assertion rules (SVTB.14.3, SVTB.14.4, SVTB.14.10.*)


  • DVT-10569 SVTB.12.1.2 should also check if functions are explicitly declared automatic or static

  • DVT-10883 Increased default heap size to 3g and default stack size to 4m for all 64 bits distros

  • DVT-10909 Update values and attributes of the annotation tag in the ruleset DTD file


  • DVT-10193 Linter HTML report link doesn't preserve the selected failure when saving the state of the report

  • DVT-10903 SVTB.7.21 False hits interface methods

17.1.35 (17 November 2017)


  • DVT-10317 Improve performance of rule SVTB.27.10.1


  • DVT-10840 SVTB.5.2.7 False hits for assignments containing array selects

  • DVT-10881 NullPointerException in rule SVTB.12.7

17.1.34 (10 November 2017)


  • DVT-10815 XVM51 False hits for virtual component classes

  • DVT-10817 XVM46 False hits for virtual testbenche classes

  • DVT-10818 XVM49 False hits for virtual test classes

17.1.33 (1 November 2017)


  • DVT-10735 Improve performance of rule SVTB.20.15


  • DVT-10692 XVM51 False hits for component fields casted in build_phase() but created in a parent class

  • DVT-10767 SVTB.5.2.8 False hits inside "with" blocks used as macro arguments

17.1.32 (25 October 2017)


  • DVT-10592 SVTB.7.21 False hits for struct members

  • DVT-10669 SVTB.12.2.7 False hits for rand_mode(...) used as task

  • DVT-10681 SVTB.5.2.8 False hits for comparisons inside constraints

17.1.31 (20 October 2017)


  • DVT-10361 New Rule: SVTB.8.4.6 Do not access variables that might change inside forks


  • DVT-10655 Add rule info (name, title, description) into generated verissimo_rule_pool.xml


  • DVT-10646 SVTB.2.12 False hits when comments are preceded by whitespaces

  • DVT-10667 SVTB. False hits for delays with variable values

17.1.30 (13 October 2017)


  • DVT-10627 Improve performance of rule SVTB.10.15


  • DVT-10633 New Rule: SVTB.29.1.9 Banned $void()


  • DVT-10593 Add parameter to SVTB.12.3.7 to allow input ports declared first with the implicit direction


  • DVT-10620 XVM15c should not flag virtual classes

  • DVT-10628 NullPointerException while generating custom report for rulesets containing compilation rules

  • DVT-10632 SVTB.20.15 false hits for assignments inside functions

  • DVT-10636 XVM28 False hits for arrays of drivers

17.1.29 (6 October 2017)


  • DVT-10576 New Rule: XVM67 Do not use run phase and sub-run-phases at the same time in a component


  • DVT-10556 Add parameters to SVTB.7.1.4 to specify maximum number of lines for methods/constraints that can be implemented in the class body

  • DVT-10567 Add parameter to SVTB. to skip checking specified types

  • DVT-10586 Add parameter to SVTB.15.3.1 to specify maximum number of lines for constraints that can be implemented in the class body

  • DVT-10591 Add parameter to SVTB.20.15 to skip blocking assignments within initial blocks

  • DVT-10609 Add error ID to failure message for SEMANTIC_PROBLEM check


  • DVT-10565 XVM. should ignore calls to rand_mode and constraint_mode tasks as they don't consume time

  • DVT-10598 Apply ruleset specified severity to SEMANTIC_PROBLEM, SYNTACTIC_PROBLEM and NON_STANDARD rules

17.1.28 (28 September 2017)


  • DVT-10512 New Rule: SVTB.10.18 Do not use object handles with %p format specifier


  • DVT-10517 Add top_modules and run_test_module as options for parameter elementKind of SVTB.10.17

  • DVT-10564 Add API to access file information in Verissimo Custom Report


  • DVT-10580 SVTB. Fails when randomize calls are assigned to non-local variables

17.1.27 (22 September 2017)


  • DVT-10529 SVTB.10.15 and SVTB.29.7 show hits in XVM library

  • DVT-10540 NullPointerException in rule XVM.

17.1.26 (14 September 2017)


  • DVT-10322 New Rule: SVTB.29.7 Banned variables

  • DVT-10359 New Rule: XVM66 do_compare() must be overridden in all classes on which it's called

  • DVT-10369 New Rule: XVM65 run_test() must be called without arguments

  • DVT-10446 New Rule: SVTB.25.11 Do not use // comments in macro definitions containing line continuation

  • DVT-10471 New Rule: SVTB.1.1.8 Trailing whitespaces are not allowed


  • DVT-10354 Add parameter to SVTB.1.4.1 to allow statements on same line with assertions

  • DVT-10356 Add parameter to SVTB. to ignore missing default argument values

  • DVT-10357 Add parameter to SVTB.2.12 to check only files matching pattern

  • DVT-10420 Add parameter to SVTB.27.5.1 to skip checking identifiers based on their type

  • DVT-10452 Add -fail_on_severity flag to configure when the linter fails (on errors, warnings or infos)

  • DVT-10456 Add parameter to SVTB.1.5 to allow single line case statements

  • DVT-10490 Add enum item and parameter to supported element kinds for rule SVTB.27.1.0

  • DVT-10510 XVM51b should allow create calls in sequence's body()

  • DVT-10516 XVM51b should allow create calls in object's constructor


  • DVT-10432 SVTB.12.1.2 False hits for DPI functions

  • DVT-10466 SVTB.1.5.1 False hits for else if single line constraints

  • DVT-10508 doesn't return the correct exit code

  • DVT-10509 Checks with all hits disabled should be displayed as passed in the HTML report

  • DVT-10511 XVM16 should take into consideration inherited fields

17.1.25 (31 August 2017)


  • DVT-10305 Improve performance of rule XVM.2.1.8


  • DVT-10368 New Rule: SVTB.16.4 Do not use illegal_bins


  • DVT-7974 Show line number when XML files contain errors (ruleset, waivers)

  • DVT-10362 Add array name in the message of SVTB.


  • DVT-10434 XVM28 Fails when the guard contains a hierarchical identifier

  • DVT-10445 SVTB.16.1.3 False hits for coverpoints containing cast to enum

17.1.24 (24 August 2017)


  • DVT-9523 Rule XVM.2.8.6 is obsolete and was removed from the rule pool


  • DVT-10304 Improve performance of rule XVM.2.1.9

  • DVT-10306 Improve performance of rule SVTB.5.2.7

  • DVT-10307 Improve performance of rule SVTB.12.2.3


  • DVT-10257 New Rule: SVTB.2.15 Do not explicitly include files inside argument files

  • DVT-10258 New Rule: SVTB.25.10 Argument files comment style

  • DVT-10302 New Rule: XVM64 Object Constructor

  • DVT-10316 New Rule: XVM.9.2.8 Each verification component should be defined within a package

  • DVT-10318 New Rule: SVTB.21.6 Do not use import at compilation unit scope

  • DVT-10319 New Rule: XVM.2.3.8 A monitor should not assign values to interface members

  • DVT-10320 New Rule: XVM.3.1.10 Sequence item fields shall not be local or protected

  • DVT-10365 New Rule: SVTB.16.9.2 Sample covergroups using sample() instead of specifying a clocking event

  • DVT-10366 New Rule: XVM. Instantiate covergroups in constructor

  • DVT-10367 New Rule: SVTB.16.11 Do not set option.weight or option.goal of a covergroup, coverpoint or covercross

  • DVT-10418 New Rule: SVTB.7.33 Do not override constraints

  • DVT-10429 New Rule: SVTB.29.6 Banned concurrent assert expressions


  • DVT-10371 Add parameter to SVTB.5.2.7 to skip integer returning system functions by default

  • DVT-10424 Add parameter to SVTB. to skip checking $cast calls inside tasks


  • DVT-10377 XVM61 and XVM62 should allow setting timeout and error limit during start_of_simulation phase

  • DVT-10415 XVM. False hits when using an initialized local variable

17.1.23 (11 August 2017)


  • DVT-10409 NullPointerException in rule XVM.

17.1.22 (10 August 2017)


  • DVT-10345 SVTB. false hits on consecutive if/else branches

17.1.21 (3 August 2017)


  • DVT-10174 New Rule: XVM63 Do not use compare_field_int to compare more than 64 bits

  • DVT-10190 New Rule: XVM. Factory registration macros must match the class name


  • DVT-10189 Add parameter to SVTB.29.3.0 to ban only the class inheritance

  • DVT-10253 Add parameter to XVM20 to check for a run phase in parent class


  • DVT-10221 Add parameter to SVTB.12.7 to allow implicit return type when the function doesn't have a return

  • DVT-10255 SVTB.4.1.7 fails for larger than 32 bit sized literals

  • DVT-10321 Included waivers should be applied in the order they were included

  • DVT-10339 Line numbers are not inline with the HTML code added in the HTML report

17.1.19 (27 July 2017)


  • DVT-10176 XVM62 should also allow setting the error limit using uvm_report_object.set_report_max_quit_count()

  • DVT-10203 Add parameter allowMissingDirectiveOrMethodCall to XVM61 and XVM62 so that they will fail only when set_timeout() or set_max_quit_count() are called after end_of_elaboration phase


  • DVT-10254 XVM. false hits on subsequent lines

  • DVT-10266 HTML code added in the HTML report shows the line number bar below the code in some browsers

17.1.18 (21 July 2017)


  • DVT-10095 Improve performance of rule XVM51b

  • DVT-10248 Improve compilation performance when running the linter in in code with many macro calls


  • DVT-10219 Ability to show available rules not included in running ruleset


  • DVT-10137 Add parameter to SVTB.12.2.8 to allow the use of methods or macros as alternatives to return statements

  • DVT-10250 SVTB.11.2.2 enhancements for modifications followed by return, fixed array indexes and arrays passed as ref or output arguments


  • DVT-10244 ClassCastException during linting (rule SVTB

17.1.17 (12 July 2017)


  • DVT-10125 SVTB.11.2.2 Missed hit when iterating through multidimensional array with fixed select

17.1.16 (30 June 2017)


  • DVT-9357 Ability to include ruleset files in other ruleset files

  • DVT-9978 New Rule: SVTB.25.9 Banned comments content

  • DVT-10012 New Rule: UVM. Not allowed `uvm_info with UVM_NONE verbosity


  • DVT-9384 Show warning when included waivers / ruleset files do not exist

  • DVT-9464 Add .html and .htm to supported documentation extension in rule DCDC

  • DVT-9477 Ability to use multiple -gen_* arguments with the same invocation

  • DVT-10024 Ability to set the location of distribution's Eclipse and JRE folders using DVT_ECLIPSE_HOME and DVT_JAVA_HOME

  • DVT-10039 Add parameter to UVM. to allow system tasks

  • DVT-10058 SVTB.11.2.2 should check for list modifications inside initial blocks


  • DVT-10057 SVTB.11.2.2 false hits for list modifications inside nested loops

  • DVT-10088 Fixed ClassCastException in XVM.

17.1.14 (12 June 2017)


  • DVT-9707 Annotate failures with svn blame information

  • DVT-9977 New Rule: SVTB.14.2 Do not use anonymous assertions


  • DVT-9928 Add API to access hit information in Verissimo Custom Report


  • DVT-9938 SVTB.11.2.2 should not fail for list modifications followed by break or return

17.1.13 (31 May 2017)


  • DVT-9911 The ruleset generated by -gen_ruleset_xml contains a deprecated configuration directive

17.1.12 (26 May 2017)


  • DVT-9912 XVM. should allow usage of a temporary local variable

  • DVT-9933 Add parameter to SVTB.2.12 to allow user to configure the replacement for the dot before the file extension

  • DVT-9934 Add parameter to SVTB.2.12 to allow user to specify `endif comment format

  • DVT-9947 Add elementKind parameter to SVTB.10.17

17.1.11 (19 May 2017)


  • DVT-9922 XVM61 & XVM62 should take into account inherited methods that call set_timeout() respectively set_max_quit_count()

  • DVT-9942 XVM.4.20 false hits when a component has classes that extend it

17.1.10 (15 May 2017)


  • DVT-9462 Remove "at line: 0 in file: none" from check messages indicating certain components are not found

  • DVT-9905 Don't print the summary section two times

  • DVT-9906 Don't print lint failures when -ignore_lint_* flags are used

  • DVT-9907 Don't print compilation problems when -ignore_compilation_errors flag is used


  • DVT-9731 New Rule: SVTB.7.32 Use fully qualified class names

  • DVT-9908 New Rules: Added two new rules SYNTACTIC_PROBLEMS, SEMANTIC_PROBLEMS that can be configured to show the compilation problems with specified severities


  • DVT-9874 SVTB. should recognize when the return value is assigned to a variable that is checked subsequently

  • DVT-9897 XVM. should not fail when the create call uses named arguments


  • DVT-9898 Generated ruleset/rulepool documentation should not wrap in the middle of the word in the description area

  • DVT-9909 Rules disabled by waivers should not be printed out

17.1.9 (2 May 2017)


  • DVT-7032 & DVT-9712 Ability to include the source code files and jump to the failure line from the HTML report

  • DVT-9761 New Rule: XVM. Factory overrides must be called before any create call

  • DVT-9782 New Rule: XVM. Classes registered using factory registration macros must be package qualified


  • DVT-9840 Add parameter to XVM.5.1.2 to ignore non-existent IDs file


  • DVT-9831 -gen_custom_report can't load templates outside of working directory

  • DVT-9861 Disabled checks are reported as non-existent in batch output

17.1.8 (18 April 2017)


  • DVT-9808 Added flag to create columns with the number of failures

17.1.7 (10 April 2017)


  • DVT-9523 Rule SVTB.5.11.1 is obsolete and it was removed from the "all rules" ruleset


  • DVT-9760 Ability to generate a custom summary report


  • DVT-9762 Add parameter to XVM. to allow tests to create a root sequence without passing any context

  • DVT-9767 SVTB 7.14.0 support for constructors and tasks in methodName parameter

17.1.6 (31 March 2017)


  • DVT-9653 UVM. fails when using `uvm_field_int for integral typedefs

  • DVT-9675 SVTB.11.2.2 reports false hits when modifying queue while iterating over an array of queues

  • DVT-9714 SVTB.4.1.7 reports false hits for real literal constant

  • DVT-9739 SVTB.16.1.5 reports false hits when using select in coverpoint definition

  • DVT-9744 SVTB.7.20 reports false hits for struct variable

17.1.5 (23 March 2017)


  • DVT-9691 New Rule: Timeformat must be set whenever timeunit and timeprecision are set


  • DVT-9701 SVTB.2.14 hits are filtered when the mandatory file is in UVM

17.1.4 (20 March 2017)


  • DVT-9685 New Rule: XVM.5.1.4 Do not use `uvm_error before start_of_simulation_phase

  • DVT-9686 New Rule: XVM61 Timeout must be set before start_of_simulation phase

  • DVT-9687 New Rule: XVM62 Error limit must be set before start_of_simulation phase

17.1.3 (14 March 2017)


  • DVT-9600 SVTB.32.1.0 Add new parameters to skip array arguments that are modified or assigned to a variable that is not local to the method


  • DVT-9516 UVM. fails when using `uvm_field_int for packed arrays

  • DVT-9546 UVM. fails when using `uvm_field_real for realtime fields

  • DVT-9552 SVTB.1.4.1 reports false hit for variable = macro statement

  • DVT-9623 SVTB.9.10 false alarm for assignments of same member in different instantiations

17.1.2 (3 March 2017)


  • DVT-9543 New Rule: SVTB.20.16 Define all interface signals as logic except bidirectional ones

  • DVT-9544 New Rule: SVTB.2.14 Mandatory compiled files

  • DVT-9545 New Rule: XVM.5.1.2 Legal message IDs

17.1.1 (24 February 2017)


  • DVT-7673 Fail when files passed as arguments do not exist

16.1.37 (24 February 2017)


  • DVT-9468 New Rule: SVTB.9.10 Do not use blocking and non-blocking assignments on the same variable

  • DVT-9470 New Rule: SVTB.1.4.5 'begin' must be placed on the same line or the next line consistently in the same file


  • DVT-9507 SVTB.1.4.2 should ignore implicit variables

16.1.36 (10 February 2017)


  • DVT-9474 Linter API: Support for IActionBlock.getCondition() on case and case items blocks


  • DVT-9452 Linter API: Fix inner enums visibility

16.1.35 (1 February 2017)


  • DVT-7923 Add hyperlinks in failure message for SVTB.27.10.1

  • DVT-9356 Support for older git versions (<1.8.5) when annotating failures with git blame

  • DVT-9392 Linter API: Add IActionBlock.getCondition() to get the condition from conditional statements and loops

  • DVT-9413 Linter API: Add IActionBlock.getAction() and IActionBlock.getBlock() to identify the type of the action block


  • DVT-9359 Fix ClassCastException in rule SVTB.12.10

  • DVT-9396 Fix log parsing to match the new log format

  • DVT-9414 Linter API: Iteration through API returned sets should be in the same orders as they are declared

16.1.34 (13 January 2017)


  • DVT-7925 Export HTML report failures table to CSV file

  • DVT-8745 Filter failures by annotation (ex. git blame author) in HTML report

  • DVT-8746 Annotate failures with git blame information

  • DVT-9212 New Rule: SVTB.10.16 Do not use an enum argument with '%s' format specifier

  • DVT-9213 New Rule: SVTB. Do not assign packed struct from concatenation

  • DVT-9216 New Rule: SVTB.12.10 Do not consume time in a tasks assigning to an output argument


  • DVT-9189 Mark disabled checks with a strike through in HTML report

  • DVT-9190 Add top disabled checks and files to summary page when the DISABLED filter is set in HTML report

  • DVT-9280 Add parameter to SVTB.15.7.1 and SVTB. to check all possible implementations of a virtual function

  • DVT-9353 Add parameter to SVTB.7.28 to allow modification of list elements

16.1.32 (22 December 2016)


  • DVT-9307 New Rule: XVM51b: XVM Factory create calls must occur during XVM phases

  • DVT-9318 New Rule: XVM.2.2.10 Driver shall assign value to clocking block signals using non-blocking assignment


  • DVT-9297 Add number of error/warning/info/disabled hits to linter's output


  • DVT-9308 Parameter allowQueueConcatenation of SVTB.6.7.4 should allow concatenating arrays to queue

16.1.31 (9 December 2016)


  • DVT-9263 New Rule: SVTB.19.3.2 Specify timeunit and timeprecision in every module, program, package, or interface

  • DVT-9276 New Rule: XVM.4.20 Virtual interface shall be assigned to components through uvm_config_db

  • DVT-9277 New Rule: XVM.4.22 Caller shall always check return status of UVM register layer API calls

  • DVT-9278 New Rule: XVM.4.21 Caller shall always check return value of uvm_config_db API calls

  • DVT-9279 New Rule: XVM15c Driver shall call accept_tr(), begin_tr() and end_tr() in its run_phase


  • DVT-9267 XVM51 reports false hits when components are created from classes with parameters

  • DVT-9293 Fix NullPointerException when +dvt_auto_snps_vip_* flags are used

16.1.30 (24 November 2016)


  • DVT-5370 New Rule: SVTB.12.2.8 Missing return in non-void functions

  • DVT-9232 New Rule: SVTB.10.15 Use maximum one relational operation in a constraint expression

  • DVT-9237 New Rule: SVTB.5.1.2 Use default nettype none to force explicitly declared nets

  • DVT-9238 New Rule: SVTB 12.2.9 Functions not returning any values must be declared void

  • DVT-9239 New Rule: SVTB.7.30 Base classes must be declared virtual

  • DVT-9240 New Rule: SVTB.13.2.1 Use wait event.triggered instead of @event

  • DVT-9249 New Rule: SVTB.7.31 Only randomizable variables should be declared public


  • DVT-8612 SVTB. should not report errors for virtual functions of other objects

16.1.29 (14 November 2016)


  • DVT-9182 New Rule: SVTB.12.9 Declare methods using ANSI C-style arguments

  • DVT-9183 New Rule: SVTB 27.13 Specify end labels for blocks

  • DVT-9184 New Rule: SVTB.7.29 Do not declare non-public members as randomizable

  • DVT-9202 New Rule: SVTB.6.9 Do not use anonymous enums, structs, unions

  • DVT-9204 New Rule: SVTB.10.14 Do not use casex statements

  • DVT-9205 New Rule: SVTB 16.10 Do not use anonymous coverpoints and covercrosses

  • DVT-9210 New Rule: SVTB. Do not use new() without get_randstate() under an if uvm_report_enabled()

16.1.27 (28 October 2016)


  • DVT-9121 Improve performance of rule XVM15b


  • DVT-9093 Add parameter to SVTB.2.13 to specify if the timescale is mandatory in each file

  • DVT-9158 SVTB.7.26 should report hits on method implementations, not on extern declarations

  • DVT-9169 Add parameter to SVTB.7.28 to allow modification of fields inside the method parameters


  • DVT-9122 Build config: irun location is not correctly inferred when compiling in batch mode

  • DVT-9159 SVTB 7.27 should check only class handles and skip strings, enums and structs

16.1.26 (17 October 2016)


  • DVT-8720 SVTB.32.1.0, SVTB.32.2.0 should also show the function name, not only the argument name

  • DVT-9092 Change default value of SVTB.5.2.8 skipParameters to true


  • DVT-8896 Verissimo batch waivers don't work when DTD is specified

16.1.25 (9 October 2016)


  • DVT-7800 Inconsistent behavior for "not applied" checks

  • DVT-9072 Removed support for passed hits, rules should only report failures - all rules without failures are marked as passed


  • DVT-8747 Ability to see waived hits in Verissimo HTML reports and user interface

16.1.23 (14 September 2016)


  • DVT-9025 Linter API: Add ISourceElement.getSourceCode() and ISourceFile.getSourceLine(...) methods


  • DVT-9032 NullPointerException in rule XVM.

16.1.22 (12 September 2016)


  • DVT-6959 & DVT-8902 New Rule: SVTB.11.2.2 Underlying list modifications are forbidden in foreach loops

  • DVT-8489 New Rule: SVTB.2.13 Check that the same timescale is used in every file

  • DVT-8863 New Rule: SVTB.7.28 Do not modify method parameters

  • DVT-8916 New Rule: SVTB.10.13.1 Do not use force statements


  • DVT-8841 SVTB.12.5 Replace allowedCalls parameter with skipMethods that will match qualified method name not the method call text

  • DVT-8843 Add parameter allowedClassPattern to XVM.7.1 & XVM.7.2

  • DVT-8903 Add parameter to XVM51 to allow cast on the the newly created component: $cast(m_comp, create_component(...))

  • DVT-8998 SVTB.7.26 should not fail if the method body contains preprocessing directives


  • DVT-8833 SVTB.12.2.7 function with missing return type is assumed to be void instead of logic

  • DVT-8883 SVTB.5.11.1 False alarm when casting to enums from declared in a different class

16.1.21 (26 August 2016)


  • DVT-8673 Add parameter to SVTB.5.2.8 to skip comparisons of parameter values

  • DVT-8732 Add parameter to SVTB.14.1.2 to customize the allowed error reporting methods and macros in the else clause of an assertion


  • DVT-8885 SVTB. false alarm when using conditional operator in function arguments

16.1.19 (5 August 2016)


  • DVT-7583 New Rule: SVTB.15.8.1 Avoid name shadowing in randomize() with '{...}'

  • DVT-8646 New Rule: XVM. Factory override methods must use compatible override types


  • DVT-8752 Add flag -gen_ruleset_xml for generating the ruleset XML for any of the predefined rulesets (full, basic, compliance)

  • DVT-8864 SVTB.7.27 reduced the number of false alarms in foreach loops and 'array.method(item) with {...}', added the correct types for predefined method parameters and better detection for variables' scope

  • DVT-8901 Add parameters to SVTB.12.8 to: ignore forks, skip entities declared in macros or packages, ignore calls to predefined methods, user methods and inside macros


  • DVT-8884 SVTB.31.2.0 incorrectly flags unused macros when they are used as arguments to other macros

16.1.18 (25 July 2016)


  • DVT-8674 Add parameter to SVTB.6.7.4 to allow concatenating queues


  • DVT-8858 SVTB.1.3.2 and SVTB.27.7.1 should not report hits in __vlog__ files

16.1.17 (15 July 2016)


  • DVT-1196 New Rule: SVTB.1.1.7 Number of lines per file should not exceed <maxNofLine>

  • DVT-1637 New Rule: SVTB.7.26 Do not override method and call only super.method()

  • DVT-3599 New Rule: XVM. XVM Field macros must match field type

  • DVT-3836 New Rule: SVTB.7.27 Do not use a class handle without allocating it

  • DVT-8751 New Rule: SVTB.12.8 Method call stack size should not exceed <maxStackSize>


  • DVT-8672 Add parameter to SVTB.1.4.4 to skip macros


  • DVT-7822 SVTB.12.4 False alarm for copy constructor call

  • DVT-8811 Exceptions in rules ARSAa and ARBF

16.1.16 (8 July 2016)


  • DVT-3703 New Rule: SVTB.7.25 All classes that inherit from <baseClass> must not override <function>

  • DVT-7616 New Rule: SVTB.29.1.8 Banned $psprintf

  • DVT-8508 & DVT-8509 New Rule: SVTB.27.9.4 Coverpoint and covercross naming pattern


  • DVT-8135 Check that executed script is part of the same distribution where $DVT_HOME points to

16.1.15 (30 June 2016)


  • DVT-7821 Add Basic Ruleset

  • DVT-8677 Add parameter to XVM.2.8.5 to allow indirect calls

  • DVT-8679 Add parameter to SVTB. to allow fixed-width enums


  • DVT-8675 SVTB.7.21 False alarm for modport signals

16.1.14 (17 June 2016)


  • DVT-8694 Linter API: Added support for assertions


  • DVT-8671 SVTB. reports false hit for #1 some_task()

  • DVT-8703 NullPointerException in rules SVTB_7_1_4_1, SVTB_7_1_4_2, SVTB_7_1_4_3

  • DVT-8704 StackOverflowException in rules SVTB_31_1, SVTB_7_13, SVTB_7_14_0

16.1.10 (16 May 2016)


  • DVT-7674 Default mode for Verissimo without a custom ruleset changed from OVM to UVM ("-ovm" argument can be used to switch back to the OVM mode)

16.1.9 (9 May 2016)


  • DVT-8314 New Rule: SVTB. Class constructor must not call virtual functions


  • DVT-7720 Add parameter to SVTB & SVTB to skip calls with cast to void


  • DVT-7825 SVTB.31.1.0 False alarm for arguments of import DPI functions

16.1.8 (30 April 2016)


  • DVT-7623 Add parameter to rule ARAI to allow instantiation in test classes

  • DVT-8377 Add parameter to rule SVTB.27.1.0 to support pattern matching

  • DVT-8398 Add parameter to rule SVTB.2.10 to support regular expressions in the reference header

16.1.7 (25 April 2016)


  • DVT-8530 always fails while copying static resources

16.1.6 (18 April 2016)


  • DVT-8376 New Rule: SVTB. Use a specified number of spaces for indentation


  • DVT-8378 Refine XVM.6.2 to search for report macros in else branch of assertions

  • DVT-8438 Add parameter to rule SVTB.7.24 to check any combination of fields, functions or tasks

16.1.5 (8 April 2016)


  • DVT-8427 Ability to specify path for HTML lint report using -html_report_location


  • DVT-8144 Add parameter to rule SVTB.31.1.0 to skip unused modules

  • DVT-8311 Add parameter to rule XVM.2.1.17 to allow module access in uvm_config_db::set calls

  • DVT-8315 Add parameter to rule SVTB. to enforce strict "if" randomize checking, not allowing assert

16.1.4 (30 March 2016)


  • DVT-8316 New Rule: SVTB. Do not use #delay, ##delay, #1step


  • DVT-6327 Resolve system variables for SVTB.2.10 property headerFilePath

  • DVT-8312 Add parameter to XVM., XVM.2.4.4, XVM.3.1.3, XVM.3.3.3 to allow `uvm_*_utils_begin/end

  • DVT-8429 Add rule title in generated rulepool XML

16.1.3 (10 March 2016)


  • DVT-8389 When running -gen_*_doc an useless auto-config message is printed

16.1.2 (3 March 2016)


  • DVT-8340 Wrong Java path in MacOS distros

16.1.1 (24 February 2016)


  • DVT-7978 Updated JRE in distribution to version 1.8.0u66

  • DVT-8275 Build with Java 8, minimal JRE required version increased to 1.8


  • DVT-8331 NullPointerException due to concurrent thread access when lexer and parser operates on different threads (default mode)

15.1.41 (10 February 2016)


  • DVT-7062 New Rule: SVTB.7.23 Do not declare classes inside classes

  • DVT-8088 New Rule: SVTB.7.24 Do not indirectly access local variables, only "this" access is allowed

15.1.37 (23 December 2015)


  • DVT-8142 SVTB.31.1.0 should not report unused signal for ports used in execution blocks

15.1.32 (18 November 2015)


  • DVT-8085 Sometimes license checkout fails when using the latest FlexLM server (11.13.1)

15.1.29 (30 October 2015)


  • DVT-8010 Ability to waive a failure inside a macro using the path where the macro is defined


  • DVT-7995 SVTB. false alarms for parameter based expressions

15.1.24 (18 September 2015)


  • DVT-7214 Performance improvements for: SVTB.5.2.8, SVTB.12.2.7, SVTB.12.4, SVTB.27.10.1


  • DVT-7354 SVTB.31.1.0 flag unused signals / implicit declarations due to typos


  • DVT-7881 SVTB.31.1.0 false alarm for a variable used only inside "with" block in randomize() function

15.1.17 ()


  • DVT-7727 New verissimo.bat Windows script


  • DVT-7717 NullPointerException in rule XVM51

15.1.16 (27 July 2015)


  • DVT-7663 Use portable awk syntax in scripts

  • DVT-7687 Avoid silent exit after a StackOverflowError or OutOfMemoryError

15.1.15 (10 July 2015)


  • DVT-7599 Split Verissimo HTML Report files to avoid browser freezes

15.1.14 (6 July 2015)


  • DVT-7622 SVTB.30.* should have "DEPRECATED, deprecated" as the default deprecatedComments parameter value

  • DVT-7630 Add parameter to SVTB.32.1.0 to skip static functions


  • DVT-7537 SVTB.12.7 false alarm for covergroup sample function

  • DVT-7604 Ruleset DTD autocomplete in XML editor autocomplete doesn't work

  • DVT-7617 SVTB. fails to recognize multidimensional array selection

  • DVT-7621 SVTB.27.5.1 should not check labels capitalization

  • DVT-7626 XVM. and XVM. should not check the constructor end label

  • DVT-7628 SVTB.27.10.1 false alarm for export DPI functions

  • DVT-7629 SVTB.31.1.0 should not report export DPI functions as unused by default

  • DVT-7632 SVTB.5.2.8 should not fail for constraints

15.1.13 (19 June 2015)


  • DVT-7554 columns for every status with different cell colors

  • DVT-7559 should also check for report's index.html in <report>/verissimo_html_report directory


  • DVT-7560 Log, waivers, ruleset links generated by will start a download instead of opening in the browser

15.1.12 (5 June 2015)


  • DVT-7531 New Rule: SVTB.33.1.0 Duplicate code

  • DVT-7532 New Rule: SVTB.33.2.0 Duplicate code in functions

  • DVT-7533 New Rule: SVTB.33.3.0 Duplicate functions

  • DVT-7558 Added script to aggregate multiple Verissimo reports


  • DVT-7535 Add parameter to SVTB.7.15 to allow local member variables to be overridden

  • DVT-7551 SVTB. should allow using assert for randomization failure checks

15.1.11 (20 May 2015)


  • DVT-7474 License error due to a NullPointerException in FlexLM

15.1.9 (8 May 2015)


  • DVT-7063 New Rule: SVTB.12.7 Do not use the implicit syntax for function return type

  • DVT-7064 New Rule: SVTB.12.6 Maximum method line count

  • DVT-7411 New Rule: SVTB.31.3.1 Empty if/else

  • DVT-7412 New Rule: SVTB.31.3.2 Empty case item

  • DVT-7413 New Rule: SVTB.31.3.3 Empty loop

  • DVT-7436 New Rule: SVTB.21.5 Do not use wildcard imports


  • DVT-7435 Rules ARDI, ARSI and XVM28 should allow an expr of active_passive enum type guard


  • DVT-7433 Rule XVM3 should allow protected constructor

  • DVT-7434 Rule XVM16 should not check virtual drivers or monitors

15.1.3 (16 March 2015)


  • DVT-7122 Ability to add links in hit descriptions displayed in Linter HTML Report

15.1.2 (6 March 2015)


  • DVT-7120 Added hit macro call information in Linter HTML Report

15.1.1 (27 February 2015)


  • DVT-7065 Build for Java 7, minimal JRE required version increased to 1.7

3.5.39 (26 February 2015)


  • DVT-5657 New Rule: SVTB.7.22 Do not use hierarchical access to class member variables

3.5.38 (23 February 2015)


  • DVT-7045 Visual and usability enhancements for HTML lint report

  • DVT-7047 Lint report should print the number of passed, error, warning and info checks instead of hits

  • DVT-7058 SVTB.1.4.1 should also allow single line fork ... join

  • DVT-7059 SVTB.1.5 should also fail if single line statement is a macro

  • DVT-7060 Add parameter to SVTB.1.5 to allow single line statements inside fork ... join

  • DVT-7061 Add parameter to SVTB.2.12 to ignore file extension in `ifndef guard name

3.5.36 (9 February 2015)


  • DVT-7018 New Rule: SVTB.7.19 All non-static non-local functions must be declared virtual

  • DVT-7022 New Rule: SVTB.7.20 Do not write to static class variables from non-static functions

  • DVT-7030 New Rule: SVTB.7.21 Use the explicit static access syntax (::) when using static variables or static functions from non-static functions

3.5.35 (30 January 2015)


  • DVT-6999 New Rule: SVTB. Do not $cast to the implicit function result variable


  • DVT-6969 Improve performance of rule SVTB.30.1.0

  • DVT-6970 Improve performance of rule SVTB.29.1.0

  • DVT-6977 Improve performance of rule SVTB.30.2.0


  • DVT-6971 SVTB.30.1.0 should also flag hierarchical deprecated method calls

  • DVT-6972 SVTB.29.1.0 should also flag hierarchical banned method calls

  • DVT-6976 SVTB.30.2.0 should also flag hierarchical deprecated field access

  • DVT-6987 Ability to customize the HTML report look & feel

  • DVT-6988 SVTB.29.3.0 should not flag self-referencing API

  • DVT-6989 SVTB.30.3.0 should not flag self-referencing API

  • DVT-6990 Add parameter to rule SVTB.7.13.1 to allow hiding hits inside macros

  • DVT-6991 Add parameter to SVTB.7.15 to allow filtering by class member variable name pattern


  • DVT-6983 SVTB.31.1.0 should not report unused enum typedef if enum names are used

3.5.34 (16 January 2015)


  • DVT-6206 New Param Rule: SVTB.1.1.4 Max line length

  • DVT-6792 New Rule: SVTB.4.1.7 Unsized literal values should not exceed 32-bit integer range

  • DVT-6957 New Rule: SVTB.32.2.0 Pass strings by reference unless otherwise needed


  • DVT-5326 XVM.7.3.4 should hide fails inside the UVM library

  • DVT-5329 SVTB.16.1.6 should check cover bins not the variable

3.5.33 (12 January 2015)


  • DVT-6937 Improve performance of rule SVTB.

  • DVT-6940 Improve performance of rule XVM.2.1.17

3.5.32 (18 December 2014)


  • DVT-6907 Show currently running check and check duration


  • DVT-6911 XVM. should also pass when forever is used in a fork-join or in an indirect call

3.5.30 (28 November 2014)


  • DVT-6868 New Rule: SVTB.14.1.1 Assert property must have 'else'

  • DVT-6869 New Rule: SVTB.14.1.2 Assert property must have 'else $error'


  • DVT-6855 Add check title to HTML lint report

3.5.29 (21 November 2014)


  • DVT-6840 New Rule: SVTB. Class constructor must not be protected

  • DVT-6845 New Rule: SVTB.7.13.1 Repeat the 'virtual' keyword when overriding a method

  • DVT-6846 New Rule: SVTB.7.13.2 If a function is declared 'virtual' then the first definition in the inheritance tree should be 'virtual'

  • DVT-6847 New Rule: SVTB.7.13.3 Do not declare 'local virtual' methods

  • DVT-6851 New Rule: Member variables should be local, unless random


  • DVT-6822 Add parameter to component creation rules like ARAI, ARDI, ARMI, ARSI to allow create calls in functions called by build phase


  • DVT-6844 ClassNotFoundException when using Verissimo API annotations to set severity

3.5.28 (16 November 2014)


  • DVT-6423 Ability to specify the default severity for a rule or all rules in a ruleset

  • DVT-6823 Ability to specify the default severity for a custom rule using Verissimo API


  • DVT-6751 HTML lint report saved state should work between different reports

3.5.27 (7 November 2014)


  • DVT-6775 Custom rules are not included in ruleset and rulepool generated documentation

  • DVT-6776 Text should wrap in rulepool and ruleset generated documentation TOC

  • DVT-6786 Add DTD and ruleset version to rulepool generated xml

  • DVT-6793 Infinite recursion in SVTB.5.11.3

3.5.26 (31 October 2014)


  • DVT-6758 XVM.3.4.2 should check all functions, not only body()

3.5.25 (23 October 2014)


  • DVT-6723 Add title to HTML lint report

  • DVT-6736 Add hits table summary to HTML lint report

  • DVT-6737 Visual and usability enhancements for HTML lint report

  • DVT-6748 Print expected errors in a readable format without the stack trace


  • DVT-6727 HTML lint report hits table column widths are wrong after a resize

  • DVT-6742 Filter out all checks with no hits when file filters are used in HTML lint report

  • DVT-6746 Build configurations: extension mapping flags are ignored

3.5.24 (10 October 2014)


  • DVT-663 New Rule: SVTB.31.1.0 Unused element. Detect unused/dead/dangling variables, functions, classes etc.

  • DVT-4197 Ability to generate the HTML lint report in batch mode

  • DVT-6335 New HTML report with advanced functionality for filtering and searching

  • DVT-6665 New Rule: SVTB.32.2.0 Unused macro. Detect unused macros.


  • DVT-6708 Add "don't check argument types" to SVTB.32.1.0

3.5.19 (21 August 2014)


  • DVT-6559 New Rule: SVTB.32.1.0 Pass arrays by reference unless otherwise needed


  • DVT-6575 SVTB.31.1.0 should not flag generate blocks

  • DVT-6573 SVTB.31.1.0 false alarm on list type

  • DVT-6551 Verissimo compiles all files as SystemVerilog in a mixed language build configuration regardless of extension mappings

  • DVT-6565 Verissimo complains about non-existing irun executable even if not in ius.irun compatibility mode

3.5.17 (25 July 2014)


  • DVT-6524 Improve performance of rule XVM59


  • DVT-6531 Enhance scope info for randomize with contexts in SVTB.5.2.8


  • DVT-6521 Inline waivers should be applied after file waivers

3.5.16 (8 July 2014)


  • DVT-6491 Add showScopeInfo param to enhance the SVTB.5.2.8 hit message for easy waiving

  • DVT-6493 Add showScopeInfo param to enhance the SVTB.1.1.2 hit message for easy waiving


  • DVT-6512 SVTB.31.1.0 false alarms on property sequences

3.5.15 (8 July 2014)


  • DVT-6153 XVM. fails if sequence is virtual or if the body is implemented in extended class

  • DVT-6349 SVTB 10.7.3 should accept #0 in clocking blocks

  • DVT-6421 Clarify ARDI/ARSI vs. XVM28 rule descriptions

  • DVT-6422 Clarify XVM. vs. XVM52 rule descriptions

  • DVT-6424 Document parameter "skipIfTypedefTo" for SVTB.27.1.0

  • DVT-6425 Add parameter to SVTB.20.15 to check only interface ports

  • DVT-6426 Add parameter to ARDI/ARSI/ARMI/ARAI to allow base class instantiation

  • DVT-6427 Add parameter to SVTB.7.13 to allow for static shadowing

  • DVT-6458 Add parameter to ARDI/ARSI to allow instantiation inside env


  • DVT-6188 SVTB.6.7.4 false alarm for q1 = foo(q2)

  • DVT-6428 SVTB. false alarm for interface functions imported in modport

  • DVT-6437 SVTB. false alarm on queue1 0 = {1,2}

  • DVT-6443 Only first waiver could demote hit/check status

3.5.12 (10 June 2014)


  • DVT-2040 Linter API: Added ILinter.getProperties() to get the rule properties map

  • DVT-6323 Linter API: Added CustomRuleProperties annotation to set default values for properties in a custom rule

3.5.11 (30 May 2014)


  • DVT-6259 Add parameter to rule SVTB 21.1.1 in order to allow const variables


  • DVT-6272 UVM sequence libraries should not be part of the sequences set

  • DVT-6274 Ruleset documentation generation doesn't work with a custom ruleset

3.5.10 (22 May 2014)


  • DVT-6187 Add checkEndIfComment parameter to SVTB 2.12

  • DVT-6190 SVTB. should consider @param comments

  • DVT-6202 SVTB 27.2.0 should allow a list of suffix

  • DVT-6205 SVTB.27.10.1 more information in the error message to simplify waivers


  • DVT-6170 XVM.2.1.6 False hits when calling a banned method which is not from an uvm_component

  • DVT-6231 Architecture is not detected at first GUI launch

  • DVT-6232 Wrong error message, file and line number for create call checks

  • DVT-6233 Wrong type detection when working with deep hierarchies and typedefs

3.5.9 (12 May 2014)


  • DVT-5499 Add parameter to SVTB 2.2 to configure allowed extensions

  • DVT-6117 Ability to specify column width for SVTB.1.1.3

  • DVT-6118 SVTB.2.1 and SVTB.2.6 should allow inner constructs

  • DVT-6184 Add parameter to SVTB 1.4.1 to allow if(a) x=1; same line exceptions


  • DVT-5247 SVTB.30.1.0 does not fail on calls to inherited virtual deprecated method calls

  • DVT-6186 SVTB 1.5.1 should consider closing bracket when allowSameLine is used

  • DVT-6191 SVTB.5.11.1 and SVTB.5.11.3 should allow signed and unsigned casting

3.5.8 (30 April 2014)


  • DVT-6133 Views should update when linter window is selected

  • DVT-6135 Duplicate lint configurations when starting with

  • DVT-6136 Race condition was preventing the linter to start when is used

  • DVT-6143 Linter default preference files prefix changed from "custom_lint" to "verissimo"

  • DVT-6144 Linter not-matched waivers disable all checks when used with path or message filters

  • DVT-6145 Reapplying linter checks after removing a waiver that matches (and disables) a check doesn't enable the check back

3.5.7 (22 April 2014)


  • DVT-6121 Removed deprecated scripts and


  • DVT-6101 Compilation ignores part of directives specified in -cmd build configuration file

  • DVT-6111 Use full name resolution for architecture elements

  • DVT-6123 SVTB.1.5 shouldn't fail on "default" case item when allowSameLine is true

  • DVT-6126 Add "allowSameLine" parameter to SVTB 1.5.1 similar with SVTB 1.5

3.5.6 (15 April 2014)


  • DVT-6093 Semantic errors not displayed after compilation


  • DVT-6015 Add -stack_size and -heap_size to batch mode

  • DVT-6094 Reporting more compile information

3.5.5 (1 April 2014)


  • DVT-5957 Wrong UVM. failure when a parameter is used instead of a class name in type_id::create() call

  • DVT-5959 Wrong SVTB 27.5.2 failure on anonymous crosses

  • DVT-5960 Wrong SVTB 27.5.5 failure on anonymous crosses

  • DVT-5963 SVTB 7.13 should not fire if virtual not specified for one of the parents, but specified in grandparents

  • DVT-5977 Wrong SVTB 5.11.3 failure on enum elements

  • DVT-5978 Wrong SVTB failure on dynamic array access

  • DVT-5985 SVTB.5.11.1 should allow byte casting, as byte is an integer data type

  • DVT-5987 UVM.7.2 should not fire for unknown types that don't start with 'uvm' prefix

3.5 (27 February 2014)

Deprecated: Architecture and Preferences XML files are deprecated, use instead Ruleset XML.

  • DVT-4226 Ruleset XML support for architecture configuration, skip files, elements patterns and not applied status.

3.4.24 (2 December 2013)

  • DVT-5625 Linter API: Added IPackage.getFields() function

  • DVT-5626 Linter API: IClass.getConstructor() should not return the predefined constructor

3.4.22 (15 November 2013)

  • DVT-5592 Linter API: IModel get...() functions return elements collected from the entire compiled code

  • DVT-5593 Linter API: Added support for libraries

3.4.7 (5 August 2013)

  • DVT-5286 Adding code waiver from hit results in an "Index out of bounds" exception

  • DVT-5287 Adding code waiver from hit should check if file is writable or invoke team providers for checkout

3.4 (2 June 2013)

  • DVT-1450 New rule: SVTB.7.17 Method must be static / automatic, if declared static / automatic in ancestor

  • DVT-1984 Count the number of info/warning/error/fatal statements

  • DVT-2860 OVM55/UVM55 doesn't report an error if a function call is under an ovm/uvm macro

  • DVT-4420 Add parameter to SVTB 10.1 "Use parentheses to define operator precedence", allowing user to configure the checked operators

  • DVT-4429 Add parameter to SVTB.27.5.2 "Do not use long variable names" allowing a configurable number of characters

  • DVT-4438 Add parameter to SVTB 1.4.1 "One Statement Per Line" and by default don't check inside macros

  • DVT-4439 Add parameter to SVTB 1.5 "Single line statement without begin/end block", allowing statements on one physical line

  • DVT-4461 Add a dummy rule to indicate that there are compilation errors

  • DVT-4529 New Param Rule: SVTB.25.4 "Element comment" for classes, interfaces ...

  • DVT-4531 Add parameter to SVTB.19.3.1 "Module file must include a timescale" allowing module filtering by name

  • DVT-4532 Rule SVTB.10.1 "Use parentheses to define operator precedence" should not flag unary operators

  • DVT-4533 New Param Rule: SVTB.27.12 Class names that share common functionality should share a common prefix

  • DVT-4848 "Properly instantiated" rules should not fail for typedef based create calls

  • DVT-4967 Rule XVM16 "Virtual Interface" should not fail when using a field of virtual interface typedef

  • DVT-4971 SVTB.1.5 "Single line statement without begin/end block" should not fail for statements between fork join

  • DVT-4988 New Rule SVTB.29.5 "Banned program blocks"

  • DVT-4989 New Rule XVM.2.1.17 "Do not access directly modules from classes"

3.3 (10 March 2013)

  • DVT-3480 Linter nonexistent rules references in custom rulesets are signaled as disabled

  • DVT-4202 Linter HTML Report generates a ovm/uvm/ file that can be used to open the report from DVT

  • DVT-4370 Removed support for pre DVT 2.9.7 local licenses (DVT_LICENSE_VERSION is not used anymore)

  • DVT-4550 New Rule: SVTB.15.6.1 .sum() type mismatch in constraints

3.2.20 (6 March 2013)

  • DVT-4623 NullPointerException when linting with an empty file list

3.2.18 (4 March 2013)

  • DVT-4588 Rule XVM. doesn't work when the create call is using package access

3.2.16 (11 February 2013)

  • DVT-4507 Add "allowedTasks" parameter to SVTB., with the default value "constraint_mode"

3.2.15 (28 January 2013)

  • DVT-4441 SVTB.16.1.3 should allow autobin bit and enum coverpoints and it should be configurable to allow other types

  • DVT-4458 Fix NPE in Check_7_1 and Check_7_2

3.2.11 (11 January 2013)

  • DVT-3411 Rule "UVM23a Monitor Has Analysis Ports" should skip virtual classes and consider inheritance

  • DVT-3414 Rule "UVM23b Monitor's Analysis Ports Instantiation" should allow instantiation in build_phase() as well

  • DVT-4228 Add parameter to rule "XVM.2.1.6 Banned uvm_component methods" to controll the list of methods

  • DVT-3596 New Param Rule: XVM. Do not use factory registration macros for virtual classes

3.2.10 (24 December 2012)

  • DVT-1363 Cancel linting when full build is canceled

3.2.9 (11 December 2012)

  • DVT-4363 Verissimo does not take into account all build flags supported by DVT

3.2.5 (6 November 2012)

  • DVT-3397 +dvt_init+ should behave like a new parsing invocation in batch mode as well

  • DVT-4206 Add parameters to rule "SVTB.2.3 Filename must match implementation name" to allow custom extensions

  • DVT-4207 "SVTB.2.12 `include Guards" - Internal error while computing first line with code for the uvm library

  • DVT-4219 Rule "SVTB. Use a forever loop at the end of the run phase for drivers and monitors" should be applied only if run phase is overridden

  • DVT-4227 Add parameter to base class rules like "XVM 2.7.2 Environment Base Class" to allow direct or indirect inheritance checking

  • DVT-4229 Add parameter to rule "XVM.7.2 Only the following uvm classes can be instantiated" to controll the list of classes

  • DVT-4230 Enhance rule "SVTB.1.4.4 begin statements should be on the same line as what caused the begin" with detailed error message about the construct in order to allow fine waiving

  • DVT-4232 Add parameter to rule "XVM.7.1 Only the following classes can be extended" to controll the list of classes

  • DVT-4233 Change default value for "SVTB.12.5 Bind arguments by name when calling methods with many arguments" to greater then 3

  • DVT-4234 Consider time as a 2 state type and allow control in "SVTB.5.2.7 Assignment from 4 State to 2 State Must include X,Z check" and "SVTB.5.2.8 Comparison of 4 State Type Must use 4 State Equivalence Check"

  • DVT-4235 Enhance "SVTB.12.3.7 Specify type and direction of all arguments" to consider default input not only in classes and to accept ref and const ref

  • DVT-4238 Ability to generate all rules ruleset xml using -gen_rulepool_xml

  • DVT-4239 Enhance "SVTB. Functions should not call tasks directly" to allow task calls inside fork/join_none

3.2.4 (26 October 2012)

  • DVT-3412 Enhance rule "PKFN Valid File Names" to support multiple packages

  • DVT-4191 Fixed internal error when using -y/-v compilation directives

  • DVT-4193 Enhance rule "PKLD Legal Directory Name" to support multiple packages

  • DVT-4194 Fixed Rule SVTB27.3.2 to allow for xvm base classes

  • DVT-4204 Enhance rule "SVTB.1.5.1 Use '{' '}' block for single line constraints" with detailed error message about the construct in order to allow fine waiving

  • DVT-4205 Fixed custom ruleset checks name based on library attribute

3.2.3 (17 October 2012)

  • DVT-4094 Added unspecified parameter guards to parameterizable rules 29..0. 30..0

3.2 (9 October 2012)

  • DVT-1983 New Rule: SVTB.29.1.7 Banned $display and $write I/O system tasks

  • DVT-3860 New Rule: XVM.10.1 Do not use 'uvm_pkg::uvm_transaction'

  • DVT-3861 New Rule: XVM.10.2 Do not use 'set_config_int, set_config_string, set_config_object'

  • DVT-3862 New Param Rule: SVTB.29.3.0 Do not use banned classes

  • DVT-3863 New Param Rule: SVTB.29.4.0 Do not use banned macros

  • DVT-3864 New Param Rule: SVTB.30.1.0 Do not use deprecated method calls

  • DVT-3865 New Param Rule: SVTB.30.3.0 Do not use deprecated classes

  • DVT-3866 New Param Rule: SVTB.30.4.0 Do not use deprecated macros

  • DVT-3935 New Param Rule: SVTB.30.2.0 Do not use deprecated fields

  • DVT-3454 Fixed Rule "SVTB.5.2.7 Recommendation: Assignment from 4 State to 2 State Must include X,Z check" fails for "realtime a=5us"

3.1.15 (3 October 2012)

  • DVT-4022 Support escaped quotes in build configuration files

3.1.14 (27 September 2012)

  • DVT-3046 Linter waivers include functionality

3.1.10 (1 September 2012)

  • DVT-3878 Creating waiver from hit should include a message pattern

3.1.9 (13 August 2012)

  • DVT-2957 Removed SOLARIS release

3.1.8 (7 August 2012)

  • DVT-3842 Fixed argument passing in deprecated scripts

3.1.7 (2 August 2012)

  • DVT-3820 Fixed batch linter -gen_ruleset_doc with custom ruleset

3.1.6 (24 July 2012)

  • DVT-3363 Added -compile_waivers to use compile waivers in batch mode linting

  • DVT-3457 Added parameters to "SVTB.25.6.6 All class member variables must be commented" to control the comment style (inline, above). Rule was renamed to SVTB.

  • DVT-3759 New Param Rule: SVTB.7.15 Do not override fields from parent class

  • DVT-3760 New Param Rule: SVTB.7.16 Use the 'virtual' keyword when overriding a virtual method

  • DVT-3767 Fixed linter re-running failed checks twice

  • DVT-3770 Added the generate ruleset/rulepool docs path to output

  • DVT-3772 New Rule: SVTB.23.1 'DPI' is deprecated, use 'DPI-C' instead

  • DVT-3773 New Rule: SVTB.23.2 DPI C identifier equal with method name

  • DVT-3774 New Param Rule: SVTB.27.11.1 DPI methods naming pattern

  • DVT-3775 New Param Rule: SVTB.27.9.2 Interface instances naming pattern

  • DVT-3776 New Param Rule: SVTB.27.9.3 Virtual interface members naming pattern

  • DVT-3777 New Param Rule: SVTB.27.3.2 Class field naming pattern if field type is class

  • DVT-3786 New Param Rule: SVTB.29.1.0 Do not use banned method calls

  • DVT-3787 Abort linting if ruleset file has syntactic errors

3.1.4 (10 July 2012)

  • Reorganized rules = moved rules around in categories and changed some rule ids

  • DVT-3734 Changed linter rule IDs from OVM to XVM

  • DVT-3735 Fixed linter gen_rulepool_doc for UVM with -uvm flag

  • DVT-3736 Removed linter user_prefs and default_prefs files and flags

  • DVT-3737 Added linter manual_checks_status.xml to store the status of manual checks from GUI(replaces user_prefs)

  • DVT-3738 Added linter user_notes.xml to store the user notes form GUI (replaces user_prefs)

  • DVT-3739 Deprecated linter flag -ovm_prefs and replaced it with -linter_preferences

  • DVT-3740 New Param Rule SVTB.15.4.10 Not Allowed: randc

  • DVT-3741 New Param Rule SVTB.15.5.1 Rand class members must be public

  • DVT-3742 New Param Rule SVTB. Class members comment

  • DVT-3743 New Param Rule SVTB. Class method arguments comment

  • DVT-3744 New Param Rule SVTB.27.3.0 Class member naming pattern

  • DVT-3745 New Param Rule SVTB.27.4.0 Class method arguments naming pattern

  • DVT-3746 Fixed argument testing problem in

  • DVT-3753 New Param Rule: SVTB.12.5 Bind arguments by name when calling methods with many arguments

3.1.3 (2 July 2012)

  • DVT-572 & DVT-3328 Added a linter preference for considering NOT_APPLIED as PASSED, ERROR or NOT_APPLIED

  • DVT-1321 Added Reapply Failed Checks button in Linter GUI

  • DVT-3403 Linter preferences tab will be grayed out when the preferences file is not writable

  • DVT-3452 New Param Rule SVTB. Type of conditional expression in ternary conditional operator

  • DVT-3209 XVM checks updated for UVM build() -> build_phase(), connect() -> connect_phase(), run -> run_phase()

3.1.2 (15 June 2012)

  • DVT-3594 New Param Rule UVM. Proper use of the factory registration macros

  • DVT-3417 Rule "UVM2.1.1.1 Components must register with factory" fails when using the package qualifier (a::b) to specify the registered type

  • DVT-3453 Clarify description of UVM. and UVM. "Constructed string name must match instance name"

  • DVT-3455 Parameterize Rules "Constructed String Name must match Instance Name" in order to enforce $sformatf not $psprintf, for example

3.1 (1 June 2012)

  • DVT-3510 New Param Rule SVTB.1.1.6: Use 3 Spaces for Indentation

  • DVT-3511 New Param Rule SVTB.2.6: Only One class, interface, package, or module per File

  • DVT-3512 New Param Rule SVTB.2.7: Directory - File - Element Naming

  • DVT-3513 New Param Rule SVTB.2.8: Directory Contains File

  • DVT-3514 New Param Rule SVTB.2.9: Directory - File - Element Existence

  • DVT-3343 New Param Rule SVTB.7.14.0: Overridden Method Must Call super

  • DVT-3515 New Param Rule SVTB.25.1.0: File Header

  • DVT-3516 New Param Rule SVTB.25.2: `include Guards

  • DVT-3517 New Param Rule SVTB.27.1.0: All <elementKind>s should have a <suffix> suffix.

  • DVT-3518 New Param Rule SVTB.27.2.0: All classes that inherit from <baseClass> should have a <suffix> suffix.

  • DVT-571 Changed the icon for Reapply Linting in Problems View

  • DVT-2951 Waivers with DISABLED status can be applied on passing hits

  • DVT-2952 Added wildcard support for linter waivers

  • DVT-2955 Added overall score in HTML Report for linter checks and hits

  • DVT-3263 Added right click on hit to add code waiver

  • DVT-3264 Added one line waiver pragmas for linter

  • DVT-3334 Rebranded DVT SystemVerilog Linter to Verissimo

  • DVT-3364 Added apply-on property for waivers to define the status scope

  • DVT-3398 Verissimo linting will run by default in batch and GUI mode, added a new flag to run the UVM/OVM compliance (-compliance)

  • DVT-3484 Added support for name attribute in ruleset tag used in generated ruleset documentation

  • DVT-3486 Added information about the waiver path in the Verissimo linting configuration dialog (29 February 2012)

  • DVT-2954 Removed duplicated rules form rulepool

  • DVT-3027 Created Linter public extended ruleset

3.0.6 (1 December 2011)

Deprecated: Scripts:,, are deprecated; use instead:,,

  • DVT-2474 Filter library code problems for NON_STANDARD check

  • DVT-2494 Prompt to save dirty files when launching the GUI linter

  • DVT-2645 Changed the -startovm flag from to -start_linting

  • DVT-2646 Added -uvm flag to linter (batch/gui) to select the internal ruleset library (16 September 2011)

  • DVT-2396 Fixed "Template *.ftl not found" error when generating doc in batch linter

3.0.5 (10 September 2011)

  • DVT-1362 Fixed inconsistency in reporting runtime exceptions running the GUI linter

  • DVT-2319 Added overall score in GUI for linter checks and hits

3.0.4 (30 July 2011)

  • DVT-2239 Scripts:,, are marked for deprecation; use instead:,,

  • DVT-1858 Right click on hit or check to waive (13 May 2011)

  • Updated to create the workspace and project directories

  • Rules with DISABLED status are skipped in linter (27 January 2011)

  • SystemVerilog Linter API v1.0 is available

  • IDE linting can be canceled with a finer granularity (7 January 2011)

  • Added 'All Verilog Linter Issues' filter for Problems View to have an overview over the failures in IDE (29 November 2010)

  • Major speed improvements (10x faster) for the following checks (23 November 2010)

  • Fixed the problem with -cmd option prepending cwd to specified path (1 November 2010)

  • Added rulesets functionality

  • Changed the way linter is invoked in GUI mode. Now user can create and share multiple launch configurations that support changing the ruleset file or waivers file. (1 October 2010)

  • Added support for simple regular expressions in waivers message pattern.

  • Added pragma waivers (code waivers).

  • Waivers file syntax uses version "4".

  • Waivers file syntax version "3" is DEPRECATED.

  • Waivers file syntax version "2" has been DEPRECATED for REMOVAL in the next release.

  • Waivers file syntax version "1" has been REMOVED. (12 September 2010)

  • Changed the warning message for invalid arguments in batch mode

  • Updated script with flags for custom vmargs and memory. Using it will fix problems for environments with more memory needs

  • Fixed problem related to defines in ".f" files for batch mode (8 June 2010)

  • Fixed BASH incompatibility in "" script (16 April 2100)

  • Added waivers based on pattern (regular expression) matching on hit details message (it is applied ONLY on hit details - error message)

  • Added GUI support for pattern based waivers with regular expressions editor

  • Waivers file syntax uses version "3".

  • Waivers file syntax version "2" is DEPRECATED.

  • Waivers file syntax version "1" is DEPRECATED for REMOVAL in the next release. (12 March 2010)

  • Added Waiver GUI.

  • Added support for system variables.

  • Fixed bug related to loading read-only files.

  • Waivers file syntax uses version "2".

  • Waivers file syntax version "1" is DEPRECATED.