Parse external constraints as UNSUPPORTED.
This commit is contained in:
parent
daa545774e
commit
e9441cff50
|
|
@ -1263,7 +1263,7 @@ package_or_generate_item_declaration<nodep>: // ==IEEE: package_or_generate_i
|
||||||
| function_declaration { $$ = $1; }
|
| function_declaration { $$ = $1; }
|
||||||
//UNSUP checker_declaration { $$ = $1; }
|
//UNSUP checker_declaration { $$ = $1; }
|
||||||
| dpi_import_export { $$ = $1; }
|
| dpi_import_export { $$ = $1; }
|
||||||
//UNSUP extern_constraint_declaration { $$ = $1; }
|
| extern_constraint_declaration { $$ = $1; }
|
||||||
| class_declaration { $$ = $1; }
|
| class_declaration { $$ = $1; }
|
||||||
// // class_constructor_declaration is part of function_declaration
|
// // class_constructor_declaration is part of function_declaration
|
||||||
// // local_parameter_declaration under parameter_declaration
|
// // local_parameter_declaration under parameter_declaration
|
||||||
|
|
@ -6877,9 +6877,10 @@ dist_item<nodep>: // ==IEEE: dist_item + dist_weight
|
||||||
| value_range yP_COLONDIV expr { $$ = $1; /*UNSUP-no-UVM*/ }
|
| value_range yP_COLONDIV expr { $$ = $1; /*UNSUP-no-UVM*/ }
|
||||||
;
|
;
|
||||||
|
|
||||||
//UNSUPextern_constraint_declaration: // ==IEEE: extern_constraint_declaration
|
extern_constraint_declaration<nodep>: // ==IEEE: extern_constraint_declaration
|
||||||
//UNSUP constraintStaticE yCONSTRAINT class_scope_id constraint_block { }
|
constraintStaticE yCONSTRAINT packageClassScopeE idAny
|
||||||
//UNSUP ;
|
{ $$ = nullptr; BBUNSUP($<fl>2, "Unsupported: extern constraint"); }
|
||||||
|
;
|
||||||
|
|
||||||
constraintStaticE<cbool>: // IEEE: part of extern_constraint_declaration
|
constraintStaticE<cbool>: // IEEE: part of extern_constraint_declaration
|
||||||
/* empty */ { $$ = false; }
|
/* empty */ { $$ = false; }
|
||||||
|
|
|
||||||
|
|
@ -8,4 +8,10 @@
|
||||||
%Error-UNSUPPORTED: t/t_randomize.v:32:9: Unsupported: dist
|
%Error-UNSUPPORTED: t/t_randomize.v:32:9: Unsupported: dist
|
||||||
32 | x dist { [100:102] :/ 1, 200 := 2, 300 := 5, 400};
|
32 | x dist { [100:102] :/ 1, 200 := 2, 300 := 5, 400};
|
||||||
| ^~~~
|
| ^~~~
|
||||||
|
%Error-UNSUPPORTED: t/t_randomize.v:37:1: Unsupported: extern constraint
|
||||||
|
37 | constraint Packet::ex { header > 0 };
|
||||||
|
| ^~~~~~~~~~
|
||||||
|
%Error: t/t_randomize.v:37:23: syntax error, unexpected '{'
|
||||||
|
37 | constraint Packet::ex { header > 0 };
|
||||||
|
| ^
|
||||||
%Error: Exiting due to
|
%Error: Exiting due to
|
||||||
|
|
|
||||||
|
|
@ -16,14 +16,14 @@ class Packet;
|
||||||
header < (64'h1 << length);
|
header < (64'h1 << length);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
constraint b {
|
constraint c {
|
||||||
header >= length - 10;
|
header >= length - 10;
|
||||||
header <= length;
|
header <= length;
|
||||||
}
|
}
|
||||||
constraint c {
|
constraint d {
|
||||||
foreach (in_use[i]) {
|
foreach (in_use[i]) {
|
||||||
!(start_offset <= in_use[i].Xend_offsetX &&
|
!(start_offset <= in_use[i].Xend_offsetX &&
|
||||||
start_offset + len - 1 >= in_use[i].Xstart_offsetX);
|
start_offset + length - 1 >= in_use[i].Xstart_offsetX);
|
||||||
}
|
}
|
||||||
}
|
}
|
||||||
constraint order { solve length before header; }
|
constraint order { solve length before header; }
|
||||||
|
|
@ -34,6 +34,8 @@ class Packet;
|
||||||
|
|
||||||
endclass
|
endclass
|
||||||
|
|
||||||
|
constraint Packet::ex { header > 0 };
|
||||||
|
|
||||||
module t (/*AUTOARG*/);
|
module t (/*AUTOARG*/);
|
||||||
|
|
||||||
Packet p;
|
Packet p;
|
||||||
|
|
|
||||||
Loading…
Reference in New Issue