Add more test coverage to selftest::test_location_wrappers

gcc/ChangeLog:
	* tree.c (selftest::test_location_wrappers): Add more test
	coverage.

From-SVN: r256979
This commit is contained in:
David Malcolm 2018-01-23 11:05:21 +00:00 committed by David Malcolm
parent 485cf85403
commit 02851c8c7f
2 changed files with 15 additions and 0 deletions

View File

@ -1,3 +1,8 @@
2018-01-23 David Malcolm <dmalcolm@redhat.com>
* tree.c (selftest::test_location_wrappers): Add more test
coverage.
2018-01-23 David Malcolm <dmalcolm@redhat.com>
* sbitmap.c (selftest::test_set_range): Fix memory leaks.

View File

@ -14492,6 +14492,8 @@ test_location_wrappers ()
{
location_t loc = BUILTINS_LOCATION;
ASSERT_EQ (NULL_TREE, maybe_wrap_with_location (NULL_TREE, loc));
/* Wrapping a constant. */
tree int_cst = build_int_cst (integer_type_node, 42);
ASSERT_FALSE (CAN_HAVE_LOCATION_P (int_cst));
@ -14502,6 +14504,14 @@ test_location_wrappers ()
ASSERT_EQ (loc, EXPR_LOCATION (wrapped_int_cst));
ASSERT_EQ (int_cst, tree_strip_any_location_wrapper (wrapped_int_cst));
/* We shouldn't add wrapper nodes for UNKNOWN_LOCATION. */
ASSERT_EQ (int_cst, maybe_wrap_with_location (int_cst, UNKNOWN_LOCATION));
/* We shouldn't add wrapper nodes for nodes that CAN_HAVE_LOCATION_P. */
tree cast = build1 (NOP_EXPR, char_type_node, int_cst);
ASSERT_TRUE (CAN_HAVE_LOCATION_P (cast));
ASSERT_EQ (cast, maybe_wrap_with_location (cast, loc));
/* Wrapping a STRING_CST. */
tree string_cst = build_string (4, "foo");
ASSERT_FALSE (CAN_HAVE_LOCATION_P (string_cst));