Sorry, I am systematically trying out all available compiler options, this time --setlimit ... [G4:~/gnu/testgpc/adriaan] adriaan% cat setlimit.pas program setlimit; type intset = set of integer; bigset = set of 0..100000; begin writeln( 'SizeOf( set of integer) = ', SizeOf( intset)); writeln( 'SizeOf( bigset) = ', SizeOf( bigset)); end. [G4:~/gnu/testgpc/adriaan] adriaan% gpc -o setlimit setlimit.pas setlimit.pas:2: warning: constructing limited integer set `-2147483648 .. -2147483393'; setlimit.pas:2: warning: use `--setlimit=NUMBER' to change the size limit at compile time. setlimit.pas:3: warning: constructing limited integer set `0 .. 255'; setlimit.pas:3: warning: use `--setlimit=NUMBER' to change the size limit at compile time. The second warning is correct, the first a bit misleading, as it suggests construction of a very large set ... [G4:~/gnu/testgpc/adriaan] adriaan% ./setlimit SizeOf( set of integer) = 32 SizeOf( bigset) = 32 ... but both sets have regular sizes. The --setlimit argument changes the upper limit of the sets ... [G4:~/gnu/testgpc/adriaan] adriaan% gpc -o setlimit setlimit.pas --setlimit=10000 setlimit.pas:2: warning: constructing limited integer set `-2147483648 .. -2147473649'; setlimit.pas:2: warning: use `--setlimit=NUMBER' to change the size limit at compile time. setlimit.pas:3: warning: constructing limited integer set `0 .. 9999'; setlimit.pas:3: warning: use `--setlimit=NUMBER' to change the size limit at compile time. ... but the warning is the same. The set sizes are correct: [G4:~/gnu/testgpc/adriaan] adriaan% ./setlimit SizeOf( set of integer) = 1252 SizeOf( bigset) = 1252 However, there seems to be a problem with the implementation ... [G4:~/gnu/testgpc/adriaan] adriaan% cat setlimit2.pas program setlimit2; type intset = set of integer; bigset = set of 0..100000; const i: intset = [ - 1]; b: bigset = [ 100000]; begin end. This produces an internal compiler error when used with --setlimit ... [G4:~/gnu/testgpc/adriaan] adriaan% gpc -o setlimit2 setlimit2.pas --setlimit=1000000000 setlimit2.pas:2: warning: constructing limited integer set `-2147483648 .. -1147483649'; setlimit2.pas:2: warning: use `--setlimit=NUMBER' to change the size limit at compile time. setlimit2.pas:5: internal compiler error: Segmentation fault Please submit a full bug report, with preprocessed source if appropriate. See <URL:http://gcc.gnu.org/bugs.html> for instructions. Without --setlimit, the results are correct (the invalid set initializers are detected) [G4:~/gnu/testgpc/adriaan] adriaan% gpc -o setlimit2 setlimit2.pas setlimit2.pas:2: warning: constructing limited integer set `-2147483648 .. -2147483393'; setlimit2.pas:2: warning: use `--setlimit=NUMBER' to change the size limit at compile time. setlimit2.pas:3: warning: constructing limited integer set `0 .. 255'; setlimit2.pas:3: warning: use `--setlimit=NUMBER' to change the size limit at compile time. setlimit2.pas:5: error: invalid set initializer setlimit2.pas:6: error: invalid set initializer Regards, Adriaan van Os