Frama-C Bug Tracking System - Frama-C
View Issue Details
0000522Frama-CKernelpublic2010-06-28 18:452011-10-10 14:14
Assigned Tovirgile 
PlatformOSOS Version
Product VersionFrama-C Boron-20100401 
Target VersionFixed in VersionFrama-C Nitrogen-20111001 
Summary0000522: size of long array can't be represented with OCaml int
DescriptionWhen running the attached program, Jessie asked me to report a 'crash':

liveness_test.c:57:[jessie] failure: Unexpected exception.
                  Please submit bug report (Ref. "Cil.SizeOfError("Array is so long that its size can't be represented with an OCaml int.", _)").
[kernel] The full backtrace is:
         Raised at file "src/kernel/", line 506, characters 30-31
         Called from file "src/kernel/", line 500, characters 2-9
         Re-raised at file "src/kernel/", line 503, characters 8-9
         Called from file "src/lib/", line 746, characters 40-45
         Called from file "", line 134, characters 6-20
         Called from file "src/kernel/", line 50, characters 4-20
         Called from file "src/kernel/", line 170, characters 4-8
         Plug-in jessie aborted because of an internal error.
         Please report as 'crash' at

In fact, the array "hist" in line 52 has a size of (4+4+4)*16777215=201326580, which is beyond the max value of a signed int. I'll just decrease the upper bound of that array as a workaround. (By the way: gcc has similar problems with large arrays.)
TagsNo tags attached.
Attached Filesc liveness_test.c (1,288) 2010-06-28 18:45

2010-07-01 09:30   
This is part of a more general integer representation issue: all integer constants should be moved to Big_ints.
2011-06-15 19:28   
Fixed since rev 13959. Will be available in Nitrogen.
Thanks for the bug report.

Issue History
2010-06-28 18:45JochenNew Issue
2010-06-28 18:45JochenStatusnew => assigned
2010-06-28 18:45JochenAssigned To => cmarche
2010-06-28 18:45JochenFile Added: liveness_test.c
2010-07-01 09:30virgileNote Added: 0000961
2010-07-01 09:30virgileAssigned Tocmarche => virgile
2010-07-01 09:30virgileStatusassigned => acknowledged
2010-07-01 09:30virgileCategoryPlug-in > jessie => Kernel
2011-06-15 19:28monateNote Added: 0001977
2011-06-15 19:28monateStatusacknowledged => resolved
2011-06-15 19:28monateResolutionopen => fixed
2011-10-10 14:13signolesFixed in Version => Frama-C Nitrogen-20111001
2011-10-10 14:14signolesStatusresolved => closed