| Issue |
75994
|
| Summary |
[CIE] [Clang] When Macro expansion, the call chain is too long ,so that stack overflows。
|
| Labels |
clang
|
| Assignees |
|
| Reporter |
Zhenhang1213
|
```
struct S
{
S ();
S &operator<< (const char *);
S (const S &);
};
#define N1(n) << #n
#define N2(n) N1(n)
#define N3(n) N2(n##0) N2(n##1) N2(n##2) N2(n##3) N2(n##4) \
N2(n##5) N2(n##6) N2(n##7) N2(n##8) N2(n##9)
#define N4(n) N3(n##0) N3(n##1) N3(n##2) N3(n##3) N3(n##4) \
N3(n##5) N3(n##6) N3(n##7) N3(n##8) N3(n##9)
#define N5(n) N4(n##0) N4(n##1) N4(n##2) N4(n##3) N4(n##4) \
N4(n##5) N4(n##6) N4(n##7) N4(n##8) N4(n##9)
#define N6(n) N5(n##0) N5(n##1)
S s = S () N6(a) N6(b);
```
https://godbolt.org/z/TYT3Wo818
_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs