diff options
author | obrien <obrien@FreeBSD.org> | 2002-05-09 20:02:13 +0000 |
---|---|---|
committer | obrien <obrien@FreeBSD.org> | 2002-05-09 20:02:13 +0000 |
commit | c8f5fc7032940ad6633f932ac40cade82ec4d0cc (patch) | |
tree | 29a0f0a6c79a69ecc64f612947a0fe5904311713 /contrib/gcc/c-objc-common.c | |
parent | c9ab9ae440a8066b2c2b85b157b1fdadcf09916a (diff) | |
download | FreeBSD-src-c8f5fc7032940ad6633f932ac40cade82ec4d0cc.zip FreeBSD-src-c8f5fc7032940ad6633f932ac40cade82ec4d0cc.tar.gz |
Gcc 3.1.0 pre-release from the FSF anoncvs repo on 9-May-2002 15:57:15 EDT.
Diffstat (limited to 'contrib/gcc/c-objc-common.c')
-rw-r--r-- | contrib/gcc/c-objc-common.c | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/contrib/gcc/c-objc-common.c b/contrib/gcc/c-objc-common.c index 6554cf5..0ed3869 100644 --- a/contrib/gcc/c-objc-common.c +++ b/contrib/gcc/c-objc-common.c @@ -59,6 +59,9 @@ int c_disregard_inline_limits (fn) tree fn; { + if (lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) != NULL) + return 1; + return DECL_DECLARED_INLINE_P (fn) && DECL_EXTERNAL (fn); } @@ -142,6 +145,10 @@ c_cannot_inline_tree_fn (fnp) tree fn = *fnp; tree t; + if (flag_really_no_inline + && lookup_attribute ("always_inline", DECL_ATTRIBUTES (fn)) == NULL) + return 1; + if (! function_attribute_inlinable_p (fn)) { DECL_UNINLINABLE (fn) = 1; @@ -317,7 +324,7 @@ finish_cdtor (body) RECHAIN_STMTS (body, COMPOUND_BODY (body)); - finish_function (0); + finish_function (0, 0); } /* Called at end of parsing, but before end-of-file processing. */ |