From: Iain Buclaw Date: Thu, 25 Jun 2020 07:33:26 +0000 (+0200) Subject: d: Do not implicitly set DECL_DECLARED_INLINE_P on member functions. X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=27a68020110f671ef3b64cdce27f7b723f8a1fec;p=gcc.git d: Do not implicitly set DECL_DECLARED_INLINE_P on member functions. This has been questionable behaviour since it was added, and though it has no effect on wider discussions around what should be the correct semantics of pragma(inline) within D modules, doing this tree-level optimization has mostly zero benefit as cross-module inlining doesn't happen anyway. gcc/d/ChangeLog: * decl.cc (get_symbol_decl): Do not implicitly set DECL_DECLARED_INLINE_P on member functions. --- diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc index 77144fe11c8..15eb9a43399 100644 --- a/gcc/d/decl.cc +++ b/gcc/d/decl.cc @@ -1250,13 +1250,6 @@ get_symbol_decl (Declaration *decl) } /* Miscellaneous function flags. */ - if (fd->isMember2 () || fd->isFuncLiteralDeclaration ()) - { - /* See grokmethod in cp/decl.c. Maybe we shouldn't be setting inline - flags without reason or proper handling. */ - DECL_DECLARED_INLINE_P (decl->csym) = 1; - DECL_NO_INLINE_WARNING_P (decl->csym) = 1; - } /* In [pragma/inline], functions decorated with `pragma(inline)' affects whether they are inlined or not. */