[dmd-beta] dmd 1.074 and 2.059 beta 5
Walter Bright
walter at digitalmars.com
Thu Apr 12 19:44:01 PDT 2012
I'm pretty sure it's because BasicVector is calling Expression which calls
closureOf again.
On 4/12/2012 6:56 PM, David Simcha wrote:
> I'm still confused about why it's not working, but thanks for the error
> message fix. I realized that this fix makes it feasible to use Dustmite to
> reduce this to something I can actually make sense of.
>
> On 4/12/2012 5:06 PM, Walter Bright wrote:
>> You may be able to break the circle by adding a specialization of closureOf
>> for BasicVector.
>>
>> On 4/11/2012 8:02 PM, David Simcha wrote:
>>> Ok, but I downloaded the new beta and changed closureOf to:
>>>
>>> template closureOf( T ) {
>>> static if( isScalar!(Unqual!T) ) {
>>> enum closureOf = Closure.Scalar;
>>> } else {
>>> enum closureOf = T.closure;
>>> }
>>> }
>>>
>>> where isScalar is defined as:
>>>
>>> template isScalar( T ) {
>>> enum isScalar = !is( T == class ) &&
>>> is( typeof((){
>>> T x;// = MinusOne!T;
>>> T y = x;
>>> T z;
>>>
>>> if( x == x || x != x ) {
>>> x = x;
>>> x += x; x -= x; x /= x; x *= x;
>>> x = x + x; x = x - x; x = x / x;
>>> }
>>> }()) );
>>> }
>>>
>>>
>>> It still gives a "possible circular dependency" error message. Any clue why?
>>>
>> _______________________________________________
>> dmd-beta mailing list
>> dmd-beta at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>>
>
> _______________________________________________
> dmd-beta mailing list
> dmd-beta at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/dmd-beta
>
>
More information about the dmd-beta
mailing list