On Sunday, January 29, 2012 08:43:54 sclytrack wrote:
> Prior to filing the bug I tried to compile dmd from source.
> I have now succeeded. The only problem I had was a missing
> symbolic link libstdc++.so and this in Ubuntu 11.10. So
> I just created it.
>
> /usr/lib32/libstdc++.so -> /usr/lib/i3
Prior to filing the bug I tried to compile dmd from source.
I have now succeeded. The only problem I had was a missing
symbolic link libstdc++.so and this in Ubuntu 11.10. So
I just created it.
/usr/lib32/libstdc++.so -> /usr/lib/i386-linux-gnu/libstdc++.so.6
Then "make -f posix" and in the dmd
On Sat, Jan 28, 2012 at 2:04 PM, sclytrack wrote:
>
>
> Now I've waisted Walter's precious time.
> I feel so sad now :-(
>
I should have made a post about the fact that I had already bug
reported it, but I forgot. Sorry.
01/25/2012 01:12 AM, Timon Gehr wrote:
On 01/24/2012 10:28 PM, %u wrote:
Shouldn't this go into 'digitalmars.D' ?
It should go straight to the bug tracker.
Issue 7391 - floating wtf dmd 2.057 64
;> Shouldn't this go into 'digitalmars.D' ?
>>
>>
>> It should go straight to the bug tracker.
>
>
> Issue 7391 - floating wtf dmd 2.057 64
On 01/28/2012 04:56 PM, sclytrack wrote:
On 01/25/2012 01:12 AM, Timon Gehr wrote:
On 01/24/2012 10:28 PM, %u wrote:
Shouldn't this go into 'digitalmars.D' ?
It should go straight to the bug tracker.
Issue 7391 - floating wtf dmd 2.057 64
Thanks!
On 01/25/2012 01:12 AM, Timon Gehr wrote:
On 01/24/2012 10:28 PM, %u wrote:
Shouldn't this go into 'digitalmars.D' ?
It should go straight to the bug tracker.
Issue 7391 - floating wtf dmd 2.057 64
On 01/24/2012 10:28 PM, %u wrote:
Shouldn't this go into 'digitalmars.D' ?
It should go straight to the bug tracker.
Shouldn't this go into 'digitalmars.D' ?
Am 24.01.2012 19:13, schrieb Caligo:
How did you compile it? As in my original post, it matters how you
compile it. In this case (I'm on a 64-bit GNU/Linux system),
compiling with '-inline' doesn't trigger the bug.
im on win7 (64bit) - but the windows dmd2.057 isn't able to produce x64
code
How did you compile it? As in my original post, it matters how you
compile it. In this case (I'm on a 64-bit GNU/Linux system),
compiling with '-inline' doesn't trigger the bug.
Am 24.01.2012 18:49, schrieb sclytrack:
dmd 2.057 give this result under windows/32bit
calculate1:
1.5
1.5
calculate2:
1.5
1.5
calculate3:
1.5
1.5
so its seems to be an x64 compiler bug
Yes, I missed my lessons in clear communication.
-
+
On Tue, Jan 24, 2012 at 6:51 AM, Dejan Lekic wrote:
> No, it is not a bug.
>
> Here is a hint:
>
> import std.stdio;
>
> int main() {
> float f;
> writeln(f);
> return 0;
> }
>
> /+--- output --+
> nan
> +--- end of output ---+/
>
wow, what a great hint.
sorry, but I'm not convinced
Yes, I missed my lessons in clear communication.
-
+ The complete source files.
-
import std.stdio;
void calculate1(float a, float b)
{
float s1 = 1.0f - a;
float s2 = a * b;
double works correct under dmd64, but float not?
what is the behavior of dmd32 in this szenario?
can you give us a complete out-of-the-box compileable example (with
imports,main,etc.) with both examples the working/and nonworking
does it work correct with dmd(32bit)?
is this "calculate2" needed to reproduce the behavior?
and what compiler did you test: dmd64, (dmd32?), ...?
Am 24.01.2012
On 01/24/2012 04:41 PM, sclytrack wrote:
On 01/24/2012 01:51 PM, Dejan Lekic wrote:
No, it is not a bug.
Here is a hint:
import std.stdio;
int main() {
float f;
writeln(f);
return 0;
}
/+--- output --+
nan
+--- end of output ---+/
I don't understand.
I see now I forgot the input
On 01/24/2012 01:51 PM, Dejan Lekic wrote:
No, it is not a bug.
Here is a hint:
import std.stdio;
int main() {
float f;
writeln(f);
return 0;
}
/+--- output --+
nan
+--- end of output ---+/
I don't understand.
void calculate2(float a, float b)
{
float s1 = 1.0 - a;
float s2 = a * b;
writeln(s2);
writeln(a * b);
}
Output:
t*b= 0
t*b= 1.5
assume CS:.text._D4main10calculate2FffZv
_D4main10calculate2FffZv:
push
No, it is not a bug.
Here is a hint:
import std.stdio;
int main() {
float f;
writeln(f);
return 0;
}
/+--- output --+
nan
+--- end of output ---+/
---
alias float Real;
Real lerp(Real t, Real a, Real b)
{
Real s2 = t * b;
writeln("t*b= ", s2);
writeln("t*b= ", t * b);
return s2;
}
Output:
t*b= 1.5
t*b= 1.5
-
alias float Real;
Real lerp(Real t,
t=0.75, a=-2.00, b=2.00, s1=-0.50, s2=0.00,
rt1=-0.50, rt2=1.50 :::
1.5
t = 0.75ok
a = -2.0ok
b = 2.0 ok
s1 = -0.5 ok
s2 = 1.5 //
On 01/24/2012 04:13 AM, Caligo wrote:
alias double Real;
//alias float Real;
// simple linear interpolation; I partitioned the internals to help me
figure out what was happening.
Real lerp(Real t, Real a, Real b){
Real s1 = (1.0 - t) * a;
Real s2 = t * b;
Real rt1 = s1 + s2;
Real rt2
alias double Real;
//alias float Real;
// simple linear interpolation; I partitioned the internals to help me
figure out what was happening.
Real lerp(Real t, Real a, Real b){
Real s1 = (1.0 - t) * a;
Real s2 = t * b;
Real rt1 = s1 + s2;
Real rt2 = ((1.0 - t) * a) + (t * b);
writefln("t=
24 matches
Mail list logo