From 27a68020110f671ef3b64cdce27f7b723f8a1fec Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Thu, 25 Jun 2020 09:33:26 +0200 Subject: [PATCH] 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. --- gcc/d/decl.cc | 7 ------- 1 file changed, 7 deletions(-) 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. */ -- 2.30.2