On Thu, 13 Dec 2018 at 10:16, Rainer Orth <r...@cebitec.uni-bielefeld.de> wrote: > > As reported in the PR, the test names of DejaGnu tests should be the > path relative to the respective testsuite directory, a convention the > gdc.test tests currently don't follow. > > The patch below fixes this. After a few false starts (some described in > the PR and several more) I came up with the following minimally > intrusive solution. This way, the gdc.test prefix is included in the > test names but stripped out again in gdc-dg-test so all path names in > the upstream testsuite (which don't include the prefix) continue to > work. The link from gdc.test to . in the gdc* dirs is still needed > because e.g. scanning the sources for dg- directives happens in > dg-runtest before entering dg-test and thus still needs the prefixed > form. > > I'm omitting the changes (also mentioned in the PR) to > compilable/ddoc9676a.d and compilable/depsOutput9948.d which contain > absolute path names in EXTRA_SOURCES because those need to go upstream > first. >
This has been committed upstream (https://github.com/dlang/dmd/pull/9051) - I just need to trickle it down, among other patches that are in my queue. I have no problem however if you go ahead commit the changes with this patch. > Bootstrapped without regressions on i386-pc-solaris2.11 and > x86_64-pc-linux-gnu. Ok for mainline? > OK on my side, just one mental note. > @@ -360,6 +361,9 @@ proc gdc-do-test { } { > # Initialize `dg'. > dg-init > > + # Create gdc.test link so test names include that subdir. > + catch { file link $subdir . } > + I guess the proper fix would be to split this into three files, right? - compilable/compilable.exp - fail_compilation/fail_compilation.exp - runnable/runnable.exp Then move the common bits into lib/gdc-dmd.exp -- Iain