Incorrect pretty printing of cast
ID0001286: This issue was created automatically from Mantis Issue 1286. Further discussion may take place here.
Id | Project | Category | View | Due Date | Updated |
---|---|---|---|---|---|
ID0001286 | Frama-C | Kernel | public | 2012-10-19 | 2012-10-19 |
Reporter | signoles | Assigned To | virgile | Resolution | no change required |
Priority | normal | Severity | major | Reproducibility | always |
Platform | - | OS | - | OS Version | - |
Product Version | Frama-C Oxygen-20120901 | Target Version | - | Fixed in Version | - |
Description :
=== test.i === char T; int G = 0; void f(int x); void main(void) { f((T + G) == 'b'); }
$ frama-c -print test.i /* Generated by Frama-C */ char T; int G = 0; extern void f(int x); void main(void) { f((int)(T + G) == 'b'); return; }
The casted expression is *(T+G) instead of ... == ... Note: the internal AST is correct, that is only the pretty printing which is incorrect.