Tests: Improve t_dist_warn_coverage.py

This commit is contained in:
Wilson Snyder 2024-09-22 09:10:03 -04:00
parent a1a74cb1d9
commit 90215878f8

View File

@ -73,20 +73,59 @@ for s in [
'Unsupported/unknown built-in dynamic array method ',
'Unsupported: $bits for queue',
'Unsupported: $c can\'t generate wider than 64 bits',
'Unsupported: &&& expression',
'Unsupported: \'default :/\' constraint',
'Unsupported: \'{} .* patterns',
'Unsupported: \'{} tagged patterns',
'Unsupported: +%- range',
'Unsupported: +/- range',
'Unsupported: 4-state numbers in this context',
'Unsupported: Bind with instance list',
'Unsupported: Concatenation to form ',
'Unsupported: Modport clocking',
'Unsupported: Modport dotted port name',
'Unsupported: Modport export with prototype',
'Unsupported: Modport import with prototype',
'Unsupported: Non-variable on LHS of built-in method \'',
'Unsupported: Only one PSL clock allowed per assertion',
'Unsupported: Per-bit array instantiations ',
'Unsupported: Public functions with >64 bit outputs; ',
'Unsupported: RHS of ==? or !=? must be ',
'Unsupported: Randomize \'local::\'',
'Unsupported: Replication to form ',
'Unsupported: Shifting of by over 32-bit number isn\'t supported.',
'Unsupported: Signal strengths are unsupported ',
'Unsupported: Size-changing cast on non-basic data type',
'Unsupported: Slice of non-constant bounds',
'Unsupported: Unclocked assertion',
'Unsupported: Verilog 1995 deassign',
'Unsupported: Verilog 1995 gate primitive: ',
'Unsupported: [] dimensions',
'Unsupported: always[] (in property expression)',
'Unsupported: assertion items in clocking blocks',
'Unsupported: covergroup within class',
'Unsupported: default clocking identifier',
'Unsupported: don\'t know how to deal with ',
'Unsupported: eventually[] (in property expression)',
'Unsupported: extern forkjoin',
'Unsupported: extern interface',
'Unsupported: extern module',
'Unsupported: extern task',
'Unsupported: interface decls within interface decls',
'Unsupported: interface decls within module decls',
'Unsupported: module decls within module decls',
'Unsupported: program decls within interface decls',
'Unsupported: program decls within module decls',
'Unsupported: property port \'local\'',
'Unsupported: randsequence production list',
'Unsupported: randsequence repeat',
'Unsupported: repeat event control',
'Unsupported: s_always (in property expression)',
'Unsupported: this.super',
'Unsupported: trireg',
'Unsupported: wand',
'Unsupported: with[] stream expression',
'Unsupported: wor',
'Unsupported: event arrays',
'Unsupported: modport export',
'Unsupported: no_inline for tasks',
@ -111,11 +150,11 @@ def read_messages():
continue
if re.match(r'^\s*/\*', line):
continue
if re.search(r'\b(v3error|v3warn)\b\($', line):
if re.search(r'\b(v3error|v3warn|BBUNSUP)\b\($', line):
if 'LCOV_EXCL_LINE' not in line:
read_next = True
continue
m = re.search(r'.*\b(v3error|v3warn)\b(.*)', line)
m = re.search(r'.*\b(v3error|v3warn|BBUNSUP)\b(.*)', line)
if m:
line = m.group(2)
if 'LCOV_EXCL_LINE' not in line:
@ -194,8 +233,9 @@ def check():
if test.verbose:
print(fileline + ": Suppressed check for message in source: '" + msg + "'")
else:
test.error(fileline + ": Missing test_regress/t/*.out test for message in source: '" +
msg + "'")
test.error_keep_going(fileline +
": Missing test_regress/t/*.out test for message in source: '" +
msg + "'")
if test.verbose:
print(" Line is: " + line)