Bug 21350 – [TestSuite] Failure of test/unit/frontend.d shows as "TARGET: ."
Status
RESOLVED
Resolution
FIXED
Severity
normal
Priority
P1
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2020-10-29T16:17:59Z
Last change time
2022-02-14T23:25:39Z
Keywords
TestSuite
Assigned to
No Owner
Creator
Mathias LANG
Comments
Comment #0 by pro.mathias.lang — 2020-10-29T16:17:59Z
I've seen the following failure in the CI:
```
Failed to execute the `unit` test executable! (exit code 1)
> /home/circleci/dmd/generated/linux/debug/64/dmd @/home/circleci/dmd/test/test_results/cmdfile
> /home/circleci/dmd/test/test_results/runner
test.d(1): Error: Built-in hex string literals are obsolete, use `std.conv.hexString!"61"` instead.
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
Failures:
1) parseModule - custom AST family
core.exception.AssertError@/home/circleci/dmd/test/unit/frontend.d(63): unittest failure
----------------
src/core/exception.d:447 onAssertErrorMsg [0x557bdf5a00fb]
src/core/exception.d:464 onUnittestErrorMsg [0x557bdf5a017d]
src/core/exception.d:608 _d_unittest_msg [0x557bdf573228]
src/core/exception.d:613 _d_unittest [0x557bdf573269]
src/core/exception.d:603 _d_unittestp [0x557bdf5731e1]
/home/circleci/dmd/test/unit/frontend.d:63 void frontend.__unittest_L14_C1() [0x557bdf2edf9d]
/home/circleci/dmd/test/test_results/runner.d:160 core.runtime.UnitTestResult runner.unitTestRunner() [0x557bdf3054c6]
src/core/runtime.d:598 runModuleUnitTests [0x557bdf5a0602]
src/rt/dmain2.d:552 void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).runAll() [0x557bdf576305]
src/rt/dmain2.d:526 void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).tryExec(scope void delegate()) [0x557bdf576280]
src/rt/dmain2.d:585 _d_run_main2 [0x557bdf5761e5]
src/rt/dmain2.d:379 _d_run_main [0x557bdf575f12]
/home/circleci/dmd/generated/linux/debug/64/../../../../../druntime/import/core/internal/entrypoint.d:29 main [0x557bdf314e65]
??:? __libc_start_main [0x7fb3dd2fcb96]
??:? _start [0x557bdf2a6d69]
232 tests, 1 failures
Failed tests:
/home/circleci/dmd/test/unit/frontend.d:63
>>> TARGET FAILED: .Failed to execute the `unit` test executable! (exit code 1)
> /home/circleci/dmd/generated/linux/debug/64/dmd @/home/circleci/dmd/test/test_results/cmdfile
> /home/circleci/dmd/test/test_results/runner
test.d(1): Error: Built-in hex string literals are obsolete, use `std.conv.hexString!"61"` instead.
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
test.d(1): Error: declaration expected following attribute, not end of file
Failures:
1) parseModule - custom AST family
core.exception.AssertError@/home/circleci/dmd/test/unit/frontend.d(63): unittest failure
----------------
src/core/exception.d:447 onAssertErrorMsg [0x557bdf5a00fb]
src/core/exception.d:464 onUnittestErrorMsg [0x557bdf5a017d]
src/core/exception.d:608 _d_unittest_msg [0x557bdf573228]
src/core/exception.d:613 _d_unittest [0x557bdf573269]
src/core/exception.d:603 _d_unittestp [0x557bdf5731e1]
/home/circleci/dmd/test/unit/frontend.d:63 void frontend.__unittest_L14_C1() [0x557bdf2edf9d]
/home/circleci/dmd/test/test_results/runner.d:160 core.runtime.UnitTestResult runner.unitTestRunner() [0x557bdf3054c6]
src/core/runtime.d:598 runModuleUnitTests [0x557bdf5a0602]
src/rt/dmain2.d:552 void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).runAll() [0x557bdf576305]
src/rt/dmain2.d:526 void rt.dmain2._d_run_main2(char[][], ulong, extern (C) int function(char[][])*).tryExec(scope void delegate()) [0x557bdf576280]
src/rt/dmain2.d:585 _d_run_main2 [0x557bdf5761e5]
src/rt/dmain2.d:379 _d_run_main [0x557bdf575f12]
/home/circleci/dmd/generated/linux/debug/64/../../../../../druntime/import/core/internal/entrypoint.d:29 main [0x557bdf314e65]
??:? __libc_start_main [0x7fb3dd2fcb96]
??:? _start [0x557bdf2a6d69]
232 tests, 1 failures
Failed tests:
/home/circleci/dmd/test/unit/frontend.d:63
>>> TARGET FAILED: .
```
The issue is that the target name is not helpful. Since tests runs in parallel, this can trigger early on, and the test-suite will continue to run, until a few hundreds lines later it prints:
```
[...]
... fail_compilation/fail3882.d -verrors=0 -w -fPIC (-debug)
FAILED targets:
- .
Exited with code exit status 1
```
Which forces the user to needlessly scroll up.
Comment #1 by moonlightsentinel — 2022-02-14T23:25:39Z
The error message explicitly refers to the `unit` tests instead of `.`