cpplib.c (_cpp_test_assertion): Default *value to 0.

* cpplib.c (_cpp_test_assertion): Default *value to 0.

	* cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.

From-SVN: r59648
This commit is contained in:
Hans-Peter Nilsson 2002-11-29 22:41:04 +00:00 committed by Hans-Peter Nilsson
parent f6a83eb0a7
commit 2402645b4d
3 changed files with 13 additions and 1 deletions

View File

@ -1,3 +1,9 @@
2002-11-29 Hans-Peter Nilsson <hp@bitrange.com>
* cpplib.c (_cpp_test_assertion): Default *value to 0.
* cppexp.c (num_part_mul): Initialize result.unsignedp, to 1.
2002-11-29 Ulrich Weigand <uweigand@de.ibm.com>
* config/s390/t-crtstuff: New target makefile fragment.

View File

@ -1446,6 +1446,7 @@ num_part_mul (lhs, rhs)
result.high += HIGH_PART (middle[0]);
result.high += HIGH_PART (middle[1]);
result.unsignedp = 1;
return result;
}

View File

@ -1689,7 +1689,7 @@ find_answer (node, candidate)
/* Test an assertion within a preprocessor conditional. Returns
nonzero on failure, zero on success. On success, the result of
the test is written into VALUE. */
the test is written into VALUE, otherwise the value 0. */
int
_cpp_test_assertion (pfile, value)
cpp_reader *pfile;
@ -1699,6 +1699,11 @@ _cpp_test_assertion (pfile, value)
cpp_hashnode *node;
node = parse_assertion (pfile, &answer, T_IF);
/* For recovery, an erroneous assertion expression is handled as a
failing assertion. */
*value = 0;
if (node)
*value = (node->type == NT_ASSERTION &&
(answer == 0 || *find_answer (node, answer) != 0));