From c785204735b2cace9a676969de0967105a06438d Mon Sep 17 00:00:00 2001 From: Iain Buclaw Date: Fri, 1 Jul 2022 17:40:18 +0200 Subject: [PATCH] d: Build the D sources in the front-end with -fno-exceptions The D front-end does not use exceptions, but it still requires RTTI for some lowerings of convenience language features. Enforce it with by building with `-fno-exceptions'. gcc/d/ChangeLog: * Make-lang.in (NOEXCEPTION_DFLAGS): Define. (ALL_DFLAGS): Add NO_EXCEPTION_DFLAGS. --- gcc/d/Make-lang.in | 6 +++++- 1 file changed, 5 insertions(+), 1 deletion(-) diff --git a/gcc/d/Make-lang.in b/gcc/d/Make-lang.in index 9f134370218..6f9b2e5c26a 100644 --- a/gcc/d/Make-lang.in +++ b/gcc/d/Make-lang.in @@ -57,8 +57,12 @@ CHECKING_DFLAGS = endif WARN_DFLAGS = -Wall -Wdeprecated $(NOCOMMON_FLAG) +# D front-end doesn't use exceptions, but it does require RTTI. +NOEXCEPTION_DFLAGS = $(filter-out -fno-rtti, $(NOEXCEPTION_FLAGS)) + ALL_DFLAGS = $(DFLAGS-$@) $(GDCFLAGS) -fversion=IN_GCC $(CHECKING_DFLAGS) \ - $(PICFLAG) $(ALIASING_FLAGS) $(COVERAGE_FLAGS) $(WARN_DFLAGS) + $(PICFLAG) $(ALIASING_FLAGS) $(NOEXCEPTION_DFLAGS) $(COVERAGE_FLAGS) \ + $(WARN_DFLAGS) DCOMPILE.base = $(GDC) $(NO_PIE_CFLAGS) -c $(ALL_DFLAGS) -o $@ DCOMPILE = $(DCOMPILE.base) -MT $@ -MMD -MP -MF $(@D)/$(DEPDIR)/$(*F).TPo -- 2.47.2