https://gcc.gnu.org/bugzilla/show_bug.cgi?id=103558

--- Comment #5 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Iain Buclaw <ibuc...@gcc.gnu.org>:

https://gcc.gnu.org/g:0fb57034770aa20adced4d176f34ca611c2945bf

commit r12-5849-g0fb57034770aa20adced4d176f34ca611c2945bf
Author: Iain Buclaw <ibuc...@gdcproject.org>
Date:   Sun Dec 5 17:11:12 2021 +0100

    d: Merge upstream dmd 568496d5b, druntime 178c44ff, phobos 574bf883b.

    D front-end changes:

        - Import dmd v2.098.0
        - New ImportC module for compiling preprocessed C11 code into D.
        - New -ftransition=in switch.
        - Improved handling of new 'noreturn' type.

    Druntime changes:

        - Import druntime v2.098.0
        - Fix broken import in core.sys.linux.perf_event module (PR103558).

    Phobos changes:

        - Import phobos v2.098.0
        - All sources are now compiled with -fpreview=fieldwise.

    gcc/d/ChangeLog:

            * dmd/MERGE: Merge upstream dmd 568496d5b.
            * Make-lang.in (D_FRONTEND_OBJS): Add d/common-file.o,
            d/common-outbuffer.o, d/common-string.o, d/file_manager.o,
            d/importc.o.  Remove d/root-outbuffer.o.
            (d/common-%.o): New recipe.
            * d-builtins.cc (build_frontend_type): Update for new front-end
            interface.
            (d_build_d_type_nodes): Set noreturn_type_node.
            * d-codegen.cc (d_build_call): Don't call function if one of the
            arguments is type 'noreturn'.
            (build_vthis_function): Propagate TYPE_QUAL_VOLATILE from original
            function type.
            * d-frontend.cc (eval_builtin): Update signature.
            (getTypeInfoType): Likewise.
            (toObjFile): New function.
            * d-gimplify.cc (d_gimplify_call_expr): Always evaluate arguments
from
            left to right.
            * d-lang.cc (d_handle_option): Handle OPT_ftransition_in.
            (d_parse_file): Don't generate D main if it is declared in user
code.
            * d-tree.h (CALL_EXPR_ARGS_ORDERED): Remove.
            (enum d_tree_index): Add DTI_BOTTOM_TYPE.
            (noreturn_type_node): New.
            * decl.cc (apply_pragma_crt): Remove.
            (DeclVisitor::visit): Update for new front-end interface.
            (DeclVisitor::visit (PragmaDeclaration *)): Don't handle
            crt_constructor and crt_destructor pragmas.
            (DeclVisitor::visit (VarDeclaration *)): Don't generate
declarations
            of type 'noreturn'.
            (DeclVisitor::visit (FuncDeclaration *)): Stop adding parameters
when
            'noreturn' type has been encountered.
            (get_symbol_decl): Set DECL_STATIC_CONSTRUCTOR and
            DECL_STATIC_DESTRUCTOR on decl node if requested.
            (aggregate_initializer_decl): Update for new front-end interface.
            * expr.cc (ExprVisitor::visit (CallExp *)): Always use the 'this'
            object as the result of calling any constructor function.
            (ExprVisitor::visit): Update for new front-end interface.
            * gdc.texi (Runtime Options): Document -fmain and -ftransition=in.
            * lang.opt (ftransition=in): New option.
            * modules.cc (get_internal_fn): Update for new front-end interface.
            * types.cc (TypeVisitor::visit): Likewise.
            (TypeVisitor::visit (TypeNoreturn *)): Return noreturn_type_node.
            (TypeVisitor::visit (TypeFunction *)): Stop adding parameters when
            'notreturn' type has been encountered.  Qualify function types that
            return 'noreturn' as TYPE_QUAL_VOLATILE.

    libphobos/ChangeLog:

            PR d/103558
            * libdruntime/MERGE: Merge upstream druntime 178c44ff.
            * libdruntime/Makefile.am (DRUNTIME_DSOURCES_LINUX): Add
            core/sys/linux/syscalls.d.
            (DRUNTIME_DSOURCES_OPENBSD): Add core/sys/openbsd/pthread_np.d.
            * libdruntime/Makefile.in: Regenerate.
            * src/MERGE: Merge upstream phobos 574bf883b.
            * src/Makefile.am (D_EXTRA_DFLAGS): Add -fpreview=fieldwise.
            * src/Makefile.in: Regenerate.
            * testsuite/libphobos.exceptions/assert_fail.d: Update test.
            * testsuite/libphobos.betterc/test22336.d: New test.

Reply via email to