-
Notifications
You must be signed in to change notification settings - Fork 13.3k
compiletest silently fails on a name-value directive with a known name but missing colon but does not report an error #123760
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
I think an actual ui test has this problem?
|
Wait if I change it to |
Well, the test “needs” the compile-flags because it's checking that cfg cc #123411 & rust/compiler/rustc_session/src/options.rs Line 1997 in b3bd705
|
Yeah, I talked to Saethlin, makes sense. It's just compiletest silently failing here is awful 😆 |
I briefly looked at this, the easy fix is trivial, but the error handling is entirely not maintainable and involves propagating a I think the directive parsing is long past due for a rework. The error handling needs to not rely on passing a |
compiletest expects that a name-value directive, like
//@ revisions: foo
, to have the colon:
rust/src/tools/compiletest/src/header.rs
Lines 1137 to 1146 in b14d8b2
If the name-value directive contains a known directive name like
revisions
but does not have the colon (i.e.//@ revisions foo
), then:revisions
parse_name_value_directive
expectsrevisions:
but only gotrevisions
, so parsing failsrevisions
directive namecompiletest should not silently fail here because it's very surprising and a pain to debug unless you know exactly what's wrong.
The text was updated successfully, but these errors were encountered: