www.digitalmars.com         C & C++   DMDScript  

digitalmars.D - Is it possible that the Karmic upgrade interferes with dmd?

reply Michael Mittner <m.mittner shebang.at> writes:
I've got a very strange problem and I wanted to ask if you guys have any 
ideas.

Yesterday I compiled my project with dmd 1.041 and Tango and it worked. 
Today I compiled the same code again to get started (I sometimes like to 
just do a full rebuild to get started) and I get this message:

/usr/local/bin/../import/tango/math/IEEE.d(641): number is not representable

The only thing that really has changed since the last build is that I 
upgraded to Karmic today. But I can't think of any connection, besides maybe 
the linking that could be affected by that. So I thought I'll ask here, 
maybe someone of you can think of anything.

Thanks,
Mike
Oct 29 2009
parent reply Walter Bright <newshound1 digitalmars.com> writes:
Michael Mittner wrote:
 I've got a very strange problem and I wanted to ask if you guys have any 
 ideas.
 
 Yesterday I compiled my project with dmd 1.041 and Tango and it worked. 
 Today I compiled the same code again to get started (I sometimes like to 
 just do a full rebuild to get started) and I get this message:
 
 /usr/local/bin/../import/tango/math/IEEE.d(641): number is not representable
 
 The only thing that really has changed since the last build is that I 
 upgraded to Karmic today. But I can't think of any connection, besides maybe 
 the linking that could be affected by that. So I thought I'll ask here, 
 maybe someone of you can think of anything.

It could be that the C library routine strtold(), which the lexer relies on, changed. That has nothing to do with linking.
Oct 29 2009
parent reply Michael Mittner <m.mittner shebang.at> writes:
Walter Bright wrote:

 It could be that the C library routine strtold(), which the lexer relies
 on, changed. That has nothing to do with linking.

Hmm. This is where dmd struggles: 641: [0x1.a5f1c2eb3fe4efp+73, 0x1.A5F1C2EB3FE4EFp-1, 74], // normal I have no idea how the lexer works, but that sounds pretty plausible when I look at that constant in there. Anyway, after further investigation I figured out that it's a unittest, so I just commented it out and it compiles now without problems. Maybe it's just a fluke, I guess we'll see if someone else will have the same problem. I, for one, am satisfied; my code compiles, and that is all that counts. Some additional info: I tried it with dmd 1.050 too, same thing. My Tango import is a rather current checkout, I diff'd against a checkout I made about 15 minutes ago and the problematic file is the same as in Tango's trunk. And nothing compiles as soon as I import tango.math (which in turn imports IEEE.d). -Mike
Oct 29 2009
parent reply Don <nospam nospam.com> writes:
Michael Mittner wrote:
 Walter Bright wrote:
 
 It could be that the C library routine strtold(), which the lexer relies
 on, changed. That has nothing to do with linking.

Hmm. This is where dmd struggles: 641: [0x1.a5f1c2eb3fe4efp+73, 0x1.A5F1C2EB3FE4EFp-1, 74], // normal I have no idea how the lexer works, but that sounds pretty plausible when I look at that constant in there. Anyway, after further investigation I figured out that it's a unittest, so I just commented it out and it compiles now without problems. Maybe it's just a fluke, I guess we'll see if someone else will have the same problem. I, for one, am satisfied; my code compiles, and that is all that counts.

That's odd. Please try adding an 'L' to end of each of each constant. [0x1.a5f1c2eb3fe4efp+73L, 0x1.A5F1C2EB3FE4EFp-1L, 74],
Oct 30 2009
parent Michael Mittner <m.mittner shebang.at> writes:
Don wrote:

 That's odd. Please try adding an 'L' to end of each of each constant.
      [0x1.a5f1c2eb3fe4efp+73L, 0x1.A5F1C2EB3FE4EFp-1L,   74],

Oh, I'm really sorry, I copied the wrong line (this was 640). Here's the guilty line (641, this time for real): [0x1.fa01712e8f0471ap-1064, 0x1.fa01712e8f0471ap-1, -1063], Adding 'L' to the first constant works: [0x1.fa01712e8f0471ap-1064L, 0x1.fa01712e8f0471ap-1, -1063], Thanks! -Mike
Oct 30 2009