CFlet gets corrupt INFO_LHSTYPE
|
|
Bugzilla Link |
618 |
Created on |
Dec 11, 2009 03:41 |
Resolution |
FIXED |
Resolved on |
Dec 11, 2009 10:51 |
Version |
svn |
OS |
Linux |
Architecture |
PC |
Attachments |
crud.sac |
Extended Description
Created an attachment (id=620)
Source code to cause crash
The attached fails with Build #developer rev 16660:MODIFIED,
sac2c crud.sac
ERROR: line 8 in file crud.sac:
ERROR: Element types of one generator body expression and another generator
ERROR: body expression should be identical; types found: int{-1} and
ERROR: bool{0}
The direct cause of the problem is the CFlet code in Cf, which
determines that the LHS is AKV, so it replaces the RHS by
a constant.
I traced the problem as far as CFlet in constant_folding.c,
where it is apparent that the CFids code is somehow getting
the wrong type for the constant: integer instead of Boolean.
I don't really claim to understand that part of CF...