D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 6432 - Compilation doesn't terminate on a recursive mixin error
Summary: Compilation doesn't terminate on a recursive mixin error
Status: RESOLVED FIXED
Alias: None
Product: D
Classification: Unclassified
Component: dmd (show other issues)
Version: D2
Hardware: Other Linux
: P2 normal
Assignee: No Owner
URL:
Keywords:
Depends on:
Blocks:
 
Reported: 2011-08-03 02:40 UTC by Max Samukha
Modified: 2012-05-04 15:38 UTC (History)
1 user (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description Max Samukha 2011-08-03 02:40:28 UTC
mixin template Foo(A...)
{
    mixin Foo!(Bar, A);
}

mixin Foo!();
   
test.d(5): Error: undefined identifier Bar
test.d(5): Error: undefined identifier Bar
test.d(5): Error: undefined identifier Bar
...

The error will be printed repeatedly until the maximum recursion depth is reached.
Comment 1 SomeDude 2012-04-27 07:44:03 UTC
Output of 2.059:

PS E:\DigitalMars\dmd2\samples> dmd  -c bug.d
bug.d(4): Error: undefined identifier Bar
bug.d(7): Error: mixin bug.Foo!() error instantiating
PS E:\DigitalMars\dmd2\samples>
Comment 2 SomeDude 2012-05-01 11:57:22 UTC
This should be closed as RESOLVED.