public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc r12-2619] d: Only handle named enums in enum_initializer_decl
@ 2021-07-30 10:56 Iain Buclaw
  0 siblings, 0 replies; only message in thread
From: Iain Buclaw @ 2021-07-30 10:56 UTC (permalink / raw)
  To: gcc-cvs

https://gcc.gnu.org/g:370f66b6af3e70ac31593d60a00d328a3368834a

commit r12-2619-g370f66b6af3e70ac31593d60a00d328a3368834a
Author: Iain Buclaw <ibuclaw@gdcproject.org>
Date:   Mon Jul 26 19:10:47 2021 +0200

    d: Only handle named enums in enum_initializer_decl
    
    Anonymous enums neither generate an initializer nor typeinfo symbol, so
    it's safe to assert that all enum declarations passed to this function
    always have an identifier.
    
    gcc/d/ChangeLog:
    
            * decl.cc (enum_initializer_decl): Only handle named enums.

Diff:
---
 gcc/d/decl.cc | 7 ++-----
 1 file changed, 2 insertions(+), 5 deletions(-)

diff --git a/gcc/d/decl.cc b/gcc/d/decl.cc
index cf61cd49159..0d46ee180e7 100644
--- a/gcc/d/decl.cc
+++ b/gcc/d/decl.cc
@@ -2218,13 +2218,10 @@ enum_initializer_decl (EnumDeclaration *decl)
   if (decl->sinit)
     return decl->sinit;
 
-  tree type = build_ctype (decl->type);
+  gcc_assert (decl->ident);
 
-  Identifier *ident_save = decl->ident;
-  if (!decl->ident)
-    decl->ident = Identifier::generateId ("__enum");
+  tree type = build_ctype (decl->type);
   tree ident = mangle_internal_decl (decl, "__init", "Z");
-  decl->ident = ident_save;
 
   decl->sinit = declare_extern_var (ident, type);
   DECL_LANG_SPECIFIC (decl->sinit) = build_lang_decl (NULL);


^ permalink raw reply	[flat|nested] only message in thread

only message in thread, other threads:[~2021-07-30 10:56 UTC | newest]

Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2021-07-30 10:56 [gcc r12-2619] d: Only handle named enums in enum_initializer_decl Iain Buclaw

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).