This was fixed in upstream dmd, and merged in r15-6824. Backport the
individual fix from the upstream merge for releases/gcc-14.
PR d/117115
gcc/testsuite/ChangeLog:
* gdc.dg/pr117115.d: New test.
(cherry picked from commit
975c4f1a5de4ede89ee9499cd1a73d613a4aeae4)
if (ed.members.length == 0)
{
- .error(ed.loc, "%s `%s enum `%s` must have at least one member", ed.kind, ed.toPrettyChars, ed.toChars());
+ .error(ed.loc, "%s `%s` enum `%s` must have at least one member", ed.kind, ed.toPrettyChars, ed.toChars());
ed.errors = true;
ed.semanticRun = PASS.semanticdone;
return;
--- /dev/null
+// { dg-do compile }
+
+enum E117115 {} // { dg-error "must have at least one member" }