Thread overview |
---|
May 02, 2009 [Issue 2920] New: recursive templates blow compiler stack | ||||
---|---|---|---|---|
| ||||
http://d.puremagic.com/issues/show_bug.cgi?id=2920 Summary: recursive templates blow compiler stack Product: D Version: unspecified Platform: PC OS/Version: All Status: NEW Severity: normal Priority: P2 Component: DMD AssignedTo: bugzilla@digitalmars.com ReportedBy: bugzilla@digitalmars.com // dstress template_16 infinite loop. This should generate // a "recursive template expansion" error, but it doesn't. template Template(int i) { mixin Template!(i+1); } mixin Template!(0); // ============================================== // Bugs I cannot reproduce on Windows, but which fail on dstress suite // DMD 1.043 Linux. They are all have the same root cause. // All generate "recursive template expansion" error on Windows // template_17_A. template t(int i){ const int x = t!(i+1).x; } void main(){ int i = t!(0).x; } //template_29_B. template foo(size_t i){ static if(i > 0){ const size_t bar = foo!(i-1).bar; }else{ const size_t bar = 1; } } int main(){ return foo!(size_t.max).bar; } //template_class_09. template Template(int i) { class Class : Template!(i+1).Class{ } } alias Template!(0).Class Class0; -- |
May 03, 2009 Re: [Issue 2920] New: recursive templates blow compiler stack | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | Hello d-bugmail@puremagic.com,
> http://d.puremagic.com/issues/show_bug.cgi?id=2920
>
> Summary: recursive templates blow compiler stack
> ReportedBy: bugzilla@digitalmars.com
I was about to mark this as Invalid with a comment that Walter has said that this is not going to be fixed (the error is correct, that stack /did/ get blown)... Then I noticed Walter Reported it. <g>
|
May 03, 2009 Re: [Issue 2920] New: recursive templates blow compiler stack | ||||
---|---|---|---|---|
| ||||
Posted in reply to BCS | BCS wrote:
> Hello d-bugmail@puremagic.com,
>
>> http://d.puremagic.com/issues/show_bug.cgi?id=2920
>>
>> Summary: recursive templates blow compiler stack
>> ReportedBy: bugzilla@digitalmars.com
>
> I was about to mark this as Invalid with a comment that Walter has said that this is not going to be fixed (the error is correct, that stack /did/ get blown)... Then I noticed Walter Reported it. <g>
Not so, the bug is that there is no error message. For the first case, there's no error message, for the other cases, there's an error message on Windows, but not on Linux.
BTW, (1) the text is mine -- I forwarded it to Walter as part of a list of crashes.
(2) if it were not to be fixed, it should be WONTFIX rather than INVALID.
|
May 15, 2009 [Issue 2920] recursive templates blow compiler stack | ||||
---|---|---|---|---|
| ||||
Posted in reply to d-bugmail | http://d.puremagic.com/issues/show_bug.cgi?id=2920 Don <clugdbug@yahoo.com.au> changed: What |Removed |Added ---------------------------------------------------------------------------- Status|NEW |RESOLVED CC| |clugdbug@yahoo.com.au Resolution| |FIXED --- Comment #1 from Don <clugdbug@yahoo.com.au> 2009-05-15 00:14:04 PDT --- Fixed DMD2.030 and 1.045. -- Configure issuemail: http://d.puremagic.com/issues/userprefs.cgi?tab=email ------- You are receiving this mail because: ------- |
Copyright © 1999-2021 by the D Language Foundation