flag. Note that ATerm 2.5 causes Nix to segfault, and ATerm 2.8
doesn't even build on x86_64-linux (see
http://bugzilla.sen.cwi.nl:8080/show_bug.cgi?id=1042).
svn path=/nixpkgs/branches/stdenv-updates/; revision=19020
were no longer in use.
* A patch for compiling the ATerm library with GCC 4.3. Without it,
the code for resizing ATerm tables gets stuck in an infinite loop
(http://bugzilla.sen.cwi.nl:8080/show_bug.cgi?id=841). The problem
is in this bit of code in hash.c, which tries to dynamically figure
out the maximum signed integer:
long try_long_max;
long long_max;
long delta;
try_long_max = 1;
do {
long_max = try_long_max;
try_long_max = long_max * 2;
} while (try_long_max > 0);
At -O2, GCC 4.3 determines that 1 * 2 * 2 * ... can never be <= 0,
and so it optimises this into a 1-instruction infinite loop:
0x0805a782 <keyPut+1282>: jmp 0x805a782 <keyPut+1282>
Quite beautiful really. ;-)
The fix is to use the LONG_MAX macro instead.
svn path=/nixpkgs/branches/stdenv-updates/; revision=13888
merge cleanly right away (kde-4, kernel stuff) so it should be
merged later. But the stdenv stuff is all there.
svn path=/nixpkgs/branches/stdenv-updates-merge/; revision=10793