* c-common.c (handle_warn_unused_result_attribute): New function.
authorjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 16 Sep 2003 07:58:27 +0000 (07:58 +0000)
committerjakub <jakub@138bc75d-0d04-0410-961f-82ee72b054a4>
Tue, 16 Sep 2003 07:58:27 +0000 (07:58 +0000)
commit8a8cdb8db5460d347fb62587e3becfe7f69e64ae
treea6e02ea18c49961a7fc38f54f53192e537f6e3af
parent8d083f495bff49a08a632c2be2d50f8f7451d7ce
* c-common.c (handle_warn_unused_result_attribute): New function.
(c_common_attribute_table): Add warn_unused_result.
(c_expand_expr): Issue warning when result of inlined function
with warn_unused_result attribute is ignored.
* calls.c (expand_call): Issue warning when result of function
with warn_unused_result attribute is ignored.
* c-common.h (STMT_EXPR_WARN_UNUSED_RESULT): Define.
* expr.c (expr_wfl_stack): Define.
(expand_expr) <case EXPR_WITH_FILE_LOCATION>: If ignore,
pass const0_rtx as target.  Chain locations into expr_wfl_stack.
* tree-inline.c (expand_call_inline): Set STMT_EXPR_WARN_UNUSED_RESULT
bit if inlined function has warn_unused_result attribute.
* input.h (expr_wfl_stack): Declare.
* doc/extend.texi: Document warn_unused_result attribute.

* gcc.dg/attr-warn-unused-result.c: New test.

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@71424 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/ChangeLog
gcc/c-common.c
gcc/c-common.h
gcc/calls.c
gcc/doc/extend.texi
gcc/expr.c
gcc/input.h
gcc/testsuite/ChangeLog
gcc/testsuite/gcc.dg/attr-warn-unused-result.c [new file with mode: 0644]
gcc/tree-inline.c