diff options
author | Jonathan Wakely <jwakely.gcc@gmail.com> | 2012-10-29 23:21:35 +0000 |
---|---|---|
committer | Jonathan Wakely <redi@gcc.gnu.org> | 2012-10-29 23:21:35 +0000 |
commit | 880661a48b6e2f3f4b3c05860d3c9737b2a1dcc8 (patch) | |
tree | cc94a67e7b17460335b8b668eac1f55a166543ed /gcc/c/c-typeck.c | |
parent | 2adaa795e40c898f70aa58a4487587490304ddaa (diff) | |
download | gcc-880661a48b6e2f3f4b3c05860d3c9737b2a1dcc8.zip gcc-880661a48b6e2f3f4b3c05860d3c9737b2a1dcc8.tar.gz gcc-880661a48b6e2f3f4b3c05860d3c9737b2a1dcc8.tar.bz2 |
re PR c++/54930 (Add warning switch for "returning reference to temporary" and similar)
gcc/c-family:
PR c++/54930
* c.opt (Wreturn_local_addr): Define new option.
gcc/c:
PR c++/54930
* c-typeck.c (c_finish_return): Use OPT_Wreturn_local_addr.
gcc/cp:
PR c++/54930
* typeck.c (maybe_warn_about_returning_address_of_local): Use
OPT_Wreturn_local_addr.
gcc:
PR c++/54930
* doc/invoke.texi (Warning Options): Document -Wno-return-local-addr.
gcc/testsuite:
PR c++/54930
* gcc.dg/Wreturn-local-addr.c: New.
* g++.dg/warn/Wno-return-local-addr.C: New.
* g++.dg/warn/Wreturn-local-addr.C: New.
From-SVN: r192968
Diffstat (limited to 'gcc/c/c-typeck.c')
-rw-r--r-- | gcc/c/c-typeck.c | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/gcc/c/c-typeck.c b/gcc/c/c-typeck.c index 4855933..cf63355 100644 --- a/gcc/c/c-typeck.c +++ b/gcc/c/c-typeck.c @@ -8742,7 +8742,8 @@ c_finish_return (location_t loc, tree retval, tree origtype) && !TREE_STATIC (inner) && DECL_CONTEXT (inner) == current_function_decl) warning_at (loc, - 0, "function returns address of local variable"); + OPT_Wreturn_local_addr, "function returns address " + "of local variable"); break; default: |