gdb/testsuite: Testing with the armflang compiler
authorRichard Bunt <richard.bunt@linaro.org>
Mon, 12 Jun 2023 08:27:14 +0000 (09:27 +0100)
committerTom Tromey <tromey@adacore.com>
Mon, 12 Jun 2023 18:32:52 +0000 (12:32 -0600)
commit2e3aff27623b20b08ac58f8eaf73e97e58b4e67c
tree4978e06f06bf6557021d629f04b4454a0c575b0d
parenta1ef65231b379e5b01fc2079d3fdc185c90d704c
gdb/testsuite: Testing with the armflang compiler

Currently the Fortran test suite does not run with armflang because the
compiler detection fails. This in turn means fortran_runto_main does not
know which main method to use to start a test case.

Fortran compiler detection was added in 44d469c5f85; however, the commit
message notes that it was not tested with armflang.

This commit tests and fixes up a minor issue to get the detection
working.

The goal here is to get the tests running and preventing further
regressions during future work. This change does not do anything to fix
existing failures.

>From what I can understand, the auto detection leverages the
preprocessor to extract the Fortran compiler identity from the defines.
This preprocessor output is then evaluated by the test suite to import
these defines.

In the case of armflang, this evaluation step is disrupted by the
presence of the following warning:

    $ armflang -E -fdiagnostics-color=never testsuite/lib/compiler.F90 -o compiler.exp
    $ clang-13: warning: argument unused during compilation: '-fdiagnostics-color=never' [-Wunused-command-line-argument]

The evaluation logic is already set up to filter this warning, but the
prefix differs.

This commit fixes the issue by updating the filter to exclude the
armflang flavour of warning.

gdb.fortran regression tests run with GNU, Intel and Intel LLVM. No
regressions detected.

The gdb.fortran test results with ACfL 23.04.1 are as follows.

Before:

 # of expected passes 560
 # of unexpected failures 113
 # of unresolved testcases 2
 # of untested testcases 5
 # of duplicate test names 2

After:

 # of expected passes 5388
 # of unexpected failures 628
 # of known failures 10
 # of untested testcases 8
 # of unsupported tests 5
 # of duplicate test names 5

As can be seen from the above, there are now considerably more passing
assertions.

Reviewed-By: Luis Machado <luis.machado@arm.com>
Approved-By: Tom Tromey <tom@tromey.com>
gdb/testsuite/lib/gdb.exp