DMD 1.006 release

Jascha Wetzel "[firstname]" at mainia.de
Sun Feb 18 04:53:36 PST 2007


* Codeview for classes now gives correct LF_CLASS

i'd say that this issue is only partially solved in 1.006.
type strings for classes now get the correct LF_CLASS, but symbols of
those types are still marked as pointers to structs. hence they cannot
have the LF_CLASS leafs associated with them, but use the (obsolete?)
struct leafs (marked as forward refs) that exist for each class leaf.

example:

module mymodule;
class class1 { ... }
// ...
class1 myclass = new class1;
// ...

will generate two CV type strings:

class 0x1004 'mymodule.class1' field list: 0x1001 properties: 0x0
struct 0x100b 'class1' field list: 0x0 properties: 0x80

the symbol "myclass" will be marked as a pointer to struct 0x100b.
besides the (probably obsolete) indirection, i think there is no clean
way to tell that 0x100b and pointer-to-0x1004 describe the same type.

Walter Bright wrote:
> Compile time function execution! (Please discuss in the corresponding
> thread in digitalmars.D)
> 
> http://www.digitalmars.com/d/changelog.html
> 
> http://ftp.digitalmars.com/dmd.1.006.zip



More information about the Digitalmars-d-announce mailing list