summaryrefslogtreecommitdiff
path: root/gcc/d
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2022-04-03 14:40:34 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2022-04-03 15:16:39 +0200
commit243e649dcbb2262f2ed6116b14a78bfa82900bd2 (patch)
treea3d07733174ada5063179007294f6e4e911d4546 /gcc/d
parent0847ad33b908af88bca1e6980d0b977316d05e18 (diff)
d: Remove Wtemplates warnings from the code generation pass
These have been superceded by the front-end's own internal tracking of instantiations, exposed by `-ftransition=templates'. gcc/d/ChangeLog: * d-lang.cc: Include dmd/template.h. (d_parse_file): Call printTemplateStats when vtemplates is set. * decl.cc (start_function): Remove OPT_Wtemplates warning. * lang.opt (Wtemplates): Remove.
Diffstat (limited to 'gcc/d')
-rw-r--r--gcc/d/d-lang.cc4
-rw-r--r--gcc/d/decl.cc11
-rw-r--r--gcc/d/lang.opt4
3 files changed, 5 insertions, 14 deletions
diff --git a/gcc/d/d-lang.cc b/gcc/d/d-lang.cc
index 4a7aa8983b7..69571628336 100644
--- a/gcc/d/d-lang.cc
+++ b/gcc/d/d-lang.cc
@@ -33,6 +33,7 @@ along with GCC; see the file COPYING3. If not see
#include "dmd/module.h"
#include "dmd/mtype.h"
#include "dmd/target.h"
+#include "dmd/template.h"
#include "opts.h"
#include "alias.h"
@@ -1306,6 +1307,9 @@ d_parse_file (void)
}
}
+ if (global.params.vtemplates)
+ printTemplateStats ();
+
/* Generate JSON files. */
if (global.params.doJsonGeneration)
{
diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc
index ea8baef588c..86ea1761f4f 100644
--- a/gcc/d/decl.cc
+++ b/gcc/d/decl.cc
@@ -1891,16 +1891,7 @@ start_function (FuncDeclaration *fd)
modules not in this compilation, or thunk aliases. */
TemplateInstance *ti = fd->isInstantiated ();
if (ti && ti->needsCodegen ())
- {
- /* Warn about templates instantiated in this compilation. */
- if (ti == fd->parent)
- {
- warning (OPT_Wtemplates, "%s %qs instantiated",
- ti->kind (), ti->toPrettyChars (false));
- }
-
- DECL_EXTERNAL (fndecl) = 0;
- }
+ DECL_EXTERNAL (fndecl) = 0;
else
{
Module *md = fd->getModule ();
diff --git a/gcc/d/lang.opt b/gcc/d/lang.opt
index 7859e1583c8..51e8e5c7e00 100644
--- a/gcc/d/lang.opt
+++ b/gcc/d/lang.opt
@@ -138,10 +138,6 @@ Wspeculative
D
Warn from speculative compiles such as __traits(compiles).
-Wtemplates
-D
-; Documented in C
-
Wunknown-pragmas
D Var(warn_unknown_pragmas) LangEnabledBy(D, Wextra)
; Documented in C