glcpp: Add two new tests for testing redefined macros.
The specification says that redefining a macro is an error, unless the new definitions is identical to the old one, (identical replacement lists but ignoring differing amounts of whitespace).
This commit is contained in:
@@ -0,0 +1,5 @@
|
||||
#define abc 123
|
||||
#define abc 123
|
||||
|
||||
#define foo(x) (x)+23
|
||||
#define foo(x) ( x ) + 23
|
||||
@@ -0,0 +1,6 @@
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
@@ -0,0 +1,17 @@
|
||||
#define x y
|
||||
#define x z
|
||||
|
||||
#define abc 123
|
||||
#define abc() 123
|
||||
|
||||
#define foo() bar
|
||||
#define foo(x) bar
|
||||
|
||||
#define bar() baz
|
||||
#define bar baz
|
||||
|
||||
#define biff(a,b) a+b
|
||||
#define biff(a,b,c) a+b
|
||||
|
||||
#define oper(a,b) a+b
|
||||
#define oper(a,b) a*b
|
||||
@@ -0,0 +1,30 @@
|
||||
0:2(9): preprocessor error: Redefinition of macro x
|
||||
|
||||
0:5(9): preprocessor error: Redefinition of macro abc
|
||||
|
||||
0:8(9): preprocessor error: Redefinition of macro foo
|
||||
|
||||
0:11(9): preprocessor error: Redefinition of macro bar
|
||||
|
||||
0:14(9): preprocessor error: Redefinition of macro biff
|
||||
|
||||
0:17(9): preprocessor error: Redefinition of macro oper
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
|
||||
Reference in New Issue
Block a user