Last update January 9, 2010

D Tutorial / Starting With D / Compiler / DMD /

Other FAQs:
Table of contents of this page
Compiler questions   
-release flag   
Virtual function table pointer   

Compiler questions    

-release flag    

-release eliminates assertion tests explicit:

    assert (x);
and implicit:
    // if -release is not given, this checks that y is in bounds for x.
    x [y] = z;
-release essentially turns all runtime safety controls off. I don't recommend it - if your program goes bad, it'll be very difficult to find out where and why. Array-using code is impacted by the checks, but you can get around that safely in inner loops by using pointers. [Burton Radon, Sep04]

Virtual function table pointer    

If there are no virtual functions left in a class, does the VFT pointer go away? [Bill Cox, Jan 03]

No, it's always there, both because it inherits from Object which has virtual functions, and because many features rely on the first entry in the VFT being a pointer to the ClassInfo. [Walter Bright]

FrontPage | News | TestPage | MessageBoard | Search | Contributors | Folders | Index | Help | Preferences | Edit

Edit text of this page (date of last change: January 9, 2010 19:12 (diff))