aboutsummaryrefslogtreecommitdiff
path: root/gcc/d/expr.cc
diff options
context:
space:
mode:
authorIain Buclaw <ibuclaw@gdcproject.org>2023-07-01 17:01:30 +0200
committerIain Buclaw <ibuclaw@gdcproject.org>2023-07-01 17:01:30 +0200
commitda108c75ad386b3f1f47abb2265296e4b61d578a (patch)
tree8a38cd9bf386542f7c07b2ec2daa2871e2b0ea02 /gcc/d/expr.cc
parentee4d85b3a8b76328df6bccc1026d62dff5f827ce (diff)
downloadgcc-da108c75ad386b3f1f47abb2265296e4b61d578a.zip
gcc-da108c75ad386b3f1f47abb2265296e4b61d578a.tar.gz
gcc-da108c75ad386b3f1f47abb2265296e4b61d578a.tar.bz2
d: Don't generate code that throws exceptions when compiling with `-fno-exceptions'
The version flags for RTMI, RTTI, and exceptions was unconditionally predefined. These are now only predefined if the feature flag is enabled. It was noticed that there was no `-fexceptions' definition inside d/lang.opt, so the detection of the exceptions option flag was only partially working. Once that was fixed, a few places in the front-end implementation were found to fall fowl of `nothrow' rules, these have been fixed upstream and backported here as well. Reviewed-on: https://github.com/dlang/dmd/pull/15357 https://github.com/dlang/dmd/pull/15360 PR d/110471 gcc/d/ChangeLog: * d-builtins.cc (d_init_versions): Predefine D_ModuleInfo, D_Exceptions, and D_TypeInfo only if feature is enabled. * lang.opt: Add -fexceptions. gcc/testsuite/ChangeLog: * gdc.dg/pr110471a.d: New test. * gdc.dg/pr110471b.d: New test. * gdc.dg/pr110471c.d: New test.
Diffstat (limited to 'gcc/d/expr.cc')
0 files changed, 0 insertions, 0 deletions