Yes, I guess I was a little too optimistic about __int128_t. The
corresponding unsigned is __uint128_t and the combination with unsigned
does not work (even in gcc). So I guess I will have to drop that for
now.

I tried the branch with clang 3.2. It compiles fine and bignums seem ok.
Since that version supports __int128, I also tried the versions without
128 bit integers (GEN_OF1(64)) and those also seem ok.

Which clang version are you using?

arne

On Tue, 1 Jan 2013, Jonas Walld?n @ Pike  developers forum wrote:

Ah, this was rather a case where "unsigned __int128_t" wasn't a valid
type. Commenting out the INT128 support gives a complete build with no
unexpected warnings but math is still broken:

 Pike v7.9 release 5 running Hilfe v3.5 (Incremental Pike Frontend)
 > -0x80000000;
 (1) Result: 2147483648
  • overflow Arne Goedeke
    • overfl... Jonas Walld�n @ Pike developers forum
      • ov... Jonas Walld�n @ Pike developers forum
      • ov... Jonas Walld�n @ Pike developers forum
        • ... Jonas Walld�n @ Pike developers forum
        • ... Arne Goedeke
          • ... Jonas Walld�n @ Pike developers forum
            • ... Arne Goedeke
              • ... Arne Goedeke
                • ... Jonas Walld�n @ Pike developers forum
                • ... Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum
                • ... Jonas Walld�n @ Pike developers forum
                • ... Martin Nilsson (Opera Mini - AFK!) @ Pike (-) developers forum
                • ... Mirar @ Pike developers forum
                • ... Jonas Walld�n @ Pike developers forum
                • ... Arne Goedeke

Reply via email to