Frama-C runs out of memory on small C program (combinatorial explosion in analysis of "main"?)
ID0002189: This issue was created automatically from Mantis Issue 2189. Further discussion may take place here.
|ID0002189||Frama-C||Plug-in > wp||public||2015-12-03||2015-12-03|
|Product Version||Frama-C Sodium||Target Version||-||Fixed in Version||-|
Running "frama-c -wp -wp-rte -wp-prover none 10g.c" on the attached program causes Frama-C to run out of memory after allocation of 3 GBytes memory (deliberately restricted by "ulimit -v 3000000" to avoid swapping/paging).
This phenomenon disappears e.g. if
- "main" is renamed to "foo" in line 28,
- both "p1" and "p2" are made "static" in line 23,24, or
- field "e0" or "e1" is removed from the "struct S" definition in line 9,14, and its use in line 33/34 is also removed.
Probably, there is some combinatorial explosion effect in the analysis. While this isn't a real bug, it may be worthwile to look after it, since the circumstances under which it can be observed are quite strange.