이 코드가 있습니다*** 경고 : WARN_GEN_CFA_UNSUPPORTED : specman에서 왜 그것을 얻을 수 있습니까? 그 의미는 무엇입니까?
<'
type type_t:[GOOD,BAD];
struct packet {
t:type_t;
!header:uint(bits:3);
};
extend sys {
!pkt:packet;
keep read_only(pkt.t==GOOD) => pkt.header==6;
run() is also {
gen pkt;
gen pkt.header;
print pkt;
};
};
'>
을 그리고 난 그것을 실행할 때 생성 할 때, 난,이 이상한 경고를 pkt.header 보낸 사람
*** Warning: WARN_GEN_CFA_UNSUPPORTED:
The following constraint-from-above includes input(s) which cannot be sampled
during the allocation of [email protected]
keep read_only(pkt.t == GOOD) => pkt.header == 6 at line 9 in @gen
Enforcing the constraint through later sampling of these inputs is not
supported yet, and therefore it will not be enforced in the following
gen-action.
at line 12 in @gen
gen pkt.header;
이 오류 메시지 내가 이상한, 나는 'gen pkt.header'를 발행하고, pkt는 이미 생성 (할당)되어 있으므로 't'입니다.
만약 내가 이것을 exaplain 수 있다면 나는 그것을 감사하겠습니다.
덕분에,
사실이 코드를 시뮬레이션 한 후에 코드는 정상적으로 작동하며 헤더는 6과 같습니다. 그래서 나는 당신이 말하는 것이 정확하다는 것을 확신하지 못합니다. 또한 경고가 생성되는 대상 필드가 아니라 입력을 실제로 참조하는 것입니다. 그래서 뭔가 이상한 뭔가가 입력과 함께 ... 왜? – yuvalg
네 말이 맞아, 좀 더 연구를 한 후에 대답을 바꿨다. –