dmd 1.050 and 2.035 release

Ary Borenszweig ary at esperanto.org.ar
Thu Oct 15 01:21:29 PDT 2009


Walter Bright wrote:
> The main purpose of this is to correct a couple of regressions that were 
> blocking QtD and Tango.
> 
> http://www.digitalmars.com/d/1.0/changelog.html
> http://ftp.digitalmars.com/dmd.1.050.zip
> 
> 
> http://www.digitalmars.com/d/2.0/changelog.html
> http://ftp.digitalmars.com/dmd.2.035.zip
> 
> Many thanks to the numerous people who contributed to this update.

The json output looks cool. :)

But for this:

---
module main;
alias int myInt;
myInt x;
---

I get:

---
{
"name" : "main",
"kind" : "module",
"file" : "main.d",
"members" : [
{
"name" : "myInt",
"kind" : "alias",
"type" : "int",
"line" : 5}
,{
"name" : "x",
"kind" : "variable",
"type" : "int",
"line" : 7}
]
}
---

So you see, variable's type is "int", not "myInt". I knew this was going 
to happen because the way dmd is implemented and how it fogets about 
aliases of types (it just resolves them and forgets about the original 
alias name). I had some head-aches remembering those things in Descent. :-P

Think of binding libraries like OpenGL, DirectX, even the windows API 
where all functions receive and return aliases. If an IDE shows the 
resolved aliases it's no use to the user, that's what aliases are for.

Should I create an enhancement for this?


More information about the Digitalmars-d-announce mailing list