diff options
Diffstat (limited to 'src/libsyntax_ext')
| -rw-r--r-- | src/libsyntax_ext/test.rs | 8 |
1 files changed, 7 insertions, 1 deletions
diff --git a/src/libsyntax_ext/test.rs b/src/libsyntax_ext/test.rs index be3485cfa7c..8ddfb1d9cba 100644 --- a/src/libsyntax_ext/test.rs +++ b/src/libsyntax_ext/test.rs @@ -49,7 +49,7 @@ pub fn expand_test_or_bench( // If we're not in test configuration, remove the annotated item if !cx.ecfg.should_test { return vec![]; } - let item = + let mut item = if let Annotatable::Item(i) = item { i } else { cx.parse_sess.span_diagnostic.span_fatal(item.span(), @@ -192,6 +192,12 @@ pub fn expand_test_or_bench( debug!("Synthetic test item:\n{}\n", pprust::item_to_string(&test_const)); + // Temporarily add another marker to the original item for error reporting + let marker2 = cx.attribute( + attr_sp, cx.meta_word(attr_sp, Symbol::intern("rustc_test_marker2")) + ); + item.attrs.push(marker2); + vec