diff options
author | Jan Hubicka <jh@suse.cz> | 2008-09-17 17:00:59 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2008-09-17 15:00:59 +0000 |
commit | 0494626aae628174dd5d510d25a1fabac300387a (patch) | |
tree | 04fe9640a665ee7bf86c70b57f060c685b31ee95 /gcc/tree.h | |
parent | 1c1b0507d40b99ad6356f8feb2b43430b30568bb (diff) | |
download | gcc-0494626aae628174dd5d510d25a1fabac300387a.zip gcc-0494626aae628174dd5d510d25a1fabac300387a.tar.gz gcc-0494626aae628174dd5d510d25a1fabac300387a.tar.bz2 |
re PR middle-end/18071 (-Winline does not respect -fno-default-inline)
PR c++/18071
* tree.h (DECL_INLINE): remove.
(DECL_DECLARED_INLINE_P): Update docs.
(DECL_NO_INLINE_WARNING_P): new.
(tree_function_decl): Replace inline_flag by no_inline_warning_flag.
* tree-inline.c (inlinable_function_p): Set DECL_NO_INLINE_WARNING_P.
Java:
* class.c (add_method_1): Do not initialize DECL_INLINE.
(make_local_function_alias): Likewise.
* expr.c (rewrite_arglist_getcaller): Set DECL_UNINLINABLE.
* lang.c (java_decl_ok_for_sibcall): Use DECL_UNINLINABLE.
Objc:
* objc/objc-act.c (objc_finish_method_definition): Do not set DECL_INLINE.
C++:
* cp/decl.c (start_method): Set DECL_NO_INLINE_WARNING_P.
From-SVN: r140418
Diffstat (limited to 'gcc/tree.h')
-rw-r--r-- | gcc/tree.h | 14 |
1 files changed, 7 insertions, 7 deletions
@@ -3235,17 +3235,17 @@ struct tree_decl_non_common GTY(()) #define DECL_POSSIBLY_INLINED(DECL) \ FUNCTION_DECL_CHECK (DECL)->function_decl.possibly_inlined -/* Nonzero in a FUNCTION_DECL means this function can be substituted - where it is called. */ -#define DECL_INLINE(NODE) (FUNCTION_DECL_CHECK (NODE)->function_decl.inline_flag) - /* Nonzero in a FUNCTION_DECL means that this function was declared inline, such as via the `inline' keyword in C/C++. This flag controls the linkage - semantics of 'inline'; whether or not the function is inlined is - controlled by DECL_INLINE. */ + semantics of 'inline' */ #define DECL_DECLARED_INLINE_P(NODE) \ (FUNCTION_DECL_CHECK (NODE)->function_decl.declared_inline_flag) +/* Nonzero in a FUNCTION_DECL means this function should not get + -Winline warnings. */ +#define DECL_NO_INLINE_WARNING_P(NODE) \ + (FUNCTION_DECL_CHECK (NODE)->function_decl.no_inline_warning_flag) + /* Nonzero in a FUNCTION_DECL that should be always inlined by the inliner disregarding size and cost heuristics. This is equivalent to using the always_inline attribute without the required diagnostics if the @@ -3314,7 +3314,7 @@ struct tree_function_decl GTY(()) unsigned declared_inline_flag : 1; unsigned regdecl_flag : 1; - unsigned inline_flag : 1; + unsigned no_inline_warning_flag : 1; unsigned no_instrument_function_entry_exit : 1; unsigned no_limit_stack : 1; unsigned disregard_inline_limits : 1; |