public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
@ 2024-03-25 11:04 ro at gcc dot gnu.org
  2024-03-27 18:51 ` [Bug go/114454] " ian at airs dot com
                   ` (3 more replies)
  0 siblings, 4 replies; 5+ messages in thread
From: ro at gcc dot gnu.org @ 2024-03-25 11:04 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 114454
           Summary: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
           Product: gcc
           Version: 14.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: go
          Assignee: ian at airs dot com
          Reporter: ro at gcc dot gnu.org
  Target Milestone: ---

When running the Go testsuite with LANG=C (or any non-UTF-8 locale, I suppose),
go.test/test/fixedbugs/issue27836.go FAILs:

FAIL: go.test/test/fixedbugs/issue27836.dir/Äfoo.go  -O -I. (test for excess
errors)

Excess errors:
go1: fatal error: cannot open
/vol/gcc/src/hg/master/local/gcc/testsuite/go.test/test/fixedbugs/issue27836.dir/Ã<84>foo.go:
No such file or directory
compilation terminated.

FAIL: go.test/test/fixedbugs/issue27836.dir/Ämain.go  -O -I. (test for excess
errors)

Excess errors:
go1: fatal error: cannot open
/vol/gcc/src/hg/master/local/gcc/testsuite/go.test/test/fixedbugs/issue27836.dir/Ã<84>main.go:
No such file or directory
compilation terminated.

It seems the test assumes an UTF-8 locale, but takes no precautions to
guarantee
that.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/114454] go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
  2024-03-25 11:04 [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C ro at gcc dot gnu.org
@ 2024-03-27 18:51 ` ian at airs dot com
  2024-03-29 23:57 ` hp at gcc dot gnu.org
                   ` (2 subsequent siblings)
  3 siblings, 0 replies; 5+ messages in thread
From: ian at airs dot com @ 2024-03-27 18:51 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Ian Lance Taylor <ian at airs dot com> ---
I'm not sure what is going on here.  The test as such does not require a UTF-8
LANG.  That is, I can run the compiler and the test with LANG=C and everything
passes.  In fact, that is exactly how the GCC testsuite runs the test: the GCC
testsuite sets LANG=C before all tests.

As best I can tell the problem must be arising somehow in the DejaGNU code. 
The filenames in the test use UTF-8 non-ASCII characters.  But I haven't been
able to figure out where the problem is.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/114454] go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
  2024-03-25 11:04 [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C ro at gcc dot gnu.org
  2024-03-27 18:51 ` [Bug go/114454] " ian at airs dot com
@ 2024-03-29 23:57 ` hp at gcc dot gnu.org
  2024-04-04 12:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2024-04-04 12:29 ` schwab@linux-m68k.org
  3 siblings, 0 replies; 5+ messages in thread
From: hp at gcc dot gnu.org @ 2024-03-29 23:57 UTC (permalink / raw)
  To: gcc-bugs

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

Hans-Peter Nilsson <hp at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |hp at gcc dot gnu.org

--- Comment #2 from Hans-Peter Nilsson <hp at gcc dot gnu.org> ---
This reminds me of PR105959, but no, I haven't actually jumped into the
rabbithole^W^Wanalyzed the problem to any extent.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/114454] go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
  2024-03-25 11:04 [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C ro at gcc dot gnu.org
  2024-03-27 18:51 ` [Bug go/114454] " ian at airs dot com
  2024-03-29 23:57 ` hp at gcc dot gnu.org
@ 2024-04-04 12:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
  2024-04-04 12:29 ` schwab@linux-m68k.org
  3 siblings, 0 replies; 5+ messages in thread
From: ro at CeBiTec dot Uni-Bielefeld.DE @ 2024-04-04 12:00 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #3 from ro at CeBiTec dot Uni-Bielefeld.DE <ro at CeBiTec dot Uni-Bielefeld.DE> ---
> --- Comment #1 from Ian Lance Taylor <ian at airs dot com> ---
> I'm not sure what is going on here.  The test as such does not require a UTF-8
> LANG.  That is, I can run the compiler and the test with LANG=C and everything
> passes.  In fact, that is exactly how the GCC testsuite runs the test: the GCC
> testsuite sets LANG=C before all tests.
>
> As best I can tell the problem must be arising somehow in the DejaGNU code. 
> The filenames in the test use UTF-8 non-ASCII characters.  But I haven't been
> able to figure out where the problem is.

I've done a bit more digging now, running the test under runtest both
with LANG=en_US.UTF-8 and LANG=C.

* Comparing go.log shows

-PASS: go.test/test/fixedbugs/issue27836.dir/�<84>foo.go  -O -I. (test for
excess errors)
+go1: fatal error: cannot open
/vol/gcc/src/hg/master/local/gcc/testsuite/go.test/test/fixedbugs/issue27836.dir/�<83>�<84>foo.go:
No such file or directory

  i.e. a leading "�<83>" is added to the filename.

* Running both under truss, I see that gccgo is invoked differently:

  LANG=UTF-8:

14285: 
execve("/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../gccgo",
0x00E00790, 0x009A5F10)  argc = 12
14285:   argv:
14285:   
/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../gccgo
14285:   
-B/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../
14285:    -fdiagnostics-plain-output
14285:   
-I/var/gcc/regression/master/11.4-gcc/build/i386-pc-solaris2.11/./libgo
14285:    -O -I. -w -pedantic-errors -c -o Ã<84>foo.o
14285:   
/vol/gcc/src/hg/master/local/gcc/testsuite/go.test/test/fixedbugs/issue27836.dir/Ã<84>foo.go

  LANG=C:

14441: 
execve("/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../gccgo",
0x00DFFA40, 0x009A11A0)  argc = 12
14441:   argv:  
14441:   
/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../gccgo
14441:   
-B/var/gcc/regression/master/11.4-gcc/build/gcc/testsuite/go-issue27836/../../
14441:    -fdiagnostics-plain-output
14441:   
-I/var/gcc/regression/master/11.4-gcc/build/i386-pc-solaris2.11/./libgo
14441:    -O -I. -w -pedantic-errors -c -o Ã<83>Â<84>foo.o
14441:   
/vol/gcc/src/hg/master/local/gcc/testsuite/go.test/test/fixedbugs/issue27836.dir/Ã<83>Â<84>foo.go

So the caller of gccgo (runtest/expect) calls it differently.

runtest is the latest version:

DejaGnu version 1.6.3
Expect version  5.45.4
Tcl version     8.6

but expect is ancient (the latest available from 2018).

My inclination to debug runtest or even expect is limited, TBH.

^ permalink raw reply	[flat|nested] 5+ messages in thread

* [Bug go/114454] go.test/test/fixedbugs/issue27836.go FAILs with LANG=C
  2024-03-25 11:04 [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C ro at gcc dot gnu.org
                   ` (2 preceding siblings ...)
  2024-04-04 12:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
@ 2024-04-04 12:29 ` schwab@linux-m68k.org
  3 siblings, 0 replies; 5+ messages in thread
From: schwab@linux-m68k.org @ 2024-04-04 12:29 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Andreas Schwab <schwab@linux-m68k.org> ---
<c3><83> is the UTF-8 encoding of U00C3 and <c2><84> is the UTF-8 encoding of
U0084.

^ permalink raw reply	[flat|nested] 5+ messages in thread

end of thread, other threads:[~2024-04-04 12:29 UTC | newest]

Thread overview: 5+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2024-03-25 11:04 [Bug go/114454] New: go.test/test/fixedbugs/issue27836.go FAILs with LANG=C ro at gcc dot gnu.org
2024-03-27 18:51 ` [Bug go/114454] " ian at airs dot com
2024-03-29 23:57 ` hp at gcc dot gnu.org
2024-04-04 12:00 ` ro at CeBiTec dot Uni-Bielefeld.DE
2024-04-04 12:29 ` schwab@linux-m68k.org

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).