From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wm1-x330.google.com (mail-wm1-x330.google.com [IPv6:2a00:1450:4864:20::330]) by sourceware.org (Postfix) with ESMTPS id ADC08384D15D for ; Mon, 10 Oct 2022 15:31:20 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org ADC08384D15D Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-wm1-x330.google.com with SMTP id 6-20020a1c0206000000b003c6c154d528so6928wmc.4 for ; Mon, 10 Oct 2022 08:31:20 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20210112; h=date:message-id:to:subject:from:from:to:cc:subject:date:message-id :reply-to; bh=SgIuCVg0LvQxWRK9GBaH2H4HEm8OTc/dT0S44c9eE+M=; b=kzA4HbwobjiFwfj56B//ZTIFqMymfuTV1wHSds//3vsljg1RcFM8/AkoVy0xmykOUT oooM1BwkhGDCoz+nmVzpFWKlAGCArAC03pkNvprsfNKGzhNj1jLNUYbJW3TqCLdTkJnE foqMIuKHAchYyG3blHyLGZCjG5pLwbaYhc0eGEhE+Grh7FS1ma5u/eo863xTbSPgKaiw 4DhKmmf2gfaQq13rrjBdnSZvjMFaBgL91KVRnXVA+uqDIi93eGv7xQ0zIrCZuQZ2XXuK vgagvoRQZl+K0F5an07AoNBSRbuT4FnWaAN6mUJAODILO20XvaLtEKd70b2J3Tojk/1Q djFQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=date:message-id:to:subject:from:x-gm-message-state:from:to:cc :subject:date:message-id:reply-to; bh=SgIuCVg0LvQxWRK9GBaH2H4HEm8OTc/dT0S44c9eE+M=; b=QWbplgf7zVjEgVD1NxfajAFOKE9yGK6Vs+FBlpN0BE6oyMT52Edp6ZFBSpc91k5uez ++oSzyv/AdE04PZX0l3Q7T5jiVlAj/1l8AHFoQF9mMwX4fR0xZ9vSXMmwQ0Dl/Ebb8mn BzPLuLsbZbR3rnl3WbHNzV2r5seaX7fidJQ7F2C0ikujor1bdgWBkkaE43F2DoY3Okg8 1t5HS8Rj9IAHtWzAWmAWtJouHkd1L0Z/bxnPBeZ8+Bz1z7bBTfncQ1yIixTwrpWJRwg2 XV804NQtO2o5rRHck2CwWfcLNKH5G4Pu7hcm78GSkvp7263C40AqusN/Kw+n+7iC6kqV r0IA== X-Gm-Message-State: ACrzQf26IIcLABI4WjeSi5sUn0tgM3zHSA+mr6yPzDvrWcr/rGhUD823 E4i5SRikRmvVjAqZ/VwILhVxck+DM9I= X-Google-Smtp-Source: AMsMyM4Owx3YhYbCWlyr6ASjbioji33oXWUWXojHxPYfxL8lQ6UguyDqTUNdctPzGIzNEIHyelusXg== X-Received: by 2002:a05:600c:19d2:b0:3b4:a4cb:2416 with SMTP id u18-20020a05600c19d200b003b4a4cb2416mr13286369wmq.6.1665415879357; Mon, 10 Oct 2022 08:31:19 -0700 (PDT) Received: from lancelot ([195.147.220.46]) by smtp.gmail.com with ESMTPSA id n11-20020a05600c3b8b00b003a540fef440sm18241119wms.1.2022.10.10.08.31.18 for (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Mon, 10 Oct 2022 08:31:19 -0700 (PDT) From: Gaius Mulley X-Google-Original-From: Gaius Mulley Received: from gaius by lancelot with local (Exim 4.94.2) (envelope-from ) id 1ohukQ-00BlzF-6M for gcc-patches@gcc.gnu.org; Mon, 10 Oct 2022 16:31:18 +0100 Subject: [PATCH] 0/19 modula-2 front end patches overview To: X-Mailer: mail (GNU Mailutils 3.10) Message-Id: Date: Mon, 10 Oct 2022 16:31:18 +0100 X-Spam-Status: No, score=-1.4 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,KAM_SHORT,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: Here are the latest modula-2 front end patches for review. The status of the patches and their contents are also contained at: https://splendidisolation.ddns.net/public/modula2/patchsummary.html where they are also broken down into topic groups. In summary the high level changes from the last posting are: * the driver code has been completely rewritten and it is now based on the fortran driver and the c++ driver. The gm2 driver adds paths/libraries depending upon dialect chosen. * the linking mechanism has been completely redesigned (As per https://gcc.gnu.org/pipermail/gcc-patches/2022-May/595725.html). Objects can be linked via g++. New linking options are available to allow linking with/without a scaffold. * gcc/m2/Make-lang.in (rewritten). * gm2tools/ removed and any required functionality with the new linking mechanism has been moved into cc1gm2. The gm2 testsuite has been extended to test project linking options. Testing ======= 1. bootstrap on gcc-13 master --enable-languages=c,c++,fortran,d,lto 2. bootstrap on gcc-13 devel/modula-2 --enable-languages=c,c++,fortran,d,lto no extra failures seen between contrib/compare_diffs 1 2 3. bootstrap on gcc-13 devel/modula-2 --enable-languages=c,c++,fortran,d,lto,m2 no extra no m2 failures seen between contrib/compare_diffs 2 3 Steps 1, 2, 3 were performed on amd64 and aarch64 systems. The devel/modula-2 branch has been bootstrapped on: amd64 (debian bullseye/suse leap, suse tumbleweed), aarch64 (debian bullseye), armv7l (raspian), ppc64 (GNU/Linux), ppc64le (GNU/Linux), i586 (debian bullseye), sparc64 solaris sparc32 solaris and built on NetBSD 9.2 sparc64 OpenBSD amd64 Sources ======= The patch set files follow in subsequent emails for review and copies can be found in the tarball below. For ease of testing the full front end is also available via: git clone git://gcc.gnu.org/git/gcc.git gcc-git-devel-modula2 cd gcc-git-devel-modula2 git checkout devel/modula-2 The complete patch set is also available from: https://splendidisolation.ddns.net/public/modula2/gm2patchset.tar.gz which can be applied to the gcc-13 master branch via: git clone git://gcc.gnu.org/git/gcc.git gcc-git wget --no-check-certificate \ https://splendidisolation.ddns.net/public/modula2/gm2patchset.tar.gz tar zxf gm2patchset.tar.gz bash gm2patchset/apply-patch.bash gcc-git bash gm2patchset/pre-configure.bash gcc-git # regenerates configure and friends when the script has completed the master branch should be identical to git branch devel/modula-2 above modulo recent git master commits. Review Patch Set ================ Here are all the source infrastructure files and all the c++/c sources (minus the bootstrap tools as these are autogenerated from the modula-2 sources). I've not included the modula-2 sources (patch sets 18 and 19) in these emails as an attempt to reduce the email volume. They are available in https://splendidisolation.ddns.net/public/modula2/gm2patchset.tar.gz and of course the git repro. I'm happy to convert the documentation into sphynx and at a convenient point would like to post the analyser patches for modula2. Thank you for reviewing the patches and thank you to all the testers regards, Gaius