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

--- Comment #2 from CVS Commits <cvs-commit at gcc dot gnu.org> ---
The master branch has been updated by Gaius Mulley <ga...@gcc.gnu.org>:

https://gcc.gnu.org/g:3be4e43a6a0f429648ea188c8e110b74268fed27

commit r13-6931-g3be4e43a6a0f429648ea188c8e110b74268fed27
Author: Gaius Mulley <gaiusm...@gmail.com>
Date:   Wed Mar 29 17:38:22 2023 +0100

    PR modula2/109336 - The -fmod= and -fdef= options do not work

    The -fmod= and -fdef= options do not work.  After the linking
    re-implementation and subsequent restructuring the -fmod= amd -fdef= are
    now broken.  This patch adds -fmod= and -fdef= processing into gm2spec.cc.
    It also reduces the complexity of extension handling within M2Search
    by storing the preceeding "." in the extension.

    gcc/m2/ChangeLog:

            PR modula2/109336
            PR modula2/109315
            * gm2-compiler/M2FileName.mod (CalculateFileName): Simplified by
            ensuring the extension contains the ".".
            (CalculateStemName): Re-formatted.
            (ExtractExtension): Re-formatted.
            (ExtractModule): Re-formatted.
            * gm2-compiler/M2Options.def (setdefextension): Add block comment.
            (setmodextension): Add block comment.  Re-formatted.
            * gm2-compiler/M2Options.mod (setdefextension): Add block comment.
            (setmodextension): Add block comment.  Re-formatted.
            * gm2-compiler/M2Search.mod (FindSourceDefFile): Use
            DefaultDefExt.
            (DefaultDefExt): New constant.
            (DefaultModExt): New constant.
            (FindSourceModFile): Use DefaultModExt.
            * gm2-gcc/m2decl.cc (m2decl_DeclareKnownVariable): Correct
            spelling.
            * gm2spec.cc (M2SOURCE): New constant.
            (LANGSPEC): New value.
            (MATHLIB): New value.
            (WITHLIBC): New value.
            (SKIPOPT): New value.
            (lang_specific_driver): Replace seen_module_extension bool with
            module_extension char *.  Detect -fmod= and remember extension.
            Use the extension to detect modula-2 source and mark it as such.

    gcc/testsuite/ChangeLog:

            PR modula2/109336
            * gm2/link/nondefaultext/pass/hello.md: New test.
            * gm2/link/nondefaultext/pass/liba.dm: New test.
            * gm2/link/nondefaultext/pass/liba.md: New test.
            * gm2/link/nondefaultext/pass/link-nondefaultext-pass.exp: New
test.

    Signed-off-by: Gaius Mulley <gaiusm...@gmail.com>

Reply via email to