summaryrefslogtreecommitdiffstats
path: root/contrib/gcc/c-objc-common.c
diff options
context:
space:
mode:
authorobrien <obrien@FreeBSD.org>2002-05-09 20:02:13 +0000
committerobrien <obrien@FreeBSD.org>2002-05-09 20:02:13 +0000
commitc8f5fc7032940ad6633f932ac40cade82ec4d0cc (patch)
tree29a0f0a6c79a69ecc64f612947a0fe5904311713 /contrib/gcc/c-objc-common.c
parentc9ab9ae440a8066b2c2b85b157b1fdadcf09916a (diff)
downloadFreeBSD-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.c9
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. */
OpenPOWER on IntegriCloud