diff options
author | Iain Buclaw <ibuclaw@gdcproject.org> | 2019-04-23 20:08:46 +0000 |
---|---|---|
committer | Iain Buclaw <ibuclaw@gcc.gnu.org> | 2019-04-23 20:08:46 +0000 |
commit | c0aebc60b2ac19816f0431241d8f7203e60afb01 (patch) | |
tree | 4eec38d1f02e2a59de0dc908c56593c54d0d3960 /gcc/d/toir.cc | |
parent | 32efff9f947137bb6f6bf47a846e3bf8a162170a (diff) | |
download | gcc-c0aebc60b2ac19816f0431241d8f7203e60afb01.zip gcc-c0aebc60b2ac19816f0431241d8f7203e60afb01.tar.gz gcc-c0aebc60b2ac19816f0431241d8f7203e60afb01.tar.bz2 |
d: Add support for compiling without libphobos library.
Merges upstream dmd 3b3dca8be
Reviewed-on: https://github.com/dlang/dmd/pull/9678
gcc/d/ChangeLog:
2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
* d-builtins.cc (d_init_versions): Add D_BetterC, D_ModuleInfo,
D_Exceptions, D_TypeInfo as predefined version conditions.
* d-codegen.cc (build_bounds_condition): Generate trap if D asserts
are turned off.
* d-frontend.cc (getTypeInfoType): Add error when -fno-rtti is set.
* d-lang.cc (d_init_options): Initialize new front-end options.
(d_handle_option): Handle -fdruntime, -fexceptions, and -frtti.
(d_post_options): Turn off D runtime features if -fno-druntime is set.
* d-spec.cc (lang_specific_driver): Handle -fdruntime.
* d-tree.h (have_typeinfo_p): Add prototype.
(build_typeinfo): Update prototype.
* decl.cc (DeclVisitor::visit(StructDeclaration)): Create typeinfo
only if TypeInfo exists.
(DeclVisitor::visit(ClassDeclaration)): Likewise.
(DeclVisitor::visit(InterfaceDeclaration)): Likewise.
(DeclVisitor::visit(EnumDeclaration)): Likewise.
* expr.cc: Update all calls to build_typeinfo.
* gdc.texi (Runtime Options): Document -fdruntime and -frtti.
* lang.opt: Add -fdruntime and -frtti.
* modules.cc (build_module_tree): Create module info only if
ModuleInfo exists.
* toir.cc (IRVisitor::visit(ThrowStatement)): Update test for
-fno-exceptions.
* typeinfo.cc (create_tinfo_types): Build internal typeinfo classes
only if Object exists.
(have_typeinfo_p): New function.
(class TypeInfoVisitor): Update all calls to build_typeinfo.
(build_typeinfo): Add error when -fno-rtti is set.
gcc/testsuite/ChangeLog:
2019-04-23 Iain Buclaw <ibuclaw@gdcproject.org>
* gdc.test/fail_compilation/fail2456.d: New test.
* gdc.test/fail_compilation/test18312.d: New test.
* gdc.test/gdc-test.exp (gdc-convert-args): Handle -betterC.
From-SVN: r270518
Diffstat (limited to 'gcc/d/toir.cc')
-rw-r--r-- | gcc/d/toir.cc | 2 |
1 files changed, 1 insertions, 1 deletions
diff --git a/gcc/d/toir.cc b/gcc/d/toir.cc index ebe7638..f1b2e09 100644 --- a/gcc/d/toir.cc +++ b/gcc/d/toir.cc @@ -1120,7 +1120,7 @@ public: InterfaceDeclaration *id = cd->isInterfaceDeclaration (); tree arg = build_expr_dtor (s->exp); - if (!flag_exceptions) + if (!global.params.useExceptions) { static int warned = 0; if (!warned) |