Andrei Alexandrescu wrote:
Georg Wrede wrote:
Just downloaded D 2.026 and tried rdmd. No eval?????
Sorry, inclusion of the new rdmd has not been done due to rdmd's
dependency of the new phobos.
I'd *really* appreciate a --version switch. (Probably, instead of
fancy version numbers, either the repo version, and/or just plain
compilation date would be nice.) Currently, since the binary is
packed, there is no way to even peek at the strings in hopes of
getting a clue....
What would it do?
Say I have a few DMD versions, and an rdmd with each. Then I download
one from the net, and additionally I'm compiling two more. It actually
happens intermittently that I end up running not the one I expect.
When all works ok, who needs to know anything. But when things don't and
you're full of WTF bewilderment, then it saves time to have access to
things like version.
Or suppose people start sending you bug reports. (Not impossible if rdmd
gets popular.) Some admin may have moved rdmd to /usr/local/bin,
somebody else got a newer version from the net... Any time I've called a
hotline, the first thing they ask is what version.
It also seems to accept just any switch:
With --version I wouldn't even have spent time writing this, I would
just have understood that I got the ancient version.
$ rdmd --bullcrap="bull crap"
Error: crap.d: No such file or directory
And from my bash dmd-wrapper log:
compiling /usr/local/digitalmars/dmd2026/linux/bin/dmd --bullcrap=bull
-v -o- crap.d
Yah, rdmd passed the buck to dmd. Previously rdmd also had a bug related
to whitespace in options, which in turn was a quick fix to the gorram
shebang issue, which I now fixed the proper way by adding --shebang.
Anyhoo, with what I have now the erroneous flag is properly reported.
Per popular demand (from one person that is :o)), I made the Linux rdmd
binary available for download from
http://ssli.ee.washington.edu/~aalexand/d/rdmd.
Got it. Thanks.
$ rdmd --eval="printf()"
/tmp/.rdmd/eval.6B6D8AE14A1B676C8EC2203340D3209A.d(10): module range
cannot read file 'std/range.d'
What this means in practice is, rdmd should be "harmonised" with the DMD
release it comes with.
I wonder if Walter has a makefile that generates a new DMD download? If
so, then of course it could build rdmd with the appropriate imports.