===================================================================
@@ -65,6 +65,13 @@ i386_pe_type_dllexport_p (tree decl)
if (TREE_CODE (TREE_TYPE (decl)) == METHOD_TYPE
&& DECL_ARTIFICIAL (decl) && !DECL_THUNK_P (decl))
return false;
+ if (TREE_CODE (decl) == FUNCTION_DECL
+ && DECL_DECLARED_INLINE_P (decl))
+ {
+ if (DECL_REALLY_EXTERN (decl)
+ || !flag_keep_inline_dllexport)
+ return false;
+ }
return true;
}
===================================================================
@@ -110,6 +110,11 @@ i386_pe_determine_dllexport_p (tree decl)
if (!TREE_PUBLIC (decl))
return false;
+ if (TREE_CODE (decl) == FUNCTION_DECL
+ && DECL_DECLARED_INLINE_P (decl)
+ && !flag_keep_inline_dllexport)
+ return false;
+
if (lookup_attribute ("dllexport", DECL_ATTRIBUTES (decl)))
return true;