Next question to post:
Hi,
I have the following test case:
<’
struct item_s {
payload:list of byte;
kind:[SMALL,BIG];
when SMALL item_s {
keep payload.size() < 10;
};
};
extend sys {
!item:item_s;
run() is also {
for i from 1 to 10 {
gen item keeping {
.payload.size() == 100;
};
};
};
};
‘>
I expected the test to generate only BIG items. Instead, I see that occasionally a SMALL item is generated, which leads to a contradiction. What is the explanation for this behavior?