blob: 8270db6768a88bbd454b9a9da5b959198ff75ac9 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
|
//DIAGNOSTIC_TEST:SIMPLE:-E
// NOTE! This test should *fail*, if preprocessor is working correctly!
// This demonstrates the existance of a bug in Slang preprocessor macro expansion. Could be due to incorrect paste handling
// or perhaps the rules around parameter expansion.
#define CONCAT2(x, y) x ## y
#define CONCAT(x, y) CONCAT2(x, y)
#define SOMETHING someThing
// Should be someThingElse
CONCAT(SOMETHING, Else)
// Should be SOMETHINGAnother, but Slang expands to produce someThingAnother
CONCAT2(SOMETHING, Another)
|