From 322d490e02ff3008949d14370e651c89290465a6 Mon Sep 17 00:00:00 2001 From: Kai Tietz Date: Fri, 8 Aug 2014 09:59:38 +0200 Subject: [PATCH] semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport that we operate on a true inline. * semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport that we operate on a true inline. From-SVN: r213751 --- gcc/cp/ChangeLog | 5 +++++ gcc/cp/semantics.c | 10 +++++----- 2 files changed, 10 insertions(+), 5 deletions(-) diff --git a/gcc/cp/ChangeLog b/gcc/cp/ChangeLog index 23afac42f14a..7125444f3313 100644 --- a/gcc/cp/ChangeLog +++ b/gcc/cp/ChangeLog @@ -1,3 +1,8 @@ +2014-08-08 Kai Tietz + + * semantics.c (expand_or_defer_fn_1): Check for keep-inline-dllexport + that we operate on a true inline. + 2014-08-07 Trevor Saunders * class.c, cp-gimplify.c, decl.c, decl2.c, error.c, method.c, diff --git a/gcc/cp/semantics.c b/gcc/cp/semantics.c index 14bf82d6f0a0..63365c70e1ab 100644 --- a/gcc/cp/semantics.c +++ b/gcc/cp/semantics.c @@ -4014,11 +4014,11 @@ expand_or_defer_fn_1 (tree fn) this function as needed so that finish_file will make sure to output it later. Similarly, all dllexport'd functions must be emitted; there may be callers in other DLLs. */ - if ((flag_keep_inline_functions - && DECL_DECLARED_INLINE_P (fn) - && !DECL_REALLY_EXTERN (fn)) - || (flag_keep_inline_dllexport - && lookup_attribute ("dllexport", DECL_ATTRIBUTES (fn)))) + if (DECL_DECLARED_INLINE_P (fn) + && !DECL_REALLY_EXTERN (fn) + && (flag_keep_inline_functions + || (flag_keep_inline_dllexport + && lookup_attribute ("dllexport", DECL_ATTRIBUTES (fn))))) { mark_needed (fn); DECL_EXTERNAL (fn) = 0; -- 2.47.3