From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-wr1-x434.google.com (mail-wr1-x434.google.com [IPv6:2a00:1450:4864:20::434]) by sourceware.org (Postfix) with ESMTPS id 36C1F3857806 for ; Wed, 16 Mar 2022 12:29:11 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.1 sourceware.org 36C1F3857806 Received: by mail-wr1-x434.google.com with SMTP id r10so2766672wrp.3 for ; Wed, 16 Mar 2022 05:29:11 -0700 (PDT) X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20210112; h=x-gm-message-state:from:to:cc:subject:references:date:in-reply-to :message-id:user-agent:mime-version; bh=9cwKMKFmfg4d4vYBRJEasY7nzsWMeuiAmaoLG4VSaYg=; b=4+28vvBBJuqVeJV/iBb8Wba9OIWqKFR3AkaFm8IKtamfBQMnq/XqR5cyRmMAw+H5BK LspBJcgFCsWwaFXTA5Qnp+IOMSzMOg0zTd85i5eTmOzd24ry57W7+1luZsxPJrCrB/A/ FZMJ3h4V5UNCeEmb8q8v/gRBTSCy45os8uqywvcowGCWFUx/eYY24vNIB3lB8ZbtLseo oK+2MwKXiEyj1skYEvGsU/96w4jY1pNDUhFrIElO4vpi19j7pL1NOZ00OhZhR7ksHGa7 +4j3CSBxJwjyGm1m8ozsrojjpBRWjRAUwPINhHtLuVSrUEuydQvAFTz/dh0fUfnRGdV5 +xFA== X-Gm-Message-State: AOAM5328AtM4+TXwmssgfK5Xr+DZQNzktbkj7dvThqLnMXeV4mGiOcBS zfTVGPtRgPzkj9gQtHU2htz8pz9L7I4= X-Google-Smtp-Source: ABdhPJy0+6BCnCT1ppEHJc7MfF8yYb9cMSIdRLgOxpsyI7MGAnw82iBocjGOW88L6LqfiidKzstQSg== X-Received: by 2002:a5d:64af:0:b0:203:88d0:716e with SMTP id m15-20020a5d64af000000b0020388d0716emr22349937wrp.327.1647433749719; Wed, 16 Mar 2022 05:29:09 -0700 (PDT) Received: from lancelot (host86-171-67-35.range86-171.btcentralplus.com. [86.171.67.35]) by smtp.gmail.com with ESMTPSA id p18-20020adfba92000000b001e4ae791663sm1653213wrg.62.2022.03.16.05.29.08 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256); Wed, 16 Mar 2022 05:29:09 -0700 (PDT) Received: from gaius by lancelot with local (Exim 4.94.2) (envelope-from ) id 1nUSm4-00DgcS-2F; Wed, 16 Mar 2022 12:29:08 +0000 From: Gaius Mulley To: Tom Tromey Cc: gdb-patches@sourceware.org Subject: [PATCH] Additional modula2 tests. References: <20220217220547.3874030-1-tom@tromey.com> <20220217220547.3874030-17-tom@tromey.com> Date: Wed, 16 Mar 2022 12:29:08 +0000 In-Reply-To: <20220217220547.3874030-17-tom@tromey.com> (Tom Tromey's message of "Thu, 17 Feb 2022 15:05:44 -0700") Message-ID: <875yoe13or.fsf_-_@debian> User-Agent: Gnus/5.13 (Gnus v5.13) Emacs/27.1 (gnu/linux) MIME-Version: 1.0 Content-Type: multipart/mixed; boundary="=-=-=" X-Spam-Status: No, score=-8.8 required=5.0 tests=BAYES_00, DKIM_SIGNED, DKIM_VALID, DKIM_VALID_AU, DKIM_VALID_EF, FREEMAIL_ENVFROM_END_DIGIT, FREEMAIL_FROM, GIT_PATCH_0, RCVD_IN_DNSWL_NONE, SPF_HELO_NONE, SPF_PASS, TXREP, T_SCC_BODY_TEXT_LINE autolearn=ham autolearn_force=no version=3.4.4 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on server2.sourceware.org X-BeenThere: gdb-patches@sourceware.org X-Mailman-Version: 2.1.29 Precedence: list List-Id: Gdb-patches mailing list List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , X-List-Received-Date: Wed, 16 Mar 2022 12:29:15 -0000 --=-=-= Content-Type: text/plain Tom Tromey writes: > This changes the Modula-2 code to use generic_emit_char and > generic_printstr. I have no way to test this. Hi Tom and gdb developers, here is a proposed patch for gdb and some new files which enable testing of binaries generated from Modula-2 source files. breakpointm2 and printformatted are included as a start. These patches and new files have been tested against the gdb git repro of Tue Mar 15 08:53:27 2022 and no new failures occur after the patches have been applied and new files added. It was tested on a Debian Bullseye amd64 machine with regular packages (gcc-10 and gm2-10 etc). 2022-03-16 Gaius Mulley Adding some modula-2 test cases and the tcl infastructure to support modula-2. * configure.ac (GM2_FOR_BUILD): Added. (GM2_FOR_TARGET): Added. * gdb/testsuite/lib/gdb.exp (skip_modula2_tests): New function. * gdb/testsuite/lib/modula2.exp: New file. * gdb/testsuite/gdb.modula2/breakpointm2.mod: New file. * gdb/testsuite/gdb.modula2/breakpointm2.exp: New file. * gdb/testsuite/gdb.modula2/printformattedm2.exp: New file. * gdb/testsuite/gdb.modula2/printformattedm2.mod: New file. diff --git a/configure.ac b/configure.ac index da4e41d7247..351d3f9655b 100644 --- a/configure.ac +++ b/configure.ac @@ -1270,6 +1270,7 @@ if test "${build}" != "${host}" ; then CC_FOR_BUILD=${CC_FOR_BUILD-gcc} CXX_FOR_BUILD=${CXX_FOR_BUILD-g++} GFORTRAN_FOR_BUILD=${GFORTRAN_FOR_BUILD-gfortran} + GM2_FOR_BUILD=${GM2_FOR_BUILD-gccm2} GOC_FOR_BUILD=${GOC_FOR_BUILD-gccgo} DLLTOOL_FOR_BUILD=${DLLTOOL_FOR_BUILD-dlltool} LD_FOR_BUILD=${LD_FOR_BUILD-ld} @@ -1283,6 +1284,7 @@ else CC_FOR_BUILD="\$(CC)" CXX_FOR_BUILD="\$(CXX)" GFORTRAN_FOR_BUILD="\$(GFORTRAN)" + GM2_FOR_BUILD="\$(GM2)" GOC_FOR_BUILD="\$(GOC)" DLLTOOL_FOR_BUILD="\$(DLLTOOL)" LD_FOR_BUILD="\$(LD)" @@ -3374,6 +3376,7 @@ AC_SUBST(CXXFLAGS_FOR_BUILD) AC_SUBST(CXX_FOR_BUILD) AC_SUBST(DLLTOOL_FOR_BUILD) AC_SUBST(GFORTRAN_FOR_BUILD) +AC_SUBST(GM2_FOR_BUILD) AC_SUBST(GOC_FOR_BUILD) AC_SUBST(LDFLAGS_FOR_BUILD) AC_SUBST(LD_FOR_BUILD) @@ -3501,6 +3504,7 @@ NCN_STRICT_CHECK_TARGET_TOOLS(CC_FOR_TARGET, cc gcc) NCN_STRICT_CHECK_TARGET_TOOLS(CXX_FOR_TARGET, c++ g++ cxx gxx) NCN_STRICT_CHECK_TARGET_TOOLS(GCC_FOR_TARGET, gcc, ${CC_FOR_TARGET}) NCN_STRICT_CHECK_TARGET_TOOLS(GFORTRAN_FOR_TARGET, gfortran) +NCN_STRICT_CHECK_TARGET_TOOLS(GM2_FOR_TARGET, gccm2) NCN_STRICT_CHECK_TARGET_TOOLS(GOC_FOR_TARGET, gccgo) ACX_CHECK_INSTALLED_TARGET_TOOL(AR_FOR_TARGET, ar) @@ -3533,6 +3537,8 @@ GCC_TARGET_TOOL(dlltool, DLLTOOL_FOR_TARGET, DLLTOOL, [binutils/dlltool]) GCC_TARGET_TOOL(gcc, GCC_FOR_TARGET, , [gcc/xgcc -B$$r/$(HOST_SUBDIR)/gcc/]) GCC_TARGET_TOOL(gfortran, GFORTRAN_FOR_TARGET, GFORTRAN, [gcc/gfortran -B$$r/$(HOST_SUBDIR)/gcc/], fortran) +GCC_TARGET_TOOL(gccm2, GM2_FOR_TARGET, GM2, + [gcc/gm2 -B$$r/$(HOST_SUBDIR)/gcc/], modula-2) GCC_TARGET_TOOL(gccgo, GOC_FOR_TARGET, GOC, [gcc/gccgo -B$$r/$(HOST_SUBDIR)/gcc/], go) GCC_TARGET_TOOL(ld, LD_FOR_TARGET, LD, [ld/ld-new]) diff --git a/gdb/testsuite/lib/gdb.exp b/gdb/testsuite/lib/gdb.exp index a35d08a05de..e368a0dfccb 100644 --- a/gdb/testsuite/lib/gdb.exp +++ b/gdb/testsuite/lib/gdb.exp @@ -2295,6 +2295,12 @@ proc skip_d_tests {} { return 0 } +# Return a 1 if I don't even want to try to test Modula2. + +proc skip_modula2_tests {} { + return 0 +} + # Return 1 to skip Rust tests, 0 to try them. proc skip_rust_tests {} { if { ![isnative] } { new Modula-2 source tests and associated tcl driver scripts: --=-=-= Content-Type: application/gzip Content-Disposition: attachment; filename=newfiles.tar.gz Content-Transfer-Encoding: base64 Content-Description: breakpointm2 and printformattedm2 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 --=-=-= Content-Type: text/plain regards, Gaius --=-=-=--