PP: #include: add names to error messages, so that lexical analysis can be tested.

This commit is contained in:
John Kessenich
2017-01-05 12:18:34 -07:00
parent 64285c9e69
commit 28d3133581
5 changed files with 33 additions and 19 deletions

View File

@@ -1,13 +1,20 @@
ERROR: 0:8000: '#include' : must be followed by a header name
ERROR: 0:8001: '#include' : must be followed by a header name
ERROR: 0:8002: '#include' : unexpected include directive
ERROR: 0:8003: '#include' : unexpected include directive
ERROR: 0:8004: '#include' : extra content after header name
ERROR: 0:8005: '#include' : extra content after header name
ERROR: 0:8007: '#include' : unexpected include directive
ERROR: 0:8009: '' : header name too long
ERROR: 0:8009: '#include' : unexpected include directive
ERROR: 0:8010: '#include' : expected newline
ERROR: 10 compilation errors. No code generated.
ERROR: 0:8002: '#include' : unexpected include directive for header name: foo.oeu
ERROR: 0:8003: '#include' : unexpected include directive for header name: foo.oeu/ao eu/ao.h
ERROR: 0:8004: '#include' : unexpected include directive for header name: foo<oeu
ERROR: 0:8005: '#include' : unexpected include directive for header name: foo.oe>
ERROR: 0:8006: '#include' : unexpected include directive for header name: foo.oe
ERROR: 0:8007: '#include' : unexpected include directive for header name: foo"bar"
ERROR: 0:8008: '#include' : unexpected include directive for header name: foo\bar
ERROR: 0:8009: '#include' : unexpected include directive for header name: foo.oe>
ERROR: 0:8010: '#include' : unexpected include directive for header name: foo
ERROR: 0:8011: '#include' : extra content after header name: foo2.h
ERROR: 0:8012: '#include' : extra content after header name: foo.h
ERROR: 0:8014: '#include' : unexpected include directive for header name: ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789
ERROR: 0:8016: '' : header name too long
ERROR: 0:8016: '#include' : unexpected include directive for header name: ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789ABCDEF0123456789
ERROR: 0:8017: '#include' : expected newline after header name: no-eol
ERROR: 17 compilation errors. No code generated.