DI Generation Needs your Help!
Adam Wilson
flyboynw at gmail.com
Thu Dec 22 09:33:25 PST 2011
On Wed, 21 Dec 2011 23:43:56 -0800, Jacob Carlborg <doob at me.com> wrote:
> On 2011-12-22 08:07, Adam Wilson wrote:
>> The latest DI generation code is now on my Git account and ready for
>> testing. It fixes the following issues:
>>
>> 1. Variables in template functions/classes would be stripped of their
>> initializers.
>> 2. Manifest Constants would lose their initializers.
>>
>> DI generation is getting close! Every Phobos DI module I've tried has
>> passed the VisualD parser/lexer (for whatever that is worth). I want to
>> do some build testing with those files, but even complicated modules
>> like std.algorithm and std.regex are passing the lexer/parser. If
>> everything goes well with that testing I'll open up a pull for dmd.
>> Hopefully proper DI generation will make it into 2.058!
>> You can get the latest from my git account here:
>> https://LightBender@github.com/LightBender/dmd.git
>>
>
> Can the generator handle this:
>
> id objc_msgSend (ARGS...)(id theReceiver, SEL theSelector, ARGS args)
> {
> alias extern (C) id function (id, SEL, ARGS) fp;
> return (cast(fp)&c_objc_msgSend)(theReceiver, theSelector, args);
> }
>
> I know it had problems with that, at least in previous versions of DMD.
Well, without the accompanying types that are used in the declaration I'm
not entire sure how I could give you a good answer. However, since it's a
template function, I can say that template functions in DI files are
basically straight implementation dumps of the D file. Can you tell me
where DI generation hiccups in that code? If the hiccup is inside the
function impl than I doubt anything I've changed will fix your error.
--
Adam Wilson
Project Coordinator
The Horizon Project
http://www.thehorizonproject.org/
More information about the Digitalmars-d
mailing list