Don't report "Warning 202: Error: ..."

An invalid preprocessor expression is reported as a pair of
warnings with the second giving a more detailed message from the
expression evaluator.  Previously SWIG prefixed the second message
with "Error:" - that was confusing as it's actually only a warning
by default so we've now dropped this prefix.

Before:

x.i:1: Warning 202: Could not evaluate expression '1.2'
x.i:1: Warning 202: Error: 'Floating point constant in preprocessor expression'

Now:

x.i:1: Warning 202: Could not evaluate expression '1.2'
x.i:1: Warning 202: Floating point constant in preprocessor expression

See #1465
This commit is contained in:
Olly Betts 2022-02-24 08:40:27 +13:00
commit 74d12d8c4c
5 changed files with 31 additions and 14 deletions

View file

@ -1,2 +1,2 @@
pp_badeval.i:4: Warning 202: Could not evaluate expression 'FOO==4+'
pp_badeval.i:4: Warning 202: Error: 'Expected an expression'
pp_badeval.i:4: Warning 202: Expected an expression

View file

@ -1,23 +1,23 @@
pp_expressions_bad.i:7: Warning 202: Could not evaluate expression '1%ZERO'
pp_expressions_bad.i:7: Warning 202: Error: 'Modulo by zero in expression'
pp_expressions_bad.i:7: Warning 202: Modulo by zero in expression
pp_expressions_bad.i:9: Warning 202: Could not evaluate expression '2/ZERO'
pp_expressions_bad.i:9: Warning 202: Error: 'Division by zero in expression'
pp_expressions_bad.i:9: Warning 202: Division by zero in expression
pp_expressions_bad.i:12: Warning 202: Could not evaluate expression '1%(5-5)'
pp_expressions_bad.i:12: Warning 202: Error: 'Modulo by zero in expression'
pp_expressions_bad.i:12: Warning 202: Modulo by zero in expression
pp_expressions_bad.i:14: Warning 202: Could not evaluate expression '2/(55-55)'
pp_expressions_bad.i:14: Warning 202: Error: 'Division by zero in expression'
pp_expressions_bad.i:14: Warning 202: Division by zero in expression
pp_expressions_bad.i:18: Warning 202: Could not evaluate expression '1.2'
pp_expressions_bad.i:18: Warning 202: Error: 'Floating point constant in preprocessor expression'
pp_expressions_bad.i:18: Warning 202: Floating point constant in preprocessor expression
pp_expressions_bad.i:21: Warning 202: Could not evaluate expression '2e3'
pp_expressions_bad.i:21: Warning 202: Error: 'Floating point constant in preprocessor expression'
pp_expressions_bad.i:21: Warning 202: Floating point constant in preprocessor expression
pp_expressions_bad.i:25: Warning 202: Could not evaluate expression '8.8'
pp_expressions_bad.i:25: Warning 202: Error: 'Floating point constant in preprocessor expression'
pp_expressions_bad.i:25: Warning 202: Floating point constant in preprocessor expression
pp_expressions_bad.i:29: Error: Unknown SWIG preprocessor directive: if123 (if this is a block of target language code, delimit it with %{ and %})
pp_expressions_bad.i:30: Error: Extraneous #endif.
pp_expressions_bad.i:32: Error: Unknown SWIG preprocessor directive: if456e (if this is a block of target language code, delimit it with %{ and %})
pp_expressions_bad.i:33: Error: Extraneous #endif.
pp_expressions_bad.i:42: Warning 204: CPP #warning, "Warning okay: #if(1)".
pp_expressions_bad.i:48: Warning 202: Could not evaluate expression '"TWO" == 1'
pp_expressions_bad.i:48: Warning 202: Error: 'Can't mix strings and integers in expression'
pp_expressions_bad.i:48: Warning 202: Can't mix strings and integers in expression
pp_expressions_bad.i:52: Warning 202: Could not evaluate expression '1 == ("TWO")'
pp_expressions_bad.i:52: Warning 202: Error: 'Can't mix strings and integers in expression'
pp_expressions_bad.i:52: Warning 202: Can't mix strings and integers in expression

View file

@ -1,6 +1,6 @@
:EOF: Error: Exponent does not have any digits
pp_invalid_exponents.i:3: Warning 202: Could not evaluate expression '123e'
pp_invalid_exponents.i:3: Warning 202: Error: 'Syntax error'
pp_invalid_exponents.i:3: Warning 202: Syntax error
:EOF: Error: Exponent does not have any digits
pp_invalid_exponents.i:6: Warning 202: Could not evaluate expression '456.e'
pp_invalid_exponents.i:6: Warning 202: Error: 'Syntax error'
pp_invalid_exponents.i:6: Warning 202: Syntax error