<div dir="ltr"><div>Hi Simon,</div><div><br></div><div>T11244 and the plugin output changes have been done after my commit to fix the tests, hence the new std issues. Those have to be fixed up again...</div><div><br></div><div>I'm curious about the threading issues though.</div><div><br></div><div>One way to find out is by running the entire testsuite with -j again but with VERBOSE=3 and piping to a file.</div><div><br></div><div>This will show the underlying tool's output instead of throwing it away. This will of course generate lots of data</div><div>but shouldn't be at the level of the strace output, but should give an indication of what's going on.<br></div><div><br></div><div>Cheers,</div><div>Tamar<br></div><div><br></div><div><br><div class="gmail_quote"><div dir="ltr">On Mon, Jun 18, 2018, 11:44 Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>> wrote:<br></div><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex" id="m_-5381933459114970021gmail_block_quote0">
<div link="blue" vlink="purple" lang="EN-GB">
<div class="m_-5381933459114970021m_8687049243264599630WordSection1">
<p class="MsoNormal"><span>Tamar<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>OK, the first thing I tried was this<u></u><u></u></span></p>
<ul style="margin-top:0cm" type="disc">
<li class="m_-5381933459114970021m_8687049243264599630MsoListParagraph" style="margin-left:0cm"><span>cd testsuite/tests/plugins<u></u><u></u></span></li><li class="m_-5381933459114970021m_8687049243264599630MsoListParagraph" style="margin-left:0cm"><span>make<u></u><u></u></span></li></ul>
<p class="MsoNormal"><span>Note no “-j”, so this is single threaded.<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>Output is below. Yes, fewer failures, so it does seem that many of the failures I see in a generic test suite run are to do with concurrency. So that’s Bug #1.<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>But even if Bug #1 was solved, I seem to get three failures that happen even in the absence of concurrent testing. This is Bug #2 (or maybe 2,3,4).<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>Happy to run more commands!<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="MsoNormal"><span>Simon<u></u><u></u></span></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>.../tests/plugins$ make<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>PYTHON="python3" "python3" ../../driver/runtests.py -e "ghc_compiler_always_flags='-<wbr>dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups -fdiagnostics-color=never
-fno-diagnostics-show-caret -dno-debug-output'" -e config.compiler_debugged=False -e ghc_with_native_codegen=1 -e config.have_vanilla=True -e config.have_dynamic=False -e config.have_profiling=False -e ghc_with_threaded_rts=1 -e ghc_with_dynamic_rts=0 -e config.have_interp=True
-e config.unregisterised=False -e config.have_gdb=False -e config.have_readelf=True -e config.ghc_dynamic_by_default=<wbr>False -e config.ghc_dynamic=False -e ghc_with_smp=1 -e ghc_with_llvm=0 -e windows=True -e darwin=False -e config.in_tree_compiler=True -e config.cleanup=True
-e config.local=True --rootdir=. --config-file=../../config/ghc -e 'config.confdir="../../config"<wbr>' -e 'config.platform="x86_64-<wbr>unknown-mingw32"' -e 'config.os="mingw32"' -e 'config.arch="x86_64"' -e 'config.wordsize="64"' -e 'config.timeout=int() or config.timeout'
-e 'config.exeext=".exe"' -e 'config.top="/c/code/HEAD/<wbr>testsuite"' --config 'compiler="/c/code/HEAD/<wbr>inplace/bin/ghc-stage2.exe"' --config 'ghc_pkg="/c/code/HEAD/<wbr>inplace/bin/ghc-pkg.exe"' --config 'haddock=' --config 'hp2ps="/c/code/HEAD/inplace/<wbr>bin/hp2ps.exe"'
--config 'hpc="/c/code/HEAD/inplace/<wbr>bin/hpc.exe"' --config 'gs="gs"' --config 'timeout_prog="../../timeout/<wbr>install-inplace/bin/timeout.<wbr>exe"' -e "config.stage=2" \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> \<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> <u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Timeout is 300<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Found 1 .T files...<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Beginning test run at Mon Jun 18 11:24:57 2018 GMTST<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>--- ./plugins09.run/plugins09.<wbr>stdout.normalised 2018-06-18 11:27:47.971987800 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>+++ ./plugins09.run/plugins09.run.<wbr>stdout.normalised 2018-06-18 11:27:47.972177400 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>@@ -1,9 +0,0 @@<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-parsePlugin(a,b)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: Prelude<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Float<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Base<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Types<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-typeCheckPlugin (rn)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-typeCheckPlugin (tc)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Integer.Type<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Natural<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>--- ./plugins11.run/plugins11.<wbr>stdout.normalised 2018-06-18 11:28:40.307222400 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>+++ ./plugins11.run/plugins11.run.<wbr>stdout.normalised 2018-06-18 11:28:40.307675400 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>@@ -1,9 +0,0 @@<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-parsePlugin()<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: Prelude<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Float<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Base<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Types<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-typeCheckPlugin (rn)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-typeCheckPlugin (tc)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Integer.Type<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-interfacePlugin: GHC.Natural<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>--- ./T11244.run/T11244.stderr.<wbr>normalised 2018-06-18 11:32:21.142334600 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>+++ ./T11244.run/T11244.run.<wbr>stderr.normalised 2018-06-18 11:32:21.145148100 +0100<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>@@ -1,4 +1,4 @@<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>-<command line>: Could not load module ‘RuleDefiningPlugin’<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>+<command line>: Could not find module ‘RuleDefiningPlugin’<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>It is a member of the hidden package ‘rule-defining-plugin-0.1’.<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>You can run ‘:set -package rule-defining-plugin’ to expose it.<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>(Note: this unloads all the modules in the current scope.)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>====> Scanning ./all.T<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins01(normal) 1 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins01.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins01 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins01.run" && $MAKE -s --no-print-directory plugins01
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins02(normal) 2 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins02.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins02 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins02.run" && "/c/code/HEAD/inplace/bin/ghc-<wbr>stage2.exe" -c plugins02.hs -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups -fdiagnostics-color=never
-fno-diagnostics-show-caret -dno-debug-output -package-db simple-plugin/pkg.plugins02/<wbr>local.package.conf -fplugin Simple.BadlyTypedPlugin -package simple-plugin -static<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins03(normal) 3 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins03.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins03 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins03.run" && "/c/code/HEAD/inplace/bin/ghc-<wbr>stage2.exe" -c plugins03.hs -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups -fdiagnostics-color=never
-fno-diagnostics-show-caret -dno-debug-output -package-db simple-plugin/pkg.plugins03/<wbr>local.package.conf -fplugin Simple.NonExistentPlugin -package simple-plugin<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins04(normal) 4 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins04.run" && "/c/code/HEAD/inplace/bin/ghc-<wbr>stage2.exe" --make plugins04 -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups -fdiagnostics-color=never
-fno-diagnostics-show-caret -dno-debug-output -package ghc -fplugin HomePackagePlugin<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins05(normal) 5 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins05.run" && "/c/code/HEAD/inplace/bin/ghc-<wbr>stage2.exe" --make -o plugins05 plugins05 -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups
-fdiagnostics-color=never -fno-diagnostics-show-caret -dno-debug-output -package ghc<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins05.run" && ./plugins05
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins07(normal) 7 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins07.run" && $MAKE -s --no-print-directory -C rule-defining-plugin package.plugins07 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins07.run" && $MAKE -s --no-print-directory plugins07
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins08(normal) 8 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins08.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins08 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins08.run" && $MAKE -s --no-print-directory plugins08
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins09(normal) 9 of 25 [0, 0, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins09.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins09 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins09.run" && $MAKE -s --no-print-directory plugins09
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Actual stdout output differs from expected:<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>diff -uw "./plugins09.run/plugins09.<wbr>stdout.normalised" "./plugins09.run/plugins09.<wbr>run.stdout.normalised"<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>*** unexpected failure for plugins09(normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins10(normal) 10 of 25 [0, 1, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins10.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins10 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins10.run" && $MAKE -s --no-print-directory plugins10
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins11(normal) 11 of 25 [0, 1, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins11.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins11 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins11.run" && $MAKE -s --no-print-directory plugins11
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Actual stdout output differs from expected:<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>diff -uw "./plugins11.run/plugins11.<wbr>stdout.normalised" "./plugins11.run/plugins11.<wbr>run.stdout.normalised"<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>*** unexpected failure for plugins11(normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins12(normal) 12 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins12.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins12 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins12.run" && $MAKE -s --no-print-directory plugins12
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins13(normal) 13 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins13.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins13 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins13.run" && $MAKE -s --no-print-directory plugins13
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins14(normal) 14 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins14.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins14 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins14.run" && $MAKE -s --no-print-directory plugins14
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugins15(normal) 15 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins15.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins15 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugins15.run" && $MAKE -s --no-print-directory plugins15
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T10420(normal) 16 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10420.run" && $MAKE -s --no-print-directory -C rule-defining-plugin package.T10420 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10420.run" && $MAKE -s --no-print-directory T10420
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T10294(normal) 17 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10294.run" && $MAKE -s --no-print-directory -C annotation-plugin package.T10294 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10294.run" && $MAKE -s --no-print-directory T10294
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T10294a(normal) 18 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10294a.run" && $MAKE -s --no-print-directory -C annotation-plugin package.T10294a TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T10294a.run" && $MAKE -s --no-print-directory T10294a
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> frontend01(normal) 19 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./frontend01.run" && $MAKE -s --no-print-directory frontend01
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T11244(normal) 20 of 25 [0, 2, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T11244.run" && $MAKE -s --no-print-directory -C rule-defining-plugin package.T11244 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T11244.run" && $MAKE -s --no-print-directory T11244
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Actual stderr output differs from expected:<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>diff -uw "./T11244.run/T11244.stderr.<wbr>normalised" "./T11244.run/T11244.run.<wbr>stderr.normalised"<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>*** unexpected failure for T11244(normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T12567a(normal) 21 of 25 [0, 3, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T12567a.run" && $MAKE -s --no-print-directory -C simple-plugin package.T12567a TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T12567a.run" && $MAKE -s --no-print-directory T12567a
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> T14335(normal) 22 of 25 [0, 3, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T14335.run" && $MAKE -s --no-print-directory -C simple-plugin package.plugins01 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./T14335.run" && "/c/code/HEAD/inplace/bin/ghc-<wbr>stage2.exe" -c T14335.hs -dcore-lint -dcmm-lint -no-user-package-db -rtsopts -fno-warn-missed-<wbr>specialisations -fshow-warning-groups -fdiagnostics-color=never
-fno-diagnostics-show-caret -dno-debug-output -package-db simple-plugin/pkg.plugins01/<wbr>local.package.conf -fplugin Simple.Plugin -fexternal-interpreter -package simple-plugin -static<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugin-recomp-pure(normal) 23 of 25 [0, 3, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-pure.run" && $MAKE -s --no-print-directory -C plugin-recomp package.plugins01 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-pure.run" && $MAKE -s --no-print-directory plugin-recomp-pure
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugin-recomp-impure(normal) 24 of 25 [0, 3, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-impure.run" && $MAKE -s --no-print-directory -C plugin-recomp package.plugins01 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-impure.run" && $MAKE -s --no-print-directory plugin-recomp-impure
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>=====> plugin-recomp-flags(normal) 25 of 25 [0, 3, 0]<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-flags.run" && $MAKE -s --no-print-directory -C plugin-recomp package.plugins01 TOP=/c/code/HEAD/testsuite<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>cd "./plugin-recomp-flags.run" && $MAKE -s --no-print-directory plugin-recomp-flags
<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Unexpected results from:<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>TEST="T11244 plugins09 plugins11"<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>SUMMARY for test run started at Mon Jun 18 11:24:57 2018 GMTST<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>0:11:18 spent to go through<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 25 total tests, which gave rise to<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 35 test cases, of which<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 11 were skipped<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 0 had missing libraries<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 19 expected passes<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 2 expected failures<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 0 caused framework failures<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 0 caused framework warnings<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 0 unexpected passes<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 3 unexpected failures<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> 0 unexpected stat failures<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>Unexpected failures:<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> plugins09.run plugins09 [bad stdout] (normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> plugins11.run plugins11 [bad stdout] (normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span> T11244.run T11244 [bad stderr] (normal)<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span><u></u> <u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>make: *** [../../mk/<a href="http://test.mk:329" target="_blank">test.mk:329</a>: test] Error 1<u></u><u></u></span></b></p>
<p class="m_-5381933459114970021m_8687049243264599630Code"><b><span>.../tests/plugins$<u></u><u></u></span></b></p>
<p class="MsoNormal"><span><u></u> <u></u></span></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Phyx <<a href="mailto:lonetiger@gmail.com" target="_blank">lonetiger@gmail.com</a>>
<br>
<b>Sent:</b> 13 June 2018 20:47</span></p></div></div></div></div></div><div link="blue" vlink="purple" lang="EN-GB"><div class="m_-5381933459114970021m_8687049243264599630WordSection1"><div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt"><div><div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm"><p class="MsoNormal"><span lang="EN-US"><br>
<b>To:</b> Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>><br>
<b>Cc:</b> <a href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a><br>
<b>Subject:</b> Re: Strace<u></u><u></u></span></p></div></div></div></div></div><div link="blue" vlink="purple" lang="EN-GB"><div class="m_-5381933459114970021m_8687049243264599630WordSection1"><div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
<div>
<p class="MsoNormal">Hi Simon,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<div>
<p class="MsoNormal">On Wed, Jun 13, 2018 at 5:24 PM, Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>> wrote:<u></u><u></u></p>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal">OK – so maybe the root cause is a framework failure – and indeed for the last few weeks I’ve seen<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952code">Framework failures:<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952code"> plugins/plugins07.run plugins07 [normal] (pre_cmd failed: 2)<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952code"> plugins/T10420.run T10420 [normal] (pre_cmd failed: 2)<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952code"> plugins/T11244.run T11244 [normal] (pre_cmd failed: 2)<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">I have just learned to live with these failures, because I knew you were working on making things better. But it sounds as if they are still taking place.<u></u><u></u></p>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">The commit I made should have reduced the amount of failing tests to 0. framework failures are always quite unusual.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">So:<u></u><u></u></p>
<ul type="disc">
<li class="MsoNormal">
Yes, please make it not happen by default<u></u><u></u></li></ul>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal">I've removed the code, if you update it should be gone. It was there and on by default because I was trying to debug failures on Harbormaster, I<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">realized a switch isn't very useful as I won't be able to toggle it for Harbormaster anyway.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<ul type="disc">
<li class="MsoNormal">
<u></u> <u></u></li><li class="MsoNormal">
If you don’t get these framework failures, can we work together to resolve them?<u></u><u></u></li></ul>
</div>
</div>
</blockquote>
<div>
<p class="MsoNormal">These don't happen for me nor on Harbormaster, try picking a test, e.g T10420
<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">run only that test to make sure it's not a threading issue:<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">make TEST=T10420 test -C testsuite/tests <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">If it still gives a framework error then do at the top level<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">make VERBOSE=3 TEST=T10420 test -C testsuite/tests<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">once it runs, the output should contain the command it ran as a pre_cmd, and the stdout and<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">stderr from the pre_cmd output. Could you then send the error?<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">if it doesn't show any of this, try<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">make CLEANP=0 VERBOSE=3 TEST= T10420 test -C testsuite/tests --trace
<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">and copy and paste the pre_cmd command, which should just replay the action it did.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
<div>
<p class="MsoNormal">Cheers,<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Tamar<u></u><u></u></p>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-right:0cm">
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Thanks<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Simon<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
<div style="border:none;border-left:solid blue 1.5pt;padding:0cm 0cm 0cm 4.0pt">
<div>
<div style="border:none;border-top:solid #e1e1e1 1.0pt;padding:3.0pt 0cm 0cm 0cm">
<p class="MsoNormal"><b><span lang="EN-US">From:</span></b><span lang="EN-US"> Phyx <<a href="mailto:lonetiger@gmail.com" target="_blank">lonetiger@gmail.com</a>>
<br>
<b>Sent:</b> 13 June 2018 17:19<br>
<b>To:</b> Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>><br>
<b>Cc:</b> <a href="mailto:ghc-devs@haskell.org" target="_blank">ghc-devs@haskell.org</a><br>
<b>Subject:</b> Re: Strace</span><u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<p class="MsoNormal">Hi Simon, <u></u><u></u></p>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">The strace is only supposed to run when the normal test pre_cmd fails.<u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">If it's running that often it means your tests are all failing during pre_cmd with a framework failure <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"><a href="https://git.haskell.org/ghc.git/blobdiff/4778cba1dbb6adf495930322d7f9e9db0af60d8f..60fb2b2160aa16194b74262f4df8fad5af171b0f:/testsuite/driver/testlib.py" target="_blank">https://git.haskell.org/ghc.<wbr>git/blobdiff/<wbr>4778cba1dbb6adf495930322d7f9e9<wbr>db0af60d8f..<wbr>60fb2b2160aa16194b74262f4df8fa<wbr>d5af171b0f:/testsuite/driver/<wbr>testlib.py</a><u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">But maybe I shouldn't turn this on my default. I'll pramaterize it when I get home. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal">Tamar. <u></u><u></u></p>
</div>
<div>
<p class="MsoNormal"> <u></u><u></u></p>
<div>
<div>
<p class="MsoNormal">On Wed, Jun 13, 2018, 17:09 Simon Peyton Jones <<a href="mailto:simonpj@microsoft.com" target="_blank">simonpj@microsoft.com</a>> wrote:<u></u><u></u></p>
</div>
<blockquote style="border:none;border-left:solid #cccccc 1.0pt;padding:0cm 0cm 0cm 6.0pt;margin-left:4.8pt;margin-top:5.0pt;margin-right:0cm;margin-bottom:5.0pt">
<div>
<div>
<p class="MsoNormal">Tamar<u></u><u></u></p>
<p class="MsoNormal">I’m getting
<b>megabytes</b> of output from ‘sh validate’ on windows. It looks like this<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 629 151745 [main] sh 2880 fhandler_base::fhaccess: returning 0<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 291 152036 [main] sh 2880 faccessat: returning 0<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">7757 159793 [main] sh 2880 fhandler_base_overlapped::<wbr>wait_overlapped: wfres 0, wores 1, bytes 7<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">179457 1608947 [main] make 11484 fhandler_base_overlapped::<wbr>wait_overlapped: wfres 0, wores 1, bytes 7<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 99 159892 [main] sh 2880 fhandler_base_overlapped::<wbr>wait_overlapped: normal write, 7 bytes ispipe() 1<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 180 1609127 [main] make 11484 fhandler_base_overlapped::<wbr>wait_overlapped: normal read, 7 bytes ispipe() 1<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 139 160031 [main] sh 2880 write: 7 = write(1, 0x6000396A0, 7)<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 142 1609269 [main] make 11484 fhandler_base::read: returning 7, binary mode<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 139 1609408 [main] make 11484 read: 7 = read(5, 0x60005B4B0, 7)<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> 136 1609544 [main] make 11484 read: read(5, 0x60005B4B7, 193) blocking<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">4693 164724 [main] sh 2880 set_signal_mask: setmask 0, newmask 80000, mask_bits 0<u></u><u></u></p>
<p class="MsoNormal">but with hundreds of thousands of lines. (I have not counted)<u></u><u></u></p>
<p class="MsoNormal">I believe that it may be the result of this line, earlier in the log<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">cd "/c/Users/simonpj/AppData/<wbr>Local/Temp/ghctest-8fa9s6rk/<wbr>test spaces/./plugins/plugins07.<wbr>run" &&
<b><span style="color:red">strace</span></b><span style="color:red"> </span>$MAKE -s --no-print-directory -C rule-defining-plugin package.plugins07 TOP=/c/code/HEAD/testsuite#<u></u><u></u></p>
<p class="MsoNormal">Note the strace.<u></u><u></u></p>
<p class="MsoNormal">That in turn was added in your commit<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">commit 60fb2b2160aa16194b74262f4df8fa<wbr>d5af171b0f<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">Author: Tamar Christina <<a href="mailto:tamar@zhox.com" target="_blank">tamar@zhox.com</a>><u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code">Date: Mon May 28 19:34:11 2018 +0100<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> <u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> Clean up Windows testsuite failures<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> <u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> Summary:<u></u><u></u></p>
<p class="m_-5381933459114970021m_8687049243264599630m1038731655912591952m-1763880775547741805code"> Another round and attempt at getting these down to 0.<u></u><u></u></p>
<p class="MsoNormal">Could you perhaps have made a mistake here? Currently validate is unusable.<u></u><u></u></p>
<p class="MsoNormal">Thanks!<u></u><u></u></p>
</div>
</div>
<div>
<div>
<p class="MsoNormal">Simon<u></u><u></u></p>
<p class="MsoNormal"> <u></u><u></u></p>
</div>
</div>
</blockquote>
</div>
</div>
</div>
</div>
</div>
</div>
</div>
</blockquote>
</div>
<p class="MsoNormal"><u></u> <u></u></p>
</div>
</div>
</div></div></div></blockquote></div>
</div></div>