...Though on second thought maybe it should have a better error message so it's clear why it doesn't work, since it wasn't at all obvious to me. I'll change the bug report accordingly.
On Wed, Feb 8, 2012 at 11:44 AM, David Simcha <[email protected]> wrote: > Yeah. Now that you point this out, I agree 100%. Feel free to close the > relevant bug report as invalid. > > > On Wed, Feb 8, 2012 at 11:06 AM, Don Clugston <[email protected]>wrote: > >> On 8 February 2012 16:31, David Simcha <[email protected]> wrote: >> > Ok, I think I understand where you're coming from. The intended use for >> > this was to add member functions depending on the result of the static >> if, >> > not member variables. Adding member functions should in theory be >> legal, >> > but figuring out whether an instantiation could add member functions is >> > non-trivial and I think equivalent to the Halting Problem. >> >> I mean X.tupleof shouldn't be defined, if X is not fully defined yet. >> >> > >> > >> > On Wed, Feb 8, 2012 at 9:59 AM, Don Clugston <[email protected]> >> > wrote: >> >> >> >> I don't think that should compile. If there was anything inside the >> >> 'static if' body, it'd be wrong code. >> >> To me, that looks like an accepts-invalid bug that's been fixed. >> >> >> >> On 8 February 2012 14:56, David Simcha <[email protected]> wrote: >> >> > On 2/8/2012 5:50 AM, Walter Bright wrote: >> >> >> >> >> >> http://ftp.digitalmars.com/dmd2beta.zip >> >> >> >> >> >> I'm calling it an alpha because we haven't resolved the associative >> >> >> array >> >> >> issue. But I want to see if there are any others before we do a >> >> >> release. >> >> >> _______________________________________________ >> >> >> dmd-beta mailing list >> >> >> [email protected] >> >> >> http://lists.puremagic.com/mailman/listinfo/dmd-beta >> >> >> >> >> > >> >> > Bug 7426 is still broken in cases that worked in 2.057. >> >> > >> >> > struct S { >> >> > static if(hasIndirections!(typeof(this))) {} >> >> > } >> >> > >> >> > template hasIndirections(T) >> >> > { >> >> > enum hasIndirections = >> hasIndirectionsImpl!(typeof(T.init.tupleof)); >> >> > } >> >> > >> >> > template hasIndirectionsImpl(T...) >> >> > { >> >> > static if (!T.length) >> >> > { >> >> > enum hasIndirectionsImpl = false; >> >> > } >> >> > else >> >> > { >> >> > enum hasIndirectionsImpl = true; >> >> > >> >> > } >> >> > } >> >> > >> >> > _______________________________________________ >> >> > dmd-beta mailing list >> >> > [email protected] >> >> > http://lists.puremagic.com/mailman/listinfo/dmd-beta >> >> _______________________________________________ >> >> dmd-beta mailing list >> >> [email protected] >> >> http://lists.puremagic.com/mailman/listinfo/dmd-beta >> > >> > >> > >> > _______________________________________________ >> > dmd-beta mailing list >> > [email protected] >> > http://lists.puremagic.com/mailman/listinfo/dmd-beta >> _______________________________________________ >> dmd-beta mailing list >> [email protected] >> http://lists.puremagic.com/mailman/listinfo/dmd-beta >> > >
_______________________________________________ dmd-beta mailing list [email protected] http://lists.puremagic.com/mailman/listinfo/dmd-beta
