diff options
author | Jakub Jelinek <jakub@redhat.com> | 2005-09-06 22:07:13 +0200 |
---|---|---|
committer | Jakub Jelinek <jakub@gcc.gnu.org> | 2005-09-06 22:07:13 +0200 |
commit | 0c9b182b9f454fb2d5f57b17d22e860490c3c68f (patch) | |
tree | 26cc76717919b282649ef97b4afa9424d824fe86 /gcc/cp/cp-tree.h | |
parent | 73109af7527b8c42510b1144cc2118a175960903 (diff) | |
download | gcc-0c9b182b9f454fb2d5f57b17d22e860490c3c68f.zip gcc-0c9b182b9f454fb2d5f57b17d22e860490c3c68f.tar.gz gcc-0c9b182b9f454fb2d5f57b17d22e860490c3c68f.tar.bz2 |
re PR c/23075 (Redundant / bogus warning)
PR c/23075
* c-typeck.c (c_finish_return): Set TREE_NO_WARNING on RETURN_EXPR
if "return with no value, in function returning non-void" warning
has been issued.
* tree-cfg.c (execute_warn_function_return): Don't look at
RETURN_EXPRs with TREE_NO_WARNING set.
* typeck.c (check_return_expr): Add no_warning argument. Set
*no_warning to true if "return-statement with no value, in function
returning" warning has been issued.
* cp-tree.h (check_return_expr): Adjust prototype.
* semantics.c (finish_return_stmt): Set TREE_NO_WARNING if
check_return_expr set *no_warning to true.
* gcc.dg/pr23075.c: New test.
* g++.dg/warn/pr23075.C: New test.
From-SVN: r103967
Diffstat (limited to 'gcc/cp/cp-tree.h')
-rw-r--r-- | gcc/cp/cp-tree.h | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/cp/cp-tree.h b/gcc/cp/cp-tree.h index 2803f51..cf24129 100644 --- a/gcc/cp/cp-tree.h +++ b/gcc/cp/cp-tree.h @@ -4322,7 +4322,7 @@ extern tree type_after_usual_arithmetic_conversions (tree, tree); extern tree composite_pointer_type (tree, tree, tree, tree, const char*); extern tree merge_types (tree, tree); -extern tree check_return_expr (tree); +extern tree check_return_expr (tree, bool *); #define cp_build_binary_op(code, arg1, arg2) \ build_binary_op(code, arg1, arg2, 1) #define cxx_sizeof(T) cxx_sizeof_or_alignof_type (T, SIZEOF_EXPR, true) |