mirror of
https://github.com/dlang/dmd.git
synced 2025-04-26 21:21:48 +03:00
23 lines
687 B
D
23 lines
687 B
D
/*
|
|
TEST_OUTPUT:
|
|
---
|
|
fail_compilation/ctfe13612.d(15): Error: function `ctfe13612.S.recurse` CTFE recursion limit exceeded
|
|
fail_compilation/ctfe13612.d(20): called from here: `s.recurse()`
|
|
fail_compilation/ctfe13612.d(15): 1000 recursive calls to function `recurse`
|
|
fail_compilation/ctfe13612.d(23): called from here: `(new S).recurse()`
|
|
fail_compilation/ctfe13612.d(23): while evaluating: `static assert((new S).recurse())`
|
|
---
|
|
*/
|
|
|
|
class S
|
|
{
|
|
int x;
|
|
int recurse()
|
|
{
|
|
S s;
|
|
assert(!x); // Error: class 'this' is null and cannot be dereferenced
|
|
s = new S();
|
|
return s.recurse();
|
|
}
|
|
}
|
|
static assert(new S().recurse());
|