D for Xcode 1.2

Michel Fortin michel.fortin at michelf.com
Fri Apr 2 10:02:33 PDT 2010


On 2010-04-02 04:40:11 -0400, Jacob Carlborg <doob at me.com> said:

> I had no idea that DMD2 supported the -noboundscheck flag.

It's quite new, it disables bound checking in @safe function (safe 
functions normally keep bound checks in release mode).


>> It's not really gone. You can add a build rule in each target specifying
>> GDC as the compiler for D source files. I would like to have a better
>> solution, but right now I don't.
>> 
>> Ideally, there would be a build setting for choosing the default
>> compiler, just like Xcode let you choose between GCC 4.0, GCC 4.2,
>> GCC-LLVM and Clang. But I haven't been able to make something similar.
> 
> If you ever implement this there could be separate options for DMD1 and DMD2.

You can also choose between DMD1 and DMD2 by creating a per-target 
custom build rule (if you have both versions installed). But I agree 
it'd make more sense to have this as a build setting similar to how you 
can choose your C/C++/Objective-C compiler.


> I was referring to Interface Builder recognizing D files with the 
> IBOutlet and IBAction templates. I was thinking that since you already 
> have an XCode plugin and if you could access the mentioned methods it 
> could be easier using the first option. But as a long term solution the 
> second option would be the preferred one.

Note that you don't really need IB integration to use actions and 
outlet in IB: you can create a class definition directly in IB and add 
your actions and outlets manually. Obviously, IB will think it's 
Objective-C, so your action names will have a colon suffix.

More importantly it's not automated. Generating Objective-C files and 
making them visible to IB can't be made to be easy to use in my 
opinion, but you should be able to write a script with a regular 
expression to do that and integrate it into your build process if you 
want.

-- 
Michel Fortin
michel.fortin at michelf.com
http://michelf.com/



More information about the Digitalmars-d-announce mailing list