GNU logs - #58984, boring messages


Message sent to mattiase@HIDDEN, bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: "Basil L. Contovounesios" <contovob@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: mattiase@HIDDEN, bug-gnu-emacs@HIDDEN
Resent-Date: Thu, 03 Nov 2022 13:08:02 +0000
Resent-Message-ID: <handler.58984.B.166748088020917 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: report 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: 58984 <at> debbugs.gnu.org
Cc: "Mattias =?UTF-8?Q?Engdeg=C3=A5rd?=" <mattiase@HIDDEN>
X-Debbugs-Original-To: bug-gnu-emacs@HIDDEN
X-Debbugs-Original-Xcc: "Mattias =?UTF-8?Q?Engdeg=C3=A5rd?=" <mattiase@HIDDEN>
Received: via spool by submit <at> debbugs.gnu.org id=B.166748088020917
          (code B ref -1); Thu, 03 Nov 2022 13:08:02 +0000
Received: (at submit) by debbugs.gnu.org; 3 Nov 2022 13:08:00 +0000
Received: from localhost ([127.0.0.1]:48339 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oqZwt-0005RI-LM
	for submit <at> debbugs.gnu.org; Thu, 03 Nov 2022 09:08:00 -0400
Received: from lists.gnu.org ([209.51.188.17]:41676)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contovob@HIDDEN>) id 1oqZwr-0005RA-JR
 for submit <at> debbugs.gnu.org; Thu, 03 Nov 2022 09:07:58 -0400
Received: from eggs.gnu.org ([2001:470:142:3::10])
 by lists.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_256_GCM_SHA384:256)
 (Exim 4.90_1) (envelope-from <contovob@HIDDEN>) id 1oqZwp-0001UG-Jl
 for bug-gnu-emacs@HIDDEN; Thu, 03 Nov 2022 09:07:55 -0400
Received: from mail-ej1-x629.google.com ([2a00:1450:4864:20::629])
 by eggs.gnu.org with esmtps (TLS1.2:ECDHE_RSA_AES_128_GCM_SHA256:128)
 (Exim 4.90_1) (envelope-from <contovob@HIDDEN>) id 1oqZwl-0005DG-Md
 for bug-gnu-emacs@HIDDEN; Thu, 03 Nov 2022 09:07:55 -0400
Received: by mail-ej1-x629.google.com with SMTP id n12so4980153eja.11
 for <bug-gnu-emacs@HIDDEN>; Thu, 03 Nov 2022 06:07:48 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21;
 h=mime-version:message-id:date:subject:to:from:from:to:cc:subject
 :date:message-id:reply-to;
 bh=SuanDdR2gWPovIjXzM6Unnt2mfqO+6VCvKUHeIdALts=;
 b=a3Y/bA1cJJrJwAbggTczfI1NYxPHezotzdFTq9WLl7X5xn2wcGesWi0Gcp8F0ARura
 FPoiHPxyLAC4oCsGH2MwJwoxscb2ftXVXGpQFhPNdezlSXKm+dNneolMPMNZfLdXhhiZ
 qdkyU6fKmOMzPuVJeAevGqJoWm0ZUiHQGDBrYXqDLM7R6xOmZ5UKohZqd1dAJolTP0ep
 CwKkTrVGlg1Gp7glnaWgUgGeuBTznCBxkIPV3o8HNkTTI0NYOCwdL1QNc080AQTUfv6L
 IWh6A9cZj5yVZ4zfIizUKixGTpYhMjO81ljj8D+okNT0D01zu2pNKLqg417+9788X8Vn
 gDWg==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:message-id:date:subject:to:from:x-gm-message-state
 :from:to:cc:subject:date:message-id:reply-to;
 bh=SuanDdR2gWPovIjXzM6Unnt2mfqO+6VCvKUHeIdALts=;
 b=ibK6U0deDGOojHudAipDEthxoBRbrk0hUobPscyYQafgUMG5PCsK0tyXrHFFTTWPCu
 n/l0AguPWvy/Ee/pppXOWHRpapZjog6jCEg+yKAHGcumjMJrMe6rJ6iuZe/Ap7Y8nOU0
 kFdiui+JJ6sMR+wNX2qJWoEe51TaDzbnPRfLFNLuBiGuRN7l0gbRK7j56Rkz4B+o6uEx
 L6ymnssEm8JR0s4armFit2jwTTkEPgqYQ+F02Pqw1K7ocAu80zZ1t0Al0PkpvnZ+Tmsd
 rCtYk971+OanXxQu3K4cmsYbNH/vMQDE5Qq8ur8zWt/yK12Kz3H/7CckZlk/dVsHm7nZ
 xQlg==
X-Gm-Message-State: ACrzQf3vJkSd7Liv/plraAkaDh9dLxqVFjBrZoBG5XFAp9oFFcTTaTX9
 n5HfkqH1SoCIWMhxr6YZ+q4008zSuX/uQw==
X-Google-Smtp-Source: AMsMyM6kvQvhL9ff/PXSKBNadT7DhUggz/eXTL511guvQj9svcP6nhi3e15J3ZJtefg/3lqnJwmDsg==
X-Received: by 2002:a17:907:d04:b0:76e:e208:27ba with SMTP id
 gn4-20020a1709070d0400b0076ee20827bamr29447026ejc.652.1667480867051; 
 Thu, 03 Nov 2022 06:07:47 -0700 (PDT)
Received: from localhost ([2a02:587:320c:8829:23:8156:16ed:40c2])
 by smtp.gmail.com with ESMTPSA id
 hw20-20020a170907a0d400b007ade5cc6e7asm499280ejc.39.2022.11.03.06.07.45
 for <bug-gnu-emacs@HIDDEN>
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Thu, 03 Nov 2022 06:07:46 -0700 (PDT)
From: "Basil L. Contovounesios" <contovob@HIDDEN>
Date: Thu, 03 Nov 2022 15:07:43 +0200
Message-ID: <87a6589of4.fsf@HIDDEN>
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
Received-SPF: pass client-ip=2a00:1450:4864:20::629;
 envelope-from=contovob@HIDDEN; helo=mail-ej1-x629.google.com
X-Spam_score_int: -20
X-Spam_score: -2.1
X-Spam_bar: --
X-Spam_report: (-2.1 / 5.0 requ) BAYES_00=-1.9, DKIM_SIGNED=0.1,
 DKIM_VALID=-0.1, DKIM_VALID_AU=-0.1, DKIM_VALID_EF=-0.1,
 RCVD_IN_DNSWL_NONE=-0.0001, SPF_HELO_NONE=0.001,
 SPF_PASS=-0.001 autolearn=ham autolearn_force=no
X-Spam_action: no action
X-Spam-Score: 0.3 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.7 (/)

--=-=-=
Content-Type: text/plain

Severity: wishlist

Starting from an Emacs built with the following patches:
https://bugs.gnu.org/58975#11
https://bugs.gnu.org/58976#8

And with Check[0] installed, visit test/manual/noverlay/itree-tests.c,
flip any ck_assert condition to make it fail, and M-x compile RET.

[0]: https://libcheck.github.io/check/

The sanitized error is highlighted correctly, and compile-goto-error
jumps to the correct location:


--=-=-=
Content-Type: image/png
Content-Disposition: inline; filename=0-san.png
Content-Transfer-Encoding: base64

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
RK5CYII=
--=-=-=
Content-Type: text/plain


Now remove the call to check-sanitize.sh from the Makefile, and rerun
'make'.  The error is highlighted differently, and compile-goto-error
jumps to the start of the file whose name is read interactively:


--=-=-=
Content-Type: image/png
Content-Disposition: inline; filename=1-nosan.png
Content-Transfer-Encoding: base64

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
--=-=-=
Content-Type: text/plain


(info "(check) Unit Testing in C") claims:

  The test failure messages thrown up by Check use the common idiom of
  'filename:linenumber:message' used by 'gcc' and family to report
  problems in source code.  With (X)Emacs, the output of Check allows
  one to quickly navigate to the location of the unit test that failed;
  presumably that also works in VI and IDEs.

So IWBNI this were indeed the case OOTB, at least for Check's default
CK_NORMAL print_mode verbosity level.  Here are some more message
examples from the Check manual:

check_money.c:9:F:Core:test_money_create:0: Assertion 'money_amount (m)==5' failed: money_amount (m)==0, 5==5
check_money.c:5:E:Core:test_money_create:0: (after this point) Received signal 11 (Segmentation fault)
ex_log_output.c:8:P:Core:test_pass: Test passed
ex_log_output.c:14:F:Core:test_fail: Failure
ex_log_output.c:18:E:Core:test_exit: (after this point) Early exit with return value 1
ex_log_output.c:26:P:Core:test_pass2: Test passed

Thanks,

-- 
Basil

In GNU Emacs 29.0.50 (build 1, x86_64-pc-linux-gnu, X toolkit, cairo
 version 1.16.0, Xaw3d scroll bars) of 2022-11-03 built on tia
Repository revision: d540cb00865368bb9df9299838006dfe09255bc6
Repository branch: blc/itree
Windowing system distributor 'The X.Org Foundation', version 11.0.12101004
System Description: Debian GNU/Linux bookworm/sid

Configured using:
 'configure 'CFLAGS=-Og -ggdb3' -C --prefix=/home/blc/.local
 --enable-checking=structs --with-file-notification=yes
 --with-x-toolkit=lucid --with-x'

Configured features:
ACL CAIRO DBUS FREETYPE GIF GLIB GMP GNUTLS GPM GSETTINGS HARFBUZZ JPEG
JSON LCMS2 LIBOTF LIBSELINUX LIBSYSTEMD LIBXML2 M17N_FLT MODULES NOTIFY
INOTIFY PDUMPER PNG RSVG SECCOMP SOUND SQLITE3 THREADS TIFF
TOOLKIT_SCROLL_BARS WEBP X11 XAW3D XDBE XIM XINPUT2 XPM LUCID ZLIB

Important settings:
  value of $LANG: en_IE.UTF-8
  value of $XMODIFIERS: @im=ibus
  locale-coding-system: utf-8-unix

--=-=-=--




Message sent:


Content-Disposition: inline
Content-Transfer-Encoding: quoted-printable
MIME-Version: 1.0
X-Mailer: MIME-tools 5.505 (Entity 5.505)
Content-Type: text/plain; charset=utf-8
X-Loop: help-debbugs@HIDDEN
From: help-debbugs@HIDDEN (GNU bug Tracking System)
To: "Basil L. Contovounesios" <contovob@HIDDEN>
Subject: bug#58984: Acknowledgement (29.0.50; M-x compile misinterprets
 libcheck error message format)
Message-ID: <handler.58984.B.166748088020917.ack <at> debbugs.gnu.org>
References: <87a6589of4.fsf@HIDDEN>
X-Gnu-PR-Message: ack 58984
X-Gnu-PR-Package: emacs
Reply-To: 58984 <at> debbugs.gnu.org
Date: Thu, 03 Nov 2022 13:08:02 +0000

Thank you for filing a new bug report with debbugs.gnu.org.

This is an automatically generated reply to let you know your message
has been received.

Your message is being forwarded to the package maintainers and other
interested parties for their attention; they will reply in due course.

As you requested using X-Debbugs-CC, your message was also forwarded to
  "Mattias Engdeg=C3=A5rd" <mattiase@HIDDEN>
(after having been given a bug report number, if it did not have one).

Your message has been sent to the package maintainer(s):
 bug-gnu-emacs@HIDDEN

If you wish to submit further information on this problem, please
send it to 58984 <at> debbugs.gnu.org.

Please do not send mail to help-debbugs@HIDDEN unless you wish
to report a problem with the Bug-tracking system.

--=20
58984: https://debbugs.gnu.org/cgi/bugreport.cgi?bug=3D58984
GNU Bug Tracking System
Contact help-debbugs@HIDDEN with problems


Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 04 Nov 2022 11:31:01 +0000
Resent-Message-ID: <handler.58984.B58984.16675614524375 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: "Basil L. Contovounesios" <contovob@HIDDEN>
Cc: 58984 <at> debbugs.gnu.org
Received: via spool by 58984-submit <at> debbugs.gnu.org id=B58984.16675614524375
          (code B ref 58984); Fri, 04 Nov 2022 11:31:01 +0000
Received: (at 58984) by debbugs.gnu.org; 4 Nov 2022 11:30:52 +0000
Received: from localhost ([127.0.0.1]:51937 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oquuP-00018S-8a
	for submit <at> debbugs.gnu.org; Fri, 04 Nov 2022 07:30:52 -0400
Received: from mail1479c50.megamailservers.eu ([91.136.14.79]:42846
 helo=mail118c50.megamailservers.eu)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattiase@HIDDEN>) id 1oquu8-0000D8-Jy
 for 58984 <at> debbugs.gnu.org; Fri, 04 Nov 2022 07:30:48 -0400
X-Authenticated-User: mattiase@HIDDEN
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu;
 s=maildub; t=1667561425;
 bh=yBeJHrXSK25SBo2YumlMtKWCXHkcQgwtAotcPJTJxgc=;
 h=Subject:From:In-Reply-To:Date:Cc:References:To:From;
 b=Hi9QhEg//ccpy5vsXXG/e0sljANeZpDR9kZPvn/agM6FDYvtGZGd+L4JQ0iCASz8V
 1kDjOp6cKUTk22trsom8q9+aPdcOfV/Uiw+dKjaIhvkEc66itLaly7tSrtz5Xtq5ri
 oKDr99CHktOIrrnkWczZIpZ6zejIqAZh4dHIeofs=
Feedback-ID: mattiase@HIDDEN
Received: from smtpclient.apple (c188-150-171-209.bredband.tele2.se
 [188.150.171.209]) (authenticated bits=0)
 by mail118c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id 2A4BUIgn078211; 
 Fri, 4 Nov 2022 11:30:23 +0000
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
In-Reply-To: <87a6589of4.fsf@HIDDEN>
Date: Fri, 4 Nov 2022 12:30:17 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN>
References: <87a6589of4.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.13)
X-CTCH-RefID: str=0001.0A782F1B.6364F7D1.0062, ss=1, re=0.000, recu=0.000,
 reip=0.000, cl=1, cld=1, fgs=0
X-CTCH-VOD: Unknown
X-CTCH-Spam: Unknown
X-CTCH-Score: 0.000
X-CTCH-Rules: 
X-CTCH-Flags: 0
X-CTCH-ScoreCust: 0.000
X-Origin-Country: SE
X-Spam-Score: 0.4 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

Thanks for the report. Is this bug conditional on the patches you =
mentioned? (Not my field of expertise if so.)

Can the bug be reproduced from a simple text file that, when presented =
in compilation-mode, results in the incorrect behaviour?
If not, what about a simple script that emits the text piecemeal with =
the correct timing for the bug to occur and that can be run in M-x =
compile?

(Not really going to OCR your screenshots to extract the text myself!)





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: "Basil L. Contovounesios" <contovob@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 04 Nov 2022 17:09:02 +0000
Resent-Message-ID: <handler.58984.B58984.166758169718009 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Cc: 58984 <at> debbugs.gnu.org
Received: via spool by 58984-submit <at> debbugs.gnu.org id=B58984.166758169718009
          (code B ref 58984); Fri, 04 Nov 2022 17:09:02 +0000
Received: (at 58984) by debbugs.gnu.org; 4 Nov 2022 17:08:17 +0000
Received: from localhost ([127.0.0.1]:54704 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1or0Ay-0004gN-Nz
	for submit <at> debbugs.gnu.org; Fri, 04 Nov 2022 13:08:17 -0400
Received: from mail-ed1-f47.google.com ([209.85.208.47]:46076)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contovob@HIDDEN>) id 1or0Av-0004g3-Af
 for 58984 <at> debbugs.gnu.org; Fri, 04 Nov 2022 13:08:15 -0400
Received: by mail-ed1-f47.google.com with SMTP id a67so8513583edf.12
 for <58984 <at> debbugs.gnu.org>; Fri, 04 Nov 2022 10:08:13 -0700 (PDT)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=e16RRslDysXxmZbeCpgRKhFsTEkYx23SCGo43ATJjeY=;
 b=MSGxGVBIBJ6I6G+pEoqQ1liT3BRIa9jyzLZpQu+ecqWAeu9rS4cJn0eMLn+ic4RL+O
 urOnETi0oPTVRv+11yO4dJ1YX9Po38jzClEX5Z4MSB8Cx2j+VDnpruSyEXUXBYkTH6/E
 f3cSfUeOII2nOGd1J2pESJq9lHZl0zRRTaIrOySlYv79UTfDmDBsYhPQp1jPqrLTcYXV
 bWunM4UZIYW5yfp6iPOLAHVqJVgZ2fu0323czJ8h4HkKTabFYHrfTvWIOgTP0aHAjdA2
 yMI1WXli8TqLg2+1n64jx7W9gulIkbGnQumLy43qpSLSR/TvvSKGZ6npB1yzooBitOf2
 I8mA==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=e16RRslDysXxmZbeCpgRKhFsTEkYx23SCGo43ATJjeY=;
 b=lU4f020clTqceinMZq5vwNBBLcKgWghi5XPErNCQPmp4S6m4L1RGVxcwBM8zGlpjZ6
 aoZErsMe9oM74mRjpFKEZo3gH6SWmjyIJon26qhn/oYFSOAIvGEAR9lV151ObYnTmEJe
 OQh+xKPXt2+ALRFA2UVWW1avjdCRdLQPDtblHB+L5dIi9fE2gxaC4K5RNWCkOXZXWKTJ
 iIG8wnHBObOsnNMrk/03029c1Dgl1qcvUW+1rLEBr4Ts0FipMQz3AYCfmR9rooPHwBM6
 RchQwrcdRMTsIC2N9IMd3jVMNS/oNiKo1QRC7UdAOKYliyLD0CIfZ9+wh5SBNgRNP4sp
 rGoA==
X-Gm-Message-State: ACrzQf1d62Sg/EQfBfLX+SZ6hpoYhCnG3sUPzTV/AoqpAINEWU5PfseT
 KAYHMGb/QUfqnwqFOsRFKFC7sQ==
X-Google-Smtp-Source: AMsMyM7KPXehSwZtvkLV+dq5tX6dqZkMGbMDO0HS+2ELChg11QrmmM6uAOQnnsnSpWsJanWsxkU2Ag==
X-Received: by 2002:aa7:d341:0:b0:464:778:c3fe with SMTP id
 m1-20020aa7d341000000b004640778c3femr15194018edr.251.1667581687258; 
 Fri, 04 Nov 2022 10:08:07 -0700 (PDT)
Received: from localhost ([2a02:587:320c:8829:23:8156:16ed:40c2])
 by smtp.gmail.com with ESMTPSA id
 1-20020a170906308100b00781b589a1afsm2023469ejv.159.2022.11.04.10.08.06
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Fri, 04 Nov 2022 10:08:06 -0700 (PDT)
From: "Basil L. Contovounesios" <contovob@HIDDEN>
In-Reply-To: <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN> ("Mattias
 =?UTF-8?Q?Engdeg=C3=A5rd?="'s message of "Fri, 4 Nov 2022 12:30:17
 +0100")
References: <87a6589of4.fsf@HIDDEN>
 <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN>
Date: Fri, 04 Nov 2022 19:08:04 +0200
Message-ID: <87edui3ax7.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Mattias Engdeg=C3=A5rd [2022-11-04 12:30 +0100] wrote:

> Is this bug conditional on the patches you mentioned?

Yes, but only inasmuch as the tests did not compile previously.  Both
referenced patches are in now, so anyone who has Check installed (in
Debian the package is called... -moments pass- ...'check') should be
able to run the tests and play with their output.

> Can the bug be reproduced from a simple text file that, when presented in
> compilation-mode, results in the incorrect behaviour?

Like this compile log, for instance?


--=-=-=
Content-Type: text/plain
Content-Disposition: inline; filename=errors.txt

-*- mode: compilation; default-directory: "~/.local/src/emacs-check/test/manual/noverlay/" -*-
Compilation started at Fri Nov  4 19:00:15

make
gcc -O0 -g3 -pthread -I ../../../src  -c -o itree-tests.o itree-tests.c
gcc   itree-tests.o  -lcheck_pic -pthread -lrt -lm -lsubunit -lm -o itree-tests
./itree-tests
Running suite(s): basic
../../../src/itree.c:1359:eassert condition failed: g && g->running
92%: Checks: 51, Failures: 3, Errors: 1
itree-tests.c:71:F:insert1:test_insert_1:0: Assertion 'N_50.red' failed
itree-tests.c:91:F:insert1:test_insert_2:0: Assertion 'N_50.right != NULL' failed: N_50.right == 0
itree-tests.c:740:F:remove3:test_remove_10:0: Assertion 'tree.size != 0' failed: tree.size == 0, 0 == 0
itree-tests.c:749:E:generator:test_generator_1:0: (after this point) Early exit with return value 1
make: *** [Makefile:36: check] Error 1

Compilation exited abnormally with code 2 at Fri Nov  4 19:00:16

--=-=-=
Content-Type: text/plain


I got it from applying this diff:


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=errors.diff

diff --git a/test/manual/noverlay/Makefile.in b/test/manual/noverlay/Makefile.in
index 3c8dba1ce1..c0fa705174 100644
--- a/test/manual/noverlay/Makefile.in
+++ b/test/manual/noverlay/Makefile.in
@@ -33,7 +33,7 @@ .PHONY:
 all: check
 
 check: $(PROGRAM)
-	./check-sanitize.sh ./$(PROGRAM)
+	./$(PROGRAM)
 
 itree-tests.o: emacs-compat.h $(top_srcdir)/src/itree.c $(top_srcdir)/src/itree.h
 
diff --git a/test/manual/noverlay/itree-tests.c b/test/manual/noverlay/itree-tests.c
index 278e65f9bf..e3cbaffb0f 100644
--- a/test/manual/noverlay/itree-tests.c
+++ b/test/manual/noverlay/itree-tests.c
@@ -68,8 +68,8 @@ START_TEST (test_insert_1)
    */
 
   interval_tree_insert (&tree, &N_50);
-  ck_assert (! N_50.red);
-  ck_assert_ptr_eq (&N_50, tree.root);
+  ck_assert (N_50.red);
+  ck_assert_ptr_ne (&N_50, tree.root);
 }
 END_TEST
 
@@ -88,7 +88,7 @@ START_TEST (test_insert_2)
   ck_assert_ptr_eq (&N_50, tree.root);
   ck_assert_ptr_eq (N_30.parent, &N_50);
   ck_assert_ptr_eq (N_50.left, &N_30);
-  ck_assert_ptr_null (N_50.right);
+  ck_assert_ptr_nonnull (N_50.right);
   ck_assert_ptr_null (N_30.left);
   ck_assert_ptr_null (N_30.right);
 }
@@ -737,7 +737,7 @@ START_TEST (test_remove_10)
       itree_remove (&tree, &nodes[index[i]]);
     }
   ck_assert_ptr_null (tree.root);
-  ck_assert_int_eq (tree.size, 0);
+  ck_assert_int_ne (tree.size, 0);
 }
 END_TEST
 
@@ -749,11 +749,11 @@ START_TEST (test_remove_10)
 START_TEST (test_generator_1)
 {
   struct itree_node node, *n;
-  struct itree_iterator *g;
+  struct itree_iterator *g = NULL;
   interval_tree_init (&tree);
 
   itree_insert (&tree, &node, 10, 20);
-  g = itree_iterator_start (&tree, 0, 30, ITREE_ASCENDING, NULL, 0);
+  /* g = itree_iterator_start (&tree, 0, 30, ITREE_ASCENDING, NULL, 0); */
   n = itree_iterator_next (g);
   ck_assert_ptr_eq (n, &node);
   ck_assert_int_eq (n->begin, 10);

--=-=-=
Content-Type: text/plain


Then building Emacs and finally running 'make' in the
test/manual/noverlay directory.

> If not, what about a simple script that emits the text piecemeal with the
> correct timing for the bug to occur and that can be run in M-x compile?

Let me know if the information above is insufficient and I will try
providing such a script.

> (Not really going to OCR your screenshots to extract the text myself!)

Sorry, that was just an attempt to convey fontification :).

Thanks,

-- 
Basil

--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Fri, 04 Nov 2022 17:50:02 +0000
Resent-Message-ID: <handler.58984.B58984.166758416022110 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: "Basil L. Contovounesios" <contovob@HIDDEN>
Cc: 58984 <at> debbugs.gnu.org
Received: via spool by 58984-submit <at> debbugs.gnu.org id=B58984.166758416022110
          (code B ref 58984); Fri, 04 Nov 2022 17:50:02 +0000
Received: (at 58984) by debbugs.gnu.org; 4 Nov 2022 17:49:20 +0000
Received: from localhost ([127.0.0.1]:54739 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1or0oh-0005kY-OY
	for submit <at> debbugs.gnu.org; Fri, 04 Nov 2022 13:49:20 -0400
Received: from mail150c50.megamailservers.eu ([91.136.10.160]:44622
 helo=mail50c50.megamailservers.eu)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattiase@HIDDEN>) id 1or0oe-0005kL-AP
 for 58984 <at> debbugs.gnu.org; Fri, 04 Nov 2022 13:49:18 -0400
X-Authenticated-User: mattiase@HIDDEN
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu;
 s=maildub; t=1667584152;
 bh=B1WPTUc8wR2QJckD2k6zJqKCI5RwWwkiCmcIW2/cdKg=;
 h=Subject:From:In-Reply-To:Date:Cc:References:To:From;
 b=ruQR+Z1HiR2rPJNbJaOMiPTidoWTj7UFu8Ew/3drm5/wxELWAcDWyzaEO3dU/0pIv
 iSEjYAoKPTuqSnCibEv+470o0edFNsgozxSUnn15WFxksnujnytXbgfENVsIV08ax8
 rewA/PnD8GiaNSUIutX/oJK9NiS8R5MCvn60NBJA=
Feedback-ID: mattiase@HIDDEN
Received: from smtpclient.apple (c188-150-171-209.bredband.tele2.se
 [188.150.171.209]) (authenticated bits=0)
 by mail50c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id 2A4Hn9Cq077985; 
 Fri, 4 Nov 2022 17:49:10 +0000
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
In-Reply-To: <87edui3ax7.fsf@HIDDEN>
Date: Fri, 4 Nov 2022 18:49:08 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <D4ED21A2-24F7-4484-BF8E-29B220026D44@HIDDEN>
References: <87a6589of4.fsf@HIDDEN>
 <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN> <87edui3ax7.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.13)
X-CTCH-RefID: str=0001.0A782F16.63655098.002A, ss=1, re=0.000, recu=0.000,
 reip=0.000, cl=1, cld=1, fgs=0
X-CTCH-VOD: Unknown
X-CTCH-Spam: Unknown
X-CTCH-Score: 0.000
X-CTCH-Rules: 
X-CTCH-Flags: 0
X-CTCH-ScoreCust: 0.000
X-Origin-Country: SE
X-Spam-Score: 1.4 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: 4 nov. 2022 kl. 18.08 skrev Basil L. Contovounesios
 <contovob@HIDDEN>:
 > Like this compile log, for instance? Thank you,
 I didn't pay enough attention. Let's look at: 
 Content analysis details:   (1.4 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 0.4 KHOP_HELO_FCRDNS       Relay HELO differs from its IP's reverse DNS
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

4 nov. 2022 kl. 18.08 skrev Basil L. Contovounesios <contovob@HIDDEN>:

> Like this compile log, for instance?

Thank you, I didn't pay enough attention. Let's look at:

> itree-tests.c:71:F:insert1:test_insert_1:0: Assertion 'N_50.red' =
failed

This doesn't quite conform to GNU message standards, does it? For it to =
have the

  [PROGRAM:]FILE:LINE: MESSAGE

form, there should be a space before the message (that is, before the =
'F'). Otherwise parsing these things become almost impossible with all =
the possible variations, file names containing spaces and colons and so =
on. Currently, the machinery interprets "tree-tests.c" as the program =
name and "71:F:insert1:test_insert_1" as the file which is of course =
nonsense.

Any hope the tool can have its output format adjusted?





Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: "Basil L. Contovounesios" <contovob@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 06 Nov 2022 12:12:01 +0000
Resent-Message-ID: <handler.58984.B58984.166773667032232 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Cc: 58984 <at> debbugs.gnu.org
Received: via spool by 58984-submit <at> debbugs.gnu.org id=B58984.166773667032232
          (code B ref 58984); Sun, 06 Nov 2022 12:12:01 +0000
Received: (at 58984) by debbugs.gnu.org; 6 Nov 2022 12:11:10 +0000
Received: from localhost ([127.0.0.1]:58863 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1oreUX-0008Nn-Mt
	for submit <at> debbugs.gnu.org; Sun, 06 Nov 2022 07:11:10 -0500
Received: from mail-ed1-f43.google.com ([209.85.208.43]:34737)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <contovob@HIDDEN>) id 1oreUT-0008ND-33
 for 58984 <at> debbugs.gnu.org; Sun, 06 Nov 2022 07:11:07 -0500
Received: by mail-ed1-f43.google.com with SMTP id v27so13669642eda.1
 for <58984 <at> debbugs.gnu.org>; Sun, 06 Nov 2022 04:11:05 -0800 (PST)
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=tcd.ie; s=google21;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:from:to:cc:subject:date:message-id:reply-to;
 bh=wn3e133WZf7p8MGKGMQdbm4pHOUyXi0kX4Mi4Sprdtg=;
 b=OfW791+hrsTBwRitl4HVyyjf+Z62VFo9rkAV2CAhGJwvT33A62I/ebTlsNzCq5PTNW
 gXrbkyuXvmw5/eIqHZS9XAoceUZHX6+DiNZ6Si76aCLBuwzzdxZqksJEGmikD1J3USaZ
 GXkaB5gs8DoADAA4NtOCzmjFZ35asUEsY/IDGzCnFGeccl8cUBim/ftBt2M6iqvE4gwp
 b7eFU4EYURHCLVS1YQ0i1lgoBIyNczPUPUDOWi0pf3a8R7ouYmN3iExYeRLD3qeFjfs3
 50E56hg/Y5yEloZNAlkb+882m9AsZebgM9hXUuXRppx0xhxDuktgCtwT5ZIeAHxbS5UN
 uNcQ==
X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed;
 d=1e100.net; s=20210112;
 h=mime-version:user-agent:message-id:date:references:in-reply-to
 :subject:cc:to:from:x-gm-message-state:from:to:cc:subject:date
 :message-id:reply-to;
 bh=wn3e133WZf7p8MGKGMQdbm4pHOUyXi0kX4Mi4Sprdtg=;
 b=5P7/9sBJefq2enmTTS51DdOp/yyovcuEK6QvfT/fHPSkQkoNk0ClTdrhHqvhS8e1hF
 bx9/UlWLoqv6h8sMXCz1CF7+8wICAwIVVvWn7ZuVRpQ4ut3YcmNeihQ7lNEkK4Wwq7NK
 Yu2gMJGqAJAKi0PxZUee4RvmpVFaA0qrnSJougoZVHi3xZWZSzTwHLpAhi7vfU+jZbcj
 cAPtJ8y7sP5AAlrnsD04XlRPPjsoFKudyJHTRp2hsOFAKApZs98uCEGdEve8rsgmKFzC
 CNk4ZIlkAYiCifcpL1LR5aEcO2pmsT3/kXLtVVq7AelgAHl4zMC85VfcboZmJYp8Wgi6
 1P7g==
X-Gm-Message-State: ACrzQf0ODMF9rhkuXTmzrj5aAC5pYgHHfoYNwAbdNdn9uHyqXoSq4By2
 5GsBrFCBelDs0ZMtIpmtJLUZ7g==
X-Google-Smtp-Source: AMsMyM7pd1kvzUYDByDVeLN98GFYW5c1sWWWJMjmjkHbx9b90wPudx3U/noLbEdpd4O9rlYDQ5VyfA==
X-Received: by 2002:a50:eb05:0:b0:457:c6f5:5f65 with SMTP id
 y5-20020a50eb05000000b00457c6f55f65mr44165136edp.311.1667736659236; 
 Sun, 06 Nov 2022 04:10:59 -0800 (PST)
Received: from localhost ([2a02:587:320c:8829:23:8156:16ed:40c2])
 by smtp.gmail.com with ESMTPSA id
 g22-20020a50ee16000000b004616b006871sm2551391eds.82.2022.11.06.04.10.58
 (version=TLS1_3 cipher=TLS_AES_256_GCM_SHA384 bits=256/256);
 Sun, 06 Nov 2022 04:10:58 -0800 (PST)
From: "Basil L. Contovounesios" <contovob@HIDDEN>
In-Reply-To: <D4ED21A2-24F7-4484-BF8E-29B220026D44@HIDDEN> ("Mattias
 =?UTF-8?Q?Engdeg=C3=A5rd?="'s message of "Fri, 4 Nov 2022 18:49:08
 +0100")
References: <87a6589of4.fsf@HIDDEN>
 <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN> <87edui3ax7.fsf@HIDDEN>
 <D4ED21A2-24F7-4484-BF8E-29B220026D44@HIDDEN>
Date: Sun, 06 Nov 2022 14:10:56 +0200
Message-ID: <87zgd4uvu7.fsf@HIDDEN>
User-Agent: Gnus/5.13 (Gnus v5.13)
MIME-Version: 1.0
Content-Type: multipart/mixed; boundary="=-=-="
X-Spam-Score: -0.0 (/)
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -1.0 (-)

--=-=-=
Content-Type: text/plain; charset=utf-8
Content-Transfer-Encoding: quoted-printable

Mattias Engdeg=C3=A5rd [2022-11-04 18:49 +0100] wrote:

> 4 nov. 2022 kl. 18.08 skrev Basil L. Contovounesios <contovob@HIDDEN>:
>> itree-tests.c:71:F:insert1:test_insert_1:0: Assertion 'N_50.red' failed
>
> This doesn't quite conform to GNU message standards, does it? For it to h=
ave the
>
>   [PROGRAM:]FILE:LINE: MESSAGE
>
> form, there should be a space before the message (that is, before the
> 'F'). Otherwise parsing these things become almost impossible with all the
> possible variations, file names containing spaces and colons and so
> on.

I imagined as much, which is why I pinged you for comment from the
outset ;).

> Currently, the machinery interprets "tree-tests.c" as the program name and
> "71:F:insert1:test_insert_1" as the file which is of course nonsense.
>
> Any hope the tool can have its output format adjusted?

The only alternative format I'm aware of is after compiling the test
runner in CK_SUBUNIT mode instead of CK_NORMAL or CK_ENV.  I.e. with the
following patch:


--=-=-=
Content-Type: text/x-diff
Content-Disposition: inline; filename=errors.diff

diff --git a/test/manual/noverlay/Makefile.in b/test/manual/noverlay/Makefile.in
index 3c8dba1ce1..c0fa705174 100644
--- a/test/manual/noverlay/Makefile.in
+++ b/test/manual/noverlay/Makefile.in
@@ -33,7 +33,7 @@ .PHONY:
 all: check
 
 check: $(PROGRAM)
-	./check-sanitize.sh ./$(PROGRAM)
+	./$(PROGRAM)
 
 itree-tests.o: emacs-compat.h $(top_srcdir)/src/itree.c $(top_srcdir)/src/itree.h
 
diff --git a/test/manual/noverlay/itree-tests.c b/test/manual/noverlay/itree-tests.c
index 278e65f9bf..a8c69c79be 100644
--- a/test/manual/noverlay/itree-tests.c
+++ b/test/manual/noverlay/itree-tests.c
@@ -68,8 +68,8 @@ START_TEST (test_insert_1)
    */
 
   interval_tree_insert (&tree, &N_50);
-  ck_assert (! N_50.red);
-  ck_assert_ptr_eq (&N_50, tree.root);
+  ck_assert (N_50.red);
+  ck_assert_ptr_ne (&N_50, tree.root);
 }
 END_TEST
 
@@ -88,7 +88,7 @@ START_TEST (test_insert_2)
   ck_assert_ptr_eq (&N_50, tree.root);
   ck_assert_ptr_eq (N_30.parent, &N_50);
   ck_assert_ptr_eq (N_50.left, &N_30);
-  ck_assert_ptr_null (N_50.right);
+  ck_assert_ptr_nonnull (N_50.right);
   ck_assert_ptr_null (N_30.left);
   ck_assert_ptr_null (N_30.right);
 }
@@ -737,7 +737,7 @@ START_TEST (test_remove_10)
       itree_remove (&tree, &nodes[index[i]]);
     }
   ck_assert_ptr_null (tree.root);
-  ck_assert_int_eq (tree.size, 0);
+  ck_assert_int_ne (tree.size, 0);
 }
 END_TEST
 
@@ -749,11 +749,11 @@ START_TEST (test_remove_10)
 START_TEST (test_generator_1)
 {
   struct itree_node node, *n;
-  struct itree_iterator *g;
+  struct itree_iterator *g = NULL;
   interval_tree_init (&tree);
 
   itree_insert (&tree, &node, 10, 20);
-  g = itree_iterator_start (&tree, 0, 30, ITREE_ASCENDING, NULL, 0);
+  /* g = itree_iterator_start (&tree, 0, 30, ITREE_ASCENDING, NULL, 0); */
   n = itree_iterator_next (g);
   ck_assert_ptr_eq (n, &node);
   ck_assert_int_eq (n->begin, 10);
@@ -1282,7 +1282,7 @@ main (void)
   SRunner *sr = srunner_create (s);
 
   init_itree ();
-  srunner_run_all (sr, CK_ENV);
+  srunner_run_all (sr, CK_SUBUNIT);
   int nfailed = srunner_ntests_failed (sr);
   srunner_free (sr);
   return (nfailed == 0) ? EXIT_SUCCESS : EXIT_FAILURE;

--=-=-=
Content-Type: text/plain


I get the following output:


--=-=-=
Content-Type: text/plain
Content-Disposition: inline; filename=errors.txt

-*- mode: compilation; default-directory: "~/.local/src/emacs/test/manual/noverlay/" -*-
Compilation started at Sun Nov  6 14:08:38

make
gcc -O0 -g3 -pthread -I ../../../src  -c -o itree-tests.o itree-tests.c
gcc   itree-tests.o  -lcheck_pic -pthread -lrt -lm -lsubunit -lm -o itree-tests
./itree-tests
test: insert1:test_insert_1
failure: insert1:test_insert_1 [
itree-tests.c:71: Assertion 'N_50.red' failed
]
test: insert1:test_insert_2
failure: insert1:test_insert_2 [
itree-tests.c:91: Assertion 'N_50.right != NULL' failed: N_50.right == 0
]
test: insert1:test_insert_3
success: insert1:test_insert_3
test: insert1:test_insert_4
success: insert1:test_insert_4
test: insert1:test_insert_5
success: insert1:test_insert_5
test: insert1:test_insert_6
success: insert1:test_insert_6
test: insert2:test_insert_7
success: insert2:test_insert_7
test: insert2:test_insert_8
success: insert2:test_insert_8
test: insert2:test_insert_9
success: insert2:test_insert_9
test: insert2:test_insert_10
success: insert2:test_insert_10
test: insert2:test_insert_11
success: insert2:test_insert_11
test: insert2:test_insert_12
success: insert2:test_insert_12
test: insert3:test_insert_13
success: insert3:test_insert_13
test: insert3:test_insert_14
success: insert3:test_insert_14
test: remove1:test_remove_1
success: remove1:test_remove_1
test: remove1:test_remove_2
success: remove1:test_remove_2
test: remove1:test_remove_3
success: remove1:test_remove_3
test: remove1:test_remove_4
success: remove1:test_remove_4
test: remove2:test_remove_5
success: remove2:test_remove_5
test: remove2:test_remove_6
success: remove2:test_remove_6
test: remove2:test_remove_7
success: remove2:test_remove_7
test: remove2:test_remove_8
success: remove2:test_remove_8
test: remove3:test_remove_9
success: remove3:test_remove_9
test: remove3:test_remove_10
failure: remove3:test_remove_10 [
itree-tests.c:740: Assertion 'tree.size != 0' failed: tree.size == 0, 0 == 0
]
test: generator:test_generator_1
../../../src/itree.c:1370:eassert condition failed: g && g->running
error: generator:test_generator_1 [
itree-tests.c:749: (after this point) Early exit with return value 1
]
test: generator:test_generator_2
success: generator:test_generator_2
test: generator:test_generator_3
success: generator:test_generator_3
test: generator:test_generator_5
success: generator:test_generator_5
test: generator:test_generator_6
success: generator:test_generator_6
test: generator:test_generator_7
success: generator:test_generator_7
test: generator:test_generator_8
success: generator:test_generator_8
test: generator:test_generator_9
success: generator:test_generator_9
test: insert_gap:test_gap_insert_1
success: insert_gap:test_gap_insert_1
test: insert_gap:test_gap_insert_2
success: insert_gap:test_gap_insert_2
test: insert_gap:test_gap_insert_3
success: insert_gap:test_gap_insert_3
test: insert_gap:test_gap_insert_4
success: insert_gap:test_gap_insert_4
test: insert_gap:test_gap_insert_5
success: insert_gap:test_gap_insert_5
test: insert_gap:test_gap_insert_6
success: insert_gap:test_gap_insert_6
test: insert_gap:test_gap_insert_7
success: insert_gap:test_gap_insert_7
test: insert_gap:test_gap_insert_8
success: insert_gap:test_gap_insert_8
test: insert_gap:test_gap_insert_9
success: insert_gap:test_gap_insert_9
test: insert_gap:test_gap_insert_10
success: insert_gap:test_gap_insert_10
test: insert_gap:test_gap_insert_11
success: insert_gap:test_gap_insert_11
test: delete_gap:test_gap_delete_1
success: delete_gap:test_gap_delete_1
test: delete_gap:test_gap_delete_2
success: delete_gap:test_gap_delete_2
test: delete_gap:test_gap_delete_3
success: delete_gap:test_gap_delete_3
test: delete_gap:test_gap_delete_4
success: delete_gap:test_gap_delete_4
test: delete_gap:test_gap_delete_5
success: delete_gap:test_gap_delete_5
test: delete_gap:test_gap_delete_6
success: delete_gap:test_gap_delete_6
test: delete_gap:test_gap_delete_7
success: delete_gap:test_gap_delete_7
test: delete_gap:test_gap_delete_8
success: delete_gap:test_gap_delete_8

make: *** [Makefile:36: check] Error 1

Compilation exited abnormally with code 2 at Sun Nov  6 14:08:39

--=-=-=
Content-Type: text/plain


This is much more verbose, but the error messages are in a more readily
grokked format.  Not sure which is preferable between that and the
status quo (filtering through check-sanitize.sh).

In any case the feature request was to support Check's default output
(what we do with our small manual test suite is largely
inconsequential), so if that's too difficult and brittle for few gains,
we can close this as wontfix.

Thanks,

-- 
Basil

--=-=-=--




Message sent to bug-gnu-emacs@HIDDEN:


X-Loop: help-debbugs@HIDDEN
Subject: bug#58984: 29.0.50; M-x compile misinterprets libcheck error message format
Resent-From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
Original-Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
Resent-CC: bug-gnu-emacs@HIDDEN
Resent-Date: Sun, 06 Nov 2022 14:28:01 +0000
Resent-Message-ID: <handler.58984.B58984.16677448306141 <at> debbugs.gnu.org>
Resent-Sender: help-debbugs@HIDDEN
X-GNU-PR-Message: followup 58984
X-GNU-PR-Package: emacs
X-GNU-PR-Keywords: 
To: "Basil L. Contovounesios" <contovob@HIDDEN>
Cc: 58984 <at> debbugs.gnu.org
Received: via spool by 58984-submit <at> debbugs.gnu.org id=B58984.16677448306141
          (code B ref 58984); Sun, 06 Nov 2022 14:28:01 +0000
Received: (at 58984) by debbugs.gnu.org; 6 Nov 2022 14:27:10 +0000
Received: from localhost ([127.0.0.1]:59061 helo=debbugs.gnu.org)
	by debbugs.gnu.org with esmtp (Exim 4.84_2)
	(envelope-from <debbugs-submit-bounces <at> debbugs.gnu.org>)
	id 1orgc7-0001av-D1
	for submit <at> debbugs.gnu.org; Sun, 06 Nov 2022 09:27:10 -0500
Received: from mail229c50.megamailservers.eu ([91.136.10.239]:41160
 helo=mail36c50.megamailservers.eu)
 by debbugs.gnu.org with esmtp (Exim 4.84_2)
 (envelope-from <mattiase@HIDDEN>) id 1orgc2-0001ab-4r
 for 58984 <at> debbugs.gnu.org; Sun, 06 Nov 2022 09:27:06 -0500
X-Authenticated-User: mattiase@HIDDEN
DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/simple; d=megamailservers.eu;
 s=maildub; t=1667744820;
 bh=BgYhczJGIOXvY9VP6ZL+vLUrJa2JVQzTxgUvEBvp04s=;
 h=Subject:From:In-Reply-To:Date:Cc:References:To:From;
 b=fNhDZin0WgRBd+G62qlz5JmKI/+9GdYs0iZbHmsrPacqBwmysc13UrEnnxCewmwTi
 AnmqtCWj39bG3/qPPc5Vov/1dWtmRGh2aRocGLZs9vAwqxWJ6v2J4AjJtE/WcNwrXM
 NPw+hEZjAmRiGOIzKlfY5s/xiH4MfAScBvqg+ZQw=
Feedback-ID: mattiase@HIDDEN
Received: from smtpclient.apple (c188-150-171-209.bredband.tele2.se
 [188.150.171.209]) (authenticated bits=0)
 by mail36c50.megamailservers.eu (8.14.9/8.13.1) with ESMTP id 2A6EQrWk073330; 
 Sun, 6 Nov 2022 14:26:57 +0000
Content-Type: text/plain;
	charset=us-ascii
Mime-Version: 1.0 (Mac OS X Mail 14.0 \(3654.120.0.1.13\))
From: Mattias =?UTF-8?Q?Engdeg=C3=A5rd?= <mattiase@HIDDEN>
In-Reply-To: <87zgd4uvu7.fsf@HIDDEN>
Date: Sun, 6 Nov 2022 15:26:51 +0100
Content-Transfer-Encoding: quoted-printable
Message-Id: <6252DE05-F84F-4A81-BD06-3F4CF7AFCD08@HIDDEN>
References: <87a6589of4.fsf@HIDDEN>
 <CD67E053-8AD7-45EC-B314-6E11E7FEC600@HIDDEN> <87edui3ax7.fsf@HIDDEN>
 <D4ED21A2-24F7-4484-BF8E-29B220026D44@HIDDEN> <87zgd4uvu7.fsf@HIDDEN>
X-Mailer: Apple Mail (2.3654.120.0.1.13)
X-CTCH-RefID: str=0001.0A782F24.6367C434.0001, ss=1, re=0.000, recu=0.000,
 reip=0.000, cl=1, cld=1, fgs=0
X-CTCH-VOD: Unknown
X-CTCH-Spam: Unknown
X-CTCH-Score: 0.000
X-CTCH-Rules: 
X-CTCH-Flags: 0
X-CTCH-ScoreCust: 0.000
X-Origin-Country: SE
X-Spam-Score: 1.4 (+)
X-Spam-Report: Spam detection software, running on the system "debbugs.gnu.org",
 has NOT identified this incoming email as spam.  The original
 message has been attached to this so you can view it or label
 similar future email.  If you have any questions, see
 the administrator of that system for details.
 Content preview: 6 nov. 2022 kl. 13.10 skrev Basil L. Contovounesios
 <contovob@HIDDEN>:
 > The only alternative format I'm aware of is after compiling the test >
 runner in CK_SUBUNIT mode instead of CK_NORMAL or CK_ENV. 
 Content analysis details:   (1.4 points, 10.0 required)
 pts rule name              description
 ---- ---------------------- --------------------------------------------------
 1.0 SPF_SOFTFAIL           SPF: sender does not match SPF record (softfail)
 0.0 SPF_HELO_NONE          SPF: HELO does not publish an SPF Record
 0.4 KHOP_HELO_FCRDNS       Relay HELO differs from its IP's reverse DNS
X-BeenThere: debbugs-submit <at> debbugs.gnu.org
X-Mailman-Version: 2.1.18
Precedence: list
List-Id: <debbugs-submit.debbugs.gnu.org>
List-Unsubscribe: <https://debbugs.gnu.org/cgi-bin/mailman/options/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=unsubscribe>
List-Archive: <https://debbugs.gnu.org/cgi-bin/mailman/private/debbugs-submit/>
List-Post: <mailto:debbugs-submit <at> debbugs.gnu.org>
List-Help: <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=help>
List-Subscribe: <https://debbugs.gnu.org/cgi-bin/mailman/listinfo/debbugs-submit>, 
 <mailto:debbugs-submit-request <at> debbugs.gnu.org?subject=subscribe>
Errors-To: debbugs-submit-bounces <at> debbugs.gnu.org
Sender: "Debbugs-submit" <debbugs-submit-bounces <at> debbugs.gnu.org>
X-Spam-Score: -0.0 (/)

6 nov. 2022 kl. 13.10 skrev Basil L. Contovounesios <contovob@HIDDEN>:

> The only alternative format I'm aware of is after compiling the test
> runner in CK_SUBUNIT mode instead of CK_NORMAL or CK_ENV.

If you like but I rather thought about fixing libcheck. Would something =
break if we added a space to the format string in `tr_str`? Ask the =
maintainers?

> In any case the feature request was to support Check's default output
> (what we do with our small manual test suite is largely
> inconsequential), so if that's too difficult and brittle for few =
gains,
> we can close this as wontfix.

You decide -- I don't think it's worth the trouble to add more =
contortions to the already much too complex `gnu` compilation-mode rule, =
if that is even possible without breaking something else or introducing =
major regexp backtracking points...






Last modified: Sun, 6 Nov 2022 14:30:03 UTC

GNU bug tracking system
Copyright (C) 1999 Darren O. Benham, 1997 nCipher Corporation Ltd, 1994-97 Ian Jackson.