annotate tests/t32.c @ 203:3a25180d3a5c
Abort on line numbering or column numbering overflow.
Line numbers are limited to values that fit in "unsigned int". Also
reject input lines longer than 2^32-1 characters. It seems reasonable
to presume that any input that violates these constraints is someone
screwing around and not a serious attempt to compile or preprocess
anything useful. Done in response to n2129, but without getting into
any of the silliness found there.
author |
David A. Holland |
date |
Tue, 01 Aug 2017 14:51:04 -0400 |
parents |
a403605d3166 |
children |
|
rev |
line source |
145
|
1 #define foo(x) "x"
|
|
2 #define bar(x) 'x'
|
|
3 #define baz frob
|
|
4 foo(3)
|
|
5 bar(3)
|
|
6 foo(baz)
|
|
7 bar(baz)
|
|
8 "baz"
|
|
9 'baz'
|
|
10 "foo(baz)"
|
|
11 "bar(baz)"
|
|
12
|
|
13 #define foo2(x) foo(x)
|
|
14 #define bar2(x) bar(x)
|
|
15 foo2(baz)
|
|
16 bar2(baz)
|
|
17
|
|
18 #define foo3(x) foo2(x)
|
|
19 #define bar3(x) bar2(x)
|
|
20 foo3(baz)
|
|
21 bar3(baz)
|