aboutsummaryrefslogtreecommitdiff
path: root/gcc/input.h
diff options
context:
space:
mode:
authorJason Merrill <jason@redhat.com>2003-09-16 03:58:27 -0400
committerJakub Jelinek <jakub@gcc.gnu.org>2003-09-16 09:58:27 +0200
commit72954a4f4456cbdc8e1ff01e27f488d304ba32ad (patch)
treea6e02ea18c49961a7fc38f54f53192e537f6e3af /gcc/input.h
parentc9fbef12bee8504ff48a45e3c67099af6772857d (diff)
downloadgcc-72954a4f4456cbdc8e1ff01e27f488d304ba32ad.zip
gcc-72954a4f4456cbdc8e1ff01e27f488d304ba32ad.tar.gz
gcc-72954a4f4456cbdc8e1ff01e27f488d304ba32ad.tar.bz2
c-common.c (handle_warn_unused_result_attribute): New function.
* 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. Co-Authored-By: Jakub Jelinek <jakub@redhat.com> From-SVN: r71424
Diffstat (limited to 'gcc/input.h')
-rw-r--r--gcc/input.h3
1 files changed, 3 insertions, 0 deletions
diff --git a/gcc/input.h b/gcc/input.h
index fba597e..ff014f6 100644
--- a/gcc/input.h
+++ b/gcc/input.h
@@ -51,6 +51,9 @@ extern location_t input_location;
The line member is not accurate for the innermost file on the stack. */
extern struct file_stack *input_file_stack;
+/* Stack of EXPR_WITH_FILE_LOCATION nested expressions. */
+extern struct file_stack *expr_wfl_stack;
+
/* Incremented on each change to input_file_stack. */
extern int input_file_stack_tick;