After my recent spate of commits, Bison HEAD passes all its tests on
Solaris 10 when compiled with Oracle Solaris Studio 12.3 (also known as
Sun C 5.12), except for this test:
113: Output file name: `~!@#$%^&*()-=_+{}[]|\:;<>, .' FAILED (output.at:293)
tests/testsuite.dir/113/testsuite.log is attached, and indicates that
it's an internal error in the C++ compiler (though not the C compiler).
I don't see this error in Oracle Developer Studio 12.6 (the current
release), so I doubt whether this issue is work fixing per se. That
being said, a C or C++ compiler is within its rights to reject file
names that are not portable POSIX file names, so perhaps the test should
be altered to detect compilers that are pickier about file names.
# -*- compilation -*-
113. output.at:293: testing Output file name: `~!@#$%^&*()-=_+{}[]|\:;<>, .' ...
./output.at:293: touch "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.tmp" || exit 77
./output.at:293: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h" glr.y
./output.at:293: ls "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c" "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.h"
stdout:
`~!@#$%^&*()-=_+{}[]|\:;<>, .'.c
`~!@#$%^&*()-=_+{}[]|\:;<>, .'.h
./output.at:293: $CC $CFLAGS $CPPFLAGS -c -o glr.o -c "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.c"
stderr:
stdout:
./output.at:293: COLUMNS=1000; export COLUMNS; bison --color=no -fno-caret -o "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" --defines="\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh" cxx.y
./output.at:293: ls "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc" "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.hh"
stdout:
`~!@#$%^&*()-=_+{}[]|\:;<>, .'.cc
`~!@#$%^&*()-=_+{}[]|\:;<>, .'.hh
./output.at:293: $CXX $CXXFLAGS $CPPFLAGS -c -o cxx.o -c "\`~!@#\$%^&*()-=_+{}[]|\\:;<>, .'.cc"
stderr:
"command line", line 2: Warning (Anachronism): Undefined character escape sequence "\:".
>> Assertion: (../lnk/utfutils.cc, line 79)
while processing /r/share1/src/solarisstudio12.3/prod/include/CC/Cstd/algorithm.cc at line 0.
stdout:
./output.at:293: exit code was 2, expected 0
113. output.at:293: 113. Output file name: `~!@#$%^&*()-=_+{}[]|\:;<>, .' (output.at:293): FAILED (output.at:293)