[LLVMdev] Problem with regression tests using stderr
Dan Gohman
djg at cray.com
Tue Nov 20 08:22:00 PST 2007
I was attempting to write a test that involves grepping though the
stderr produced by opt -analyze, but found that my test was passing
even before I fixed the bug I was writing the test for!
I found that this one-line sure-fail test:
; RUN: echo hi |& false
passes. I also tried 2>&1, because I've seen some tests do that,
though that doesn't appear to work in this context either. It didn't
seem to create a file nameed &1 though, as the LLVM test-writing
documentation says.
After some investigation, I believe the problem is due to the regexp
on this line in test/lib/llvm.exp:
} elseif {[regexp {RUN: *([^&]+)(&&)?} $line match oneline suffix]} {
I don't understand what this is trying to do. What is intended by
the special handling of && here?
I found only one test that uses && on a RUN line,
test/CodeGen/X86/2007-07-03-GR64ToVR64.ll, and it's not clear to
me what it's doing there.
Dan
--
Dan Gohman, Cray Inc.
More information about the llvm-dev
mailing list