OMG! Thanks for all your efforts. This pace is outstanding. I don't even
mind regression testing again this weekend ;-)
--
Derek
(skype: derek.j.parnell)
Melbourne, Australia
7/03/2008 6:29:29 PM
Hello,
i can't compile programs with writef under Linux.
import std.stdio;
void main() {
writef("Hello World\n");
}
dmd hello.d
hello.o: In function
`_D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterAxaZv':
hello.d:(.text._D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFi
eWriterAxaZv+0xa6): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.d:(.text._D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFi
eWriterAxaZv+0xfe): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.o: In function
`_D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6format10FormatInfo':
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x73): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x82): undefined reference to
`_D3std6format10FormatInfo6flPlusMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x91): undefined reference to
`_D3std6format10FormatInfo6flHashMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0xa0): undefined reference to
`_D3std6format10FormatInfo6flZeroMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0xaf): undefined reference to
`_D3std6format10FormatInfo7flSpaceMFbZv'
collect2: ld gab 1 als Ende-Status zurück
--- errorlevel 1
Switch i back to 2.0.10, all compiles fine.
Mar 06 2008
↑ ↓ ←→ Walter Bright <newshound1 digitalmars.com> writes:
nobody wrote:
i can't compile programs with writef under Linux.
import std.stdio;
void main() {
writef("Hello World\n");
}
dmd hello.d
hello.o: In function
`_D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterAxaZv':
hello.d:(.text._D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFi
eWriterAxaZv+0xa6): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.d:(.text._D3std6format80__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFi
eWriterAxaZv+0xfe): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.o: In function
`_D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6format10FormatInfo':
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x73): undefined reference to
`_D3std6format10FormatInfo6flDashMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x82): undefined reference to
`_D3std6format10FormatInfo6flPlusMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0x91): undefined reference to
`_D3std6format10FormatInfo6flHashMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0xa0): undefined reference to
`_D3std6format10FormatInfo6flZeroMFbZv'
hello.d:(.text._D3std6format25__T15parseFormatSpecTAxaZ15parseFormatSpecFKAxaZS3std6forma
10FormatInfo+0xaf): undefined reference to
`_D3std6format10FormatInfo7flSpaceMFbZv'
collect2: ld gab 1 als Ende-Status zurück
--- errorlevel 1
Switch i back to 2.0.10, all compiles fine.
It works when I try it. I suspect a libphobos2.a mismatch problem on
your system. Try blowing away every libphobos2.a on your system and
reinstall.
It works when I try it. I suspect a libphobos2.a mismatch problem on
your system. Try blowing away every libphobos2.a on your system and
reinstall.
I'm getting similar errors (on 32-bit linux, too - haven't tested on windows).
There are no other libphobos2.a's other than the one from the 2.012 zip.
I got similar link errors too. Maybe libphobos2.a shipped in 2.012 zip is
wrong?
In function
`_D3std6format84__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaTkTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterAxakaZv':
inner.d:(.text._D3std6format84__T14formattedWriteTS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterTaTkTaZ14formattedWriteFKS3std5stdio25__T17PrivateFileWriterTaZ17PrivateFileWriterAxakaZv
+0xd7):对_D3std6format10FormatInfo6flDashMFbZv
...
== Quote from Sönke_Ludwig (ludwig informatik_dot_uni-luebeck.de)'s article
Walter Bright schrieb:
It works when I try it. I suspect a libphobos2.a mismatch problem on
your system. Try blowing away every libphobos2.a on your system and
reinstall.
There are no other libphobos2.a's other than the one from the 2.012 zip.
Mar 07 2008
↑ ↓ ←→ Walter Bright <newshound1 digitalmars.com> writes:
somebody wrote:
I got similar link errors too. Maybe libphobos2.a shipped in 2.012 zip is
wrong?
Gak! You're right. I just uploaded a replacement.
Meanwhile, the QA staff has been sacked.
I got similar link errors too. Maybe libphobos2.a shipped in 2.012
zip is wrong?
Gak! You're right. I just uploaded a replacement.
Meanwhile, the QA staff has been sacked.
... twice. The correct version is up and I've verified that it fixes
the problem I could reproduce. I've closed the bug. The relevant info
bears repeating since the filename was left the same for the corrected
.zip file. To check to make sure you have the right one, here's the
relevant info for the fixed files:
libphobos.a
size: 1669414
md5sum: e90f6bfb31ce9a678a8acbfb206cd1bf
dmd.2.012.zip
size: 5336394
md5sum: 6e0aae81028e24e6ecc866f1b1f439bd
Later,
Brad
Great release! Now that's really a bunch of rough corners less when comparing
to
2.007/8. The const system should now be fully usable, which is really nice.
(I'll keep my mouth shut about tail-const class references ;)
And indeed a few 'o == null' errors were just catched by the compiler :).
Considering that most of this happened in parts of the project which were
written by a 'D newbie' coming from a C++ background, an error message like
"Cannot compare contents of 'null'. Use 'is' instead of '==' when comparing for
identity." might be a good instrument to educate such users.
I'm getting some linker errors, too - but that will have to wait until tonight.
It works when I try it. I suspect a libphobos2.a mismatch problem on
your system. Try blowing away every libphobos2.a on your system and
reinstall.
I'm getting similar errors (on 32-bit linux, too - haven't tested on
windows).
There are no other libphobos2.a's other than the one from the 2.012 zip.
I'm seeing this as well, with the released library. My own build works
fine. I've opened a bug report so it can be tracked appropriately.
http://d.puremagic.com/issues/show_bug.cgi?id=1895
Later,
Brad
I got similar link errors too. Maybe libphobos2.a shipped in 2.012
zip is wrong?
Gak! You're right. I just uploaded a replacement.
Meanwhile, the QA staff has been sacked.
... twice. The correct version is up and I've verified that it fixes
the problem I could reproduce. I've closed the bug. The relevant info
bears repeating since the filename was left the same for the corrected
.zip file. To check to make sure you have the right one, here's the
relevant info for the fixed files:
libphobos.a
size: 1669414
md5sum: e90f6bfb31ce9a678a8acbfb206cd1bf
dmd.2.012.zip
size: 5336394
md5sum: 6e0aae81028e24e6ecc866f1b1f439bd
Later,
Brad
Mar 07 2008
↑↓← → Frank Benoit <keinfarbton googlemail.com> writes:
I use dmd 1.028 on linux.
It seems it does not give any error on null literal comparison, and it
still seems to print the linker command. Can somebody confirm that, or
did i confused something in my installation?
Missing from the D2 changelog:
std.math:
* Support for different CPU IEEE 'real' formats: 64-bit, 80-bit and 128-bit
(quadruple) reals, both BigEndian and LittleEndian; partial support for
non-IEEE
'doubledouble' reals.
* Added implementation of nextafter (Bugzilla 1722) and scalb for DMD-Windows.
* Added nextUp(), nextDown()
* Bugzilla 1881: feqrel nonsensical for non-real arguments.
BTW all these changes can be applied to DMD 1.0 -- at present, nothing in
std.math is specific to D2.0.
Missing from the D2 changelog:
std.math:
* Support for different CPU IEEE 'real' formats: 64-bit, 80-bit and
128-bit (quadruple) reals, both BigEndian and LittleEndian; partial
support for non-IEEE 'doubledouble' reals.
* Added implementation of nextafter (Bugzilla 1722) and scalb for
DMD-Windows.
* Added nextUp(), nextDown()
* Bugzilla 1881: feqrel nonsensical for non-real arguments.
BTW all these changes can be applied to DMD 1.0 -- at present, nothing
in std.math is specific to D2.0.
Oops, forgot a few other ones:
Merging improvements to Tango.Math into Phobos:
* internal functions isPosZero(), isNegZero() removed in favour of the more
generally useful isIdentical().
* asm versions of functions which were not implemented by DMD Windows: scalb,
lrint.
* added creal expi(real y) which is useful for simultaneous calculation of sin
+
cos.
BTW all these changes can be applied to DMD 1.0 -- at present,
nothing in std.math is specific to D2.0.
I agree that backwards-compatible improvements to D and Phobos should be
eligible
for inclusion into D1 (and Phobos1), but Walter disagrees.
This issue is related to the "Who favors the current D1 situation?" thread that
Bill Baxter started today:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=67313
By the way, some of these kinds of changes to Phobos are available in std2:
http://www.dsource.org/projects/std2
(but apparently std2 development has stopped since the port of DMD 2.008).
Mar 07 2008
↑ ↓← → Bill Baxter <dnewsgroup billbaxter.com> writes:
jcc7 wrote:
== Quote from Don Clugston (dac nospam.com.au)'s article
BTW all these changes can be applied to DMD 1.0 -- at present,
nothing in std.math is specific to D2.0.
I agree that backwards-compatible improvements to D and Phobos should be
eligible
for inclusion into D1 (and Phobos1), but Walter disagrees.
This issue is related to the "Who favors the current D1 situation?" thread that
Bill Baxter started today:
http://www.digitalmars.com/webnews/newsgroups.php?art_group=digitalmars.D&article_id=67313
By the way, some of these kinds of changes to Phobos are available in std2:
http://www.dsource.org/projects/std2
(but apparently std2 development has stopped since the port of DMD 2.008).
Yes, things like not fixing bug 493[1] in D1 have made porting to D1 too
difficult. I think if that bug gets fixed then I could get at least
std.algorithms D2.012 working in D1. I spent a few hours yesterday
trying to port it (despite my message of abandoning std2 on the web page...)
[1] http://d.puremagic.com/issues/show_bug.cgi?id=493
--bb
1.028's std.thread sports a private definition of WAIT_TIMEOUT, so now it
causes conflicts in my libraries. It's one thing if it's actually a
feature you're adding, but privately defining for local use causing
conflicts?
Mar 07 2008
↑ ↓ ← → Robert Fraser <fraserofthenight gmail.com> writes:
Chris Miller wrote:
1.028's std.thread sports a private definition of WAIT_TIMEOUT, so now
it causes conflicts in my libraries. It's one thing if it's actually a
feature you're adding, but privately defining for local use causing
conflicts?
Yup, that's been a bug for a while (private members being imported). I'm
not even sure if Walter acknowledges it as a bug, and if not we probably
won't see it changed for a while.