From 01db9a46af72383811f39091be70e9721aaa159a Mon Sep 17 00:00:00 2001 From: Florian Hahn Date: Fri, 6 Feb 2015 16:51:47 +0100 Subject: [PATCH] Move compile-fail tests that are rejected by the parser to parse-fail --- mk/tests.mk | 3 +- src/grammar/testparser.py | 32 ++++++++++++------- .../array-old-syntax-1.rs | 0 ...ciated-types-project-from-hrtb-explicit.rs | 0 .../attr-bad-meta.rs | 0 .../{compile-fail => parse-fail}/bad-match.rs | 0 .../{compile-fail => parse-fail}/bad-name.rs | 0 .../better-expected.rs | 0 .../bind-struct-early-modifiers.rs | 0 .../byte-literals.rs | 0 .../byte-string-literals.rs | 0 .../circular_modules_hello.rs | 0 .../circular_modules_main.rs | 0 .../class-implements-bad-trait.rs | 0 .../column-offset-1-based.rs | 0 .../duplicate-visibility.rs | 0 .../empty-impl-semicolon.rs | 0 .../extern-expected-fn-or-brace.rs | 0 .../extern-foreign-crate.rs | 0 .../extern-no-fn.rs | 0 .../import-from-path.rs | 0 .../import-from-rename.rs | 0 .../import-glob-path.rs | 0 .../import-glob-rename.rs | 0 .../issue-10392-2.rs | 0 .../issue-10392.rs | 0 .../issue-10636-1.rs | 0 .../issue-10636-2.rs | 0 .../issue-14303-enum.rs | 0 .../issue-14303-fn-def.rs | 0 .../issue-14303-fncall.rs | 0 .../issue-14303-impl.rs | 0 .../issue-14303-path.rs | 0 .../issue-14303-struct.rs | 0 .../issue-14303-trait.rs | 0 .../issue-15914.rs | 0 .../issue-1655.rs | 0 .../issue-17904.rs | 0 .../issue-1802-1.rs | 0 .../issue-19096.rs | 0 .../issue-19398.rs | 0 .../issue-20711-2.rs | 0 .../issue-20711.rs | 0 .../issue-21153.rs | 0 .../issue-2354-1.rs | 0 .../issue-2354.rs | 0 .../issue-3036.rs | 0 .../issue-5806.rs | 0 .../issue-6610.rs | 0 .../keyword-abstract.rs | 0 .../keyword-do-as-identifier.rs | 0 .../keyword-final.rs | 0 .../keyword-mut-as-identifier.rs | 0 .../keyword-override.rs | 0 .../keyword-priv-as-identifier.rs | 0 .../keyword-ref-as-identifier.rs | 0 .../keyword-typeof.rs | 0 .../lex-bad-char-literals.rs | 0 .../lex-bad-token.rs | 0 .../macro-attribute.rs | 0 .../macro-bad-delimiter-ident.rs | 0 .../macro-keyword.rs | 0 .../macro-mismatched-delim-brace-paren.rs | 0 .../macro-mismatched-delim-paren-brace.rs | 0 .../macros-no-semicolon.rs | 0 .../match-arrows-block-then-binop.rs | 0 .../match-vec-invalid.rs | 0 .../mod_file_disambig.rs | 0 .../mod_file_not_exist.rs | 0 .../mod_file_not_owning.rs | 0 .../mod_file_with_path_attr.rs | 0 .../multiline-comment-line-tracking.rs | 0 .../multitrait.rs | 0 .../mut-patterns.rs | 0 .../new-unicode-escapes-1.rs | 0 .../new-unicode-escapes-2.rs | 0 .../new-unicode-escapes-3.rs | 0 .../new-unicode-escapes-4.rs | 0 .../not-a-pred.rs | 0 .../omitted-arg-in-item-fn.rs | 0 .../paamayim-nekudotayim.rs | 0 .../parenthesized-box-expr-message.rs | 0 .../pat-range-bad-dots.rs | 0 .../pat-ref-enum.rs | 0 .../{compile-fail => parse-fail}/range-3.rs | 0 .../{compile-fail => parse-fail}/range-4.rs | 0 .../raw-byte-string-eof.rs | 0 .../raw-byte-string-literals.rs | 0 .../raw-str-delim.rs | 0 .../raw-str-unbalanced.rs | 0 .../raw-str-unterminated.rs | 0 .../regions-infer-paramd-method.rs | 0 .../regions-out-of-scope-slice.rs | 0 .../regions-trait-2.rs | 0 .../regions-trait-3.rs | 0 .../removed-syntax-closure-lifetime.rs | 0 .../removed-syntax-enum-newtype.rs | 0 .../removed-syntax-extern-const.rs | 0 .../removed-syntax-field-let.rs | 0 .../removed-syntax-field-semicolon.rs | 0 .../removed-syntax-fixed-vec.rs | 0 .../removed-syntax-fn-pure.rs | 0 .../removed-syntax-fn-sigil.rs | 0 .../removed-syntax-larrow-init.rs | 0 .../removed-syntax-larrow-move.rs | 0 .../removed-syntax-mode.rs | 0 .../removed-syntax-mut-vec-expr.rs | 0 .../removed-syntax-mut-vec-ty.rs | 0 .../removed-syntax-ptr-lifetime.rs | 0 .../removed-syntax-record.rs | 0 .../removed-syntax-static-fn.rs | 0 .../removed-syntax-uniq-mut-expr.rs | 0 .../removed-syntax-uniq-mut-ty.rs | 0 .../removed-syntax-with-1.rs | 0 .../removed-syntax-with-2.rs | 0 .../reserved-be.rs | 0 .../struct-literal-in-for.rs | 0 .../struct-literal-in-if.rs | 0 .../struct-literal-in-match-discriminant.rs | 0 .../struct-literal-in-while.rs | 0 .../struct-no-fields-enumlike.rs | 0 .../struct-no-fields.rs | 0 .../trait-keyword.rs | 0 .../unbalanced-doublequote.rs | 0 .../unboxed-closure-sugar-used-on-struct-3.rs | 0 .../{compile-fail => parse-fail}/unsized.rs | 0 .../use-as-where-use-ends-with-mod-sep.rs | 0 .../use-ends-with-mod-sep.rs | 0 .../{compile-fail => parse-fail}/use-mod-4.rs | 0 .../variadic-ffi-1.rs | 0 .../variadic-ffi-3.rs | 0 .../variadic-ffi-4.rs | 0 132 files changed, 22 insertions(+), 13 deletions(-) rename src/test/{compile-fail => parse-fail}/array-old-syntax-1.rs (100%) rename src/test/{compile-fail => parse-fail}/associated-types-project-from-hrtb-explicit.rs (100%) rename src/test/{compile-fail => parse-fail}/attr-bad-meta.rs (100%) rename src/test/{compile-fail => parse-fail}/bad-match.rs (100%) rename src/test/{compile-fail => parse-fail}/bad-name.rs (100%) rename src/test/{compile-fail => parse-fail}/better-expected.rs (100%) rename src/test/{compile-fail => parse-fail}/bind-struct-early-modifiers.rs (100%) rename src/test/{compile-fail => parse-fail}/byte-literals.rs (100%) rename src/test/{compile-fail => parse-fail}/byte-string-literals.rs (100%) rename src/test/{compile-fail => parse-fail}/circular_modules_hello.rs (100%) rename src/test/{compile-fail => parse-fail}/circular_modules_main.rs (100%) rename src/test/{compile-fail => parse-fail}/class-implements-bad-trait.rs (100%) rename src/test/{compile-fail => parse-fail}/column-offset-1-based.rs (100%) rename src/test/{compile-fail => parse-fail}/duplicate-visibility.rs (100%) rename src/test/{compile-fail => parse-fail}/empty-impl-semicolon.rs (100%) rename src/test/{compile-fail => parse-fail}/extern-expected-fn-or-brace.rs (100%) rename src/test/{compile-fail => parse-fail}/extern-foreign-crate.rs (100%) rename src/test/{compile-fail => parse-fail}/extern-no-fn.rs (100%) rename src/test/{compile-fail => parse-fail}/import-from-path.rs (100%) rename src/test/{compile-fail => parse-fail}/import-from-rename.rs (100%) rename src/test/{compile-fail => parse-fail}/import-glob-path.rs (100%) rename src/test/{compile-fail => parse-fail}/import-glob-rename.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-10392-2.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-10392.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-10636-1.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-10636-2.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-enum.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-fn-def.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-fncall.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-impl.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-path.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-struct.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-14303-trait.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-15914.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-1655.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-17904.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-1802-1.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-19096.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-19398.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-20711-2.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-20711.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-21153.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-2354-1.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-2354.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-3036.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-5806.rs (100%) rename src/test/{compile-fail => parse-fail}/issue-6610.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-abstract.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-do-as-identifier.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-final.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-mut-as-identifier.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-override.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-priv-as-identifier.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-ref-as-identifier.rs (100%) rename src/test/{compile-fail => parse-fail}/keyword-typeof.rs (100%) rename src/test/{compile-fail => parse-fail}/lex-bad-char-literals.rs (100%) rename src/test/{compile-fail => parse-fail}/lex-bad-token.rs (100%) rename src/test/{compile-fail => parse-fail}/macro-attribute.rs (100%) rename src/test/{compile-fail => parse-fail}/macro-bad-delimiter-ident.rs (100%) rename src/test/{compile-fail => parse-fail}/macro-keyword.rs (100%) rename src/test/{compile-fail => parse-fail}/macro-mismatched-delim-brace-paren.rs (100%) rename src/test/{compile-fail => parse-fail}/macro-mismatched-delim-paren-brace.rs (100%) rename src/test/{compile-fail => parse-fail}/macros-no-semicolon.rs (100%) rename src/test/{compile-fail => parse-fail}/match-arrows-block-then-binop.rs (100%) rename src/test/{compile-fail => parse-fail}/match-vec-invalid.rs (100%) rename src/test/{compile-fail => parse-fail}/mod_file_disambig.rs (100%) rename src/test/{compile-fail => parse-fail}/mod_file_not_exist.rs (100%) rename src/test/{compile-fail => parse-fail}/mod_file_not_owning.rs (100%) rename src/test/{compile-fail => parse-fail}/mod_file_with_path_attr.rs (100%) rename src/test/{compile-fail => parse-fail}/multiline-comment-line-tracking.rs (100%) rename src/test/{compile-fail => parse-fail}/multitrait.rs (100%) rename src/test/{compile-fail => parse-fail}/mut-patterns.rs (100%) rename src/test/{compile-fail => parse-fail}/new-unicode-escapes-1.rs (100%) rename src/test/{compile-fail => parse-fail}/new-unicode-escapes-2.rs (100%) rename src/test/{compile-fail => parse-fail}/new-unicode-escapes-3.rs (100%) rename src/test/{compile-fail => parse-fail}/new-unicode-escapes-4.rs (100%) rename src/test/{compile-fail => parse-fail}/not-a-pred.rs (100%) rename src/test/{compile-fail => parse-fail}/omitted-arg-in-item-fn.rs (100%) rename src/test/{compile-fail => parse-fail}/paamayim-nekudotayim.rs (100%) rename src/test/{compile-fail => parse-fail}/parenthesized-box-expr-message.rs (100%) rename src/test/{compile-fail => parse-fail}/pat-range-bad-dots.rs (100%) rename src/test/{compile-fail => parse-fail}/pat-ref-enum.rs (100%) rename src/test/{compile-fail => parse-fail}/range-3.rs (100%) rename src/test/{compile-fail => parse-fail}/range-4.rs (100%) rename src/test/{compile-fail => parse-fail}/raw-byte-string-eof.rs (100%) rename src/test/{compile-fail => parse-fail}/raw-byte-string-literals.rs (100%) rename src/test/{compile-fail => parse-fail}/raw-str-delim.rs (100%) rename src/test/{compile-fail => parse-fail}/raw-str-unbalanced.rs (100%) rename src/test/{compile-fail => parse-fail}/raw-str-unterminated.rs (100%) rename src/test/{compile-fail => parse-fail}/regions-infer-paramd-method.rs (100%) rename src/test/{compile-fail => parse-fail}/regions-out-of-scope-slice.rs (100%) rename src/test/{compile-fail => parse-fail}/regions-trait-2.rs (100%) rename src/test/{compile-fail => parse-fail}/regions-trait-3.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-closure-lifetime.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-enum-newtype.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-extern-const.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-field-let.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-field-semicolon.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-fixed-vec.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-fn-pure.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-fn-sigil.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-larrow-init.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-larrow-move.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-mode.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-mut-vec-expr.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-mut-vec-ty.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-ptr-lifetime.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-record.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-static-fn.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-uniq-mut-expr.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-uniq-mut-ty.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-with-1.rs (100%) rename src/test/{compile-fail => parse-fail}/removed-syntax-with-2.rs (100%) rename src/test/{compile-fail => parse-fail}/reserved-be.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-literal-in-for.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-literal-in-if.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-literal-in-match-discriminant.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-literal-in-while.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-no-fields-enumlike.rs (100%) rename src/test/{compile-fail => parse-fail}/struct-no-fields.rs (100%) rename src/test/{compile-fail => parse-fail}/trait-keyword.rs (100%) rename src/test/{compile-fail => parse-fail}/unbalanced-doublequote.rs (100%) rename src/test/{compile-fail => parse-fail}/unboxed-closure-sugar-used-on-struct-3.rs (100%) rename src/test/{compile-fail => parse-fail}/unsized.rs (100%) rename src/test/{compile-fail => parse-fail}/use-as-where-use-ends-with-mod-sep.rs (100%) rename src/test/{compile-fail => parse-fail}/use-ends-with-mod-sep.rs (100%) rename src/test/{compile-fail => parse-fail}/use-mod-4.rs (100%) rename src/test/{compile-fail => parse-fail}/variadic-ffi-1.rs (100%) rename src/test/{compile-fail => parse-fail}/variadic-ffi-3.rs (100%) rename src/test/{compile-fail => parse-fail}/variadic-ffi-4.rs (100%) diff --git a/mk/tests.mk b/mk/tests.mk index 8728d816034..d8d77db1e02 100644 --- a/mk/tests.mk +++ b/mk/tests.mk @@ -452,6 +452,7 @@ RPASS_FULL_RS := $(wildcard $(S)src/test/run-pass-fulldeps/*.rs) CFAIL_FULL_RS := $(wildcard $(S)src/test/compile-fail-fulldeps/*.rs) RFAIL_RS := $(wildcard $(S)src/test/run-fail/*.rs) CFAIL_RS := $(wildcard $(S)src/test/compile-fail/*.rs) +PFAIL_RS := $(wildcard $(S)src/test/parse-fail/*.rs) BENCH_RS := $(wildcard $(S)src/test/bench/*.rs) PRETTY_RS := $(wildcard $(S)src/test/pretty/*.rs) DEBUGINFO_GDB_RS := $(wildcard $(S)src/test/debuginfo/*.rs) @@ -468,7 +469,7 @@ RPASS_VALGRIND_TESTS := $(RPASS_VALGRIND_RS) RPASS_FULL_TESTS := $(RPASS_FULL_RS) CFAIL_FULL_TESTS := $(CFAIL_FULL_RS) RFAIL_TESTS := $(RFAIL_RS) -CFAIL_TESTS := $(CFAIL_RS) +CFAIL_TESTS := $(CFAIL_RS) $(PFAIL_RS) BENCH_TESTS := $(BENCH_RS) PERF_TESTS := $(PERF_RS) PRETTY_TESTS := $(PRETTY_RS) diff --git a/src/grammar/testparser.py b/src/grammar/testparser.py index 16babd4194e..37be41b935f 100755 --- a/src/grammar/testparser.py +++ b/src/grammar/testparser.py @@ -35,34 +35,42 @@ for parser in args.parser: ok[parser] = 0 bad[parser] = [] devnull = open(os.devnull, 'w') -print "\n" +print("\n") for base, dirs, files in os.walk(args.source_dir[0]): for f in filter(lambda p: p.endswith('.rs'), files): p = os.path.join(base, f) - compile_fail = 'compile-fail' in p - ignore = any('ignore-test' in line or 'ignore-lexer-test' in line - for line in open(p).readlines()) - if compile_fail or ignore: + parse_fail = 'parse-fail' in p + if sys.version_info.major == 3: + lines = open(p, encoding='utf-8').readlines() + else: + lines = open(p).readlines() + if any('ignore-test' in line or 'ignore-lexer-test' in line for line in lines): continue total += 1 for parser in args.parser: if subprocess.call(parser, stdin=open(p), stderr=subprocess.STDOUT, stdout=devnull) == 0: - ok[parser] += 1 + if parse_fail: + bad[parser].append(p) + else: + ok[parser] += 1 else: - bad[parser].append(p) + if parse_fail: + ok[parser] += 1 + else: + bad[parser].append(p) parser_stats = ', '.join(['{}: {}'.format(parser, ok[parser]) for parser in args.parser]) sys.stdout.write("\033[K\r total: {}, {}, scanned {}" .format(total, os.path.relpath(parser_stats), os.path.relpath(p))) devnull.close() -print "\n" +print("\n") for parser in args.parser: filename = os.path.basename(parser) + '.bad' - print("writing {} files that failed to parse with {} to {}".format(len(bad[parser]), parser, filename)) + print("writing {} files that did not yield the correct result with {} to {}".format(len(bad[parser]), parser, filename)) with open(filename, "w") as f: - for p in bad[parser]: - f.write(p) - f.write("\n") + for p in bad[parser]: + f.write(p) + f.write("\n") diff --git a/src/test/compile-fail/array-old-syntax-1.rs b/src/test/parse-fail/array-old-syntax-1.rs similarity index 100% rename from src/test/compile-fail/array-old-syntax-1.rs rename to src/test/parse-fail/array-old-syntax-1.rs diff --git a/src/test/compile-fail/associated-types-project-from-hrtb-explicit.rs b/src/test/parse-fail/associated-types-project-from-hrtb-explicit.rs similarity index 100% rename from src/test/compile-fail/associated-types-project-from-hrtb-explicit.rs rename to src/test/parse-fail/associated-types-project-from-hrtb-explicit.rs diff --git a/src/test/compile-fail/attr-bad-meta.rs b/src/test/parse-fail/attr-bad-meta.rs similarity index 100% rename from src/test/compile-fail/attr-bad-meta.rs rename to src/test/parse-fail/attr-bad-meta.rs diff --git a/src/test/compile-fail/bad-match.rs b/src/test/parse-fail/bad-match.rs similarity index 100% rename from src/test/compile-fail/bad-match.rs rename to src/test/parse-fail/bad-match.rs diff --git a/src/test/compile-fail/bad-name.rs b/src/test/parse-fail/bad-name.rs similarity index 100% rename from src/test/compile-fail/bad-name.rs rename to src/test/parse-fail/bad-name.rs diff --git a/src/test/compile-fail/better-expected.rs b/src/test/parse-fail/better-expected.rs similarity index 100% rename from src/test/compile-fail/better-expected.rs rename to src/test/parse-fail/better-expected.rs diff --git a/src/test/compile-fail/bind-struct-early-modifiers.rs b/src/test/parse-fail/bind-struct-early-modifiers.rs similarity index 100% rename from src/test/compile-fail/bind-struct-early-modifiers.rs rename to src/test/parse-fail/bind-struct-early-modifiers.rs diff --git a/src/test/compile-fail/byte-literals.rs b/src/test/parse-fail/byte-literals.rs similarity index 100% rename from src/test/compile-fail/byte-literals.rs rename to src/test/parse-fail/byte-literals.rs diff --git a/src/test/compile-fail/byte-string-literals.rs b/src/test/parse-fail/byte-string-literals.rs similarity index 100% rename from src/test/compile-fail/byte-string-literals.rs rename to src/test/parse-fail/byte-string-literals.rs diff --git a/src/test/compile-fail/circular_modules_hello.rs b/src/test/parse-fail/circular_modules_hello.rs similarity index 100% rename from src/test/compile-fail/circular_modules_hello.rs rename to src/test/parse-fail/circular_modules_hello.rs diff --git a/src/test/compile-fail/circular_modules_main.rs b/src/test/parse-fail/circular_modules_main.rs similarity index 100% rename from src/test/compile-fail/circular_modules_main.rs rename to src/test/parse-fail/circular_modules_main.rs diff --git a/src/test/compile-fail/class-implements-bad-trait.rs b/src/test/parse-fail/class-implements-bad-trait.rs similarity index 100% rename from src/test/compile-fail/class-implements-bad-trait.rs rename to src/test/parse-fail/class-implements-bad-trait.rs diff --git a/src/test/compile-fail/column-offset-1-based.rs b/src/test/parse-fail/column-offset-1-based.rs similarity index 100% rename from src/test/compile-fail/column-offset-1-based.rs rename to src/test/parse-fail/column-offset-1-based.rs diff --git a/src/test/compile-fail/duplicate-visibility.rs b/src/test/parse-fail/duplicate-visibility.rs similarity index 100% rename from src/test/compile-fail/duplicate-visibility.rs rename to src/test/parse-fail/duplicate-visibility.rs diff --git a/src/test/compile-fail/empty-impl-semicolon.rs b/src/test/parse-fail/empty-impl-semicolon.rs similarity index 100% rename from src/test/compile-fail/empty-impl-semicolon.rs rename to src/test/parse-fail/empty-impl-semicolon.rs diff --git a/src/test/compile-fail/extern-expected-fn-or-brace.rs b/src/test/parse-fail/extern-expected-fn-or-brace.rs similarity index 100% rename from src/test/compile-fail/extern-expected-fn-or-brace.rs rename to src/test/parse-fail/extern-expected-fn-or-brace.rs diff --git a/src/test/compile-fail/extern-foreign-crate.rs b/src/test/parse-fail/extern-foreign-crate.rs similarity index 100% rename from src/test/compile-fail/extern-foreign-crate.rs rename to src/test/parse-fail/extern-foreign-crate.rs diff --git a/src/test/compile-fail/extern-no-fn.rs b/src/test/parse-fail/extern-no-fn.rs similarity index 100% rename from src/test/compile-fail/extern-no-fn.rs rename to src/test/parse-fail/extern-no-fn.rs diff --git a/src/test/compile-fail/import-from-path.rs b/src/test/parse-fail/import-from-path.rs similarity index 100% rename from src/test/compile-fail/import-from-path.rs rename to src/test/parse-fail/import-from-path.rs diff --git a/src/test/compile-fail/import-from-rename.rs b/src/test/parse-fail/import-from-rename.rs similarity index 100% rename from src/test/compile-fail/import-from-rename.rs rename to src/test/parse-fail/import-from-rename.rs diff --git a/src/test/compile-fail/import-glob-path.rs b/src/test/parse-fail/import-glob-path.rs similarity index 100% rename from src/test/compile-fail/import-glob-path.rs rename to src/test/parse-fail/import-glob-path.rs diff --git a/src/test/compile-fail/import-glob-rename.rs b/src/test/parse-fail/import-glob-rename.rs similarity index 100% rename from src/test/compile-fail/import-glob-rename.rs rename to src/test/parse-fail/import-glob-rename.rs diff --git a/src/test/compile-fail/issue-10392-2.rs b/src/test/parse-fail/issue-10392-2.rs similarity index 100% rename from src/test/compile-fail/issue-10392-2.rs rename to src/test/parse-fail/issue-10392-2.rs diff --git a/src/test/compile-fail/issue-10392.rs b/src/test/parse-fail/issue-10392.rs similarity index 100% rename from src/test/compile-fail/issue-10392.rs rename to src/test/parse-fail/issue-10392.rs diff --git a/src/test/compile-fail/issue-10636-1.rs b/src/test/parse-fail/issue-10636-1.rs similarity index 100% rename from src/test/compile-fail/issue-10636-1.rs rename to src/test/parse-fail/issue-10636-1.rs diff --git a/src/test/compile-fail/issue-10636-2.rs b/src/test/parse-fail/issue-10636-2.rs similarity index 100% rename from src/test/compile-fail/issue-10636-2.rs rename to src/test/parse-fail/issue-10636-2.rs diff --git a/src/test/compile-fail/issue-14303-enum.rs b/src/test/parse-fail/issue-14303-enum.rs similarity index 100% rename from src/test/compile-fail/issue-14303-enum.rs rename to src/test/parse-fail/issue-14303-enum.rs diff --git a/src/test/compile-fail/issue-14303-fn-def.rs b/src/test/parse-fail/issue-14303-fn-def.rs similarity index 100% rename from src/test/compile-fail/issue-14303-fn-def.rs rename to src/test/parse-fail/issue-14303-fn-def.rs diff --git a/src/test/compile-fail/issue-14303-fncall.rs b/src/test/parse-fail/issue-14303-fncall.rs similarity index 100% rename from src/test/compile-fail/issue-14303-fncall.rs rename to src/test/parse-fail/issue-14303-fncall.rs diff --git a/src/test/compile-fail/issue-14303-impl.rs b/src/test/parse-fail/issue-14303-impl.rs similarity index 100% rename from src/test/compile-fail/issue-14303-impl.rs rename to src/test/parse-fail/issue-14303-impl.rs diff --git a/src/test/compile-fail/issue-14303-path.rs b/src/test/parse-fail/issue-14303-path.rs similarity index 100% rename from src/test/compile-fail/issue-14303-path.rs rename to src/test/parse-fail/issue-14303-path.rs diff --git a/src/test/compile-fail/issue-14303-struct.rs b/src/test/parse-fail/issue-14303-struct.rs similarity index 100% rename from src/test/compile-fail/issue-14303-struct.rs rename to src/test/parse-fail/issue-14303-struct.rs diff --git a/src/test/compile-fail/issue-14303-trait.rs b/src/test/parse-fail/issue-14303-trait.rs similarity index 100% rename from src/test/compile-fail/issue-14303-trait.rs rename to src/test/parse-fail/issue-14303-trait.rs diff --git a/src/test/compile-fail/issue-15914.rs b/src/test/parse-fail/issue-15914.rs similarity index 100% rename from src/test/compile-fail/issue-15914.rs rename to src/test/parse-fail/issue-15914.rs diff --git a/src/test/compile-fail/issue-1655.rs b/src/test/parse-fail/issue-1655.rs similarity index 100% rename from src/test/compile-fail/issue-1655.rs rename to src/test/parse-fail/issue-1655.rs diff --git a/src/test/compile-fail/issue-17904.rs b/src/test/parse-fail/issue-17904.rs similarity index 100% rename from src/test/compile-fail/issue-17904.rs rename to src/test/parse-fail/issue-17904.rs diff --git a/src/test/compile-fail/issue-1802-1.rs b/src/test/parse-fail/issue-1802-1.rs similarity index 100% rename from src/test/compile-fail/issue-1802-1.rs rename to src/test/parse-fail/issue-1802-1.rs diff --git a/src/test/compile-fail/issue-19096.rs b/src/test/parse-fail/issue-19096.rs similarity index 100% rename from src/test/compile-fail/issue-19096.rs rename to src/test/parse-fail/issue-19096.rs diff --git a/src/test/compile-fail/issue-19398.rs b/src/test/parse-fail/issue-19398.rs similarity index 100% rename from src/test/compile-fail/issue-19398.rs rename to src/test/parse-fail/issue-19398.rs diff --git a/src/test/compile-fail/issue-20711-2.rs b/src/test/parse-fail/issue-20711-2.rs similarity index 100% rename from src/test/compile-fail/issue-20711-2.rs rename to src/test/parse-fail/issue-20711-2.rs diff --git a/src/test/compile-fail/issue-20711.rs b/src/test/parse-fail/issue-20711.rs similarity index 100% rename from src/test/compile-fail/issue-20711.rs rename to src/test/parse-fail/issue-20711.rs diff --git a/src/test/compile-fail/issue-21153.rs b/src/test/parse-fail/issue-21153.rs similarity index 100% rename from src/test/compile-fail/issue-21153.rs rename to src/test/parse-fail/issue-21153.rs diff --git a/src/test/compile-fail/issue-2354-1.rs b/src/test/parse-fail/issue-2354-1.rs similarity index 100% rename from src/test/compile-fail/issue-2354-1.rs rename to src/test/parse-fail/issue-2354-1.rs diff --git a/src/test/compile-fail/issue-2354.rs b/src/test/parse-fail/issue-2354.rs similarity index 100% rename from src/test/compile-fail/issue-2354.rs rename to src/test/parse-fail/issue-2354.rs diff --git a/src/test/compile-fail/issue-3036.rs b/src/test/parse-fail/issue-3036.rs similarity index 100% rename from src/test/compile-fail/issue-3036.rs rename to src/test/parse-fail/issue-3036.rs diff --git a/src/test/compile-fail/issue-5806.rs b/src/test/parse-fail/issue-5806.rs similarity index 100% rename from src/test/compile-fail/issue-5806.rs rename to src/test/parse-fail/issue-5806.rs diff --git a/src/test/compile-fail/issue-6610.rs b/src/test/parse-fail/issue-6610.rs similarity index 100% rename from src/test/compile-fail/issue-6610.rs rename to src/test/parse-fail/issue-6610.rs diff --git a/src/test/compile-fail/keyword-abstract.rs b/src/test/parse-fail/keyword-abstract.rs similarity index 100% rename from src/test/compile-fail/keyword-abstract.rs rename to src/test/parse-fail/keyword-abstract.rs diff --git a/src/test/compile-fail/keyword-do-as-identifier.rs b/src/test/parse-fail/keyword-do-as-identifier.rs similarity index 100% rename from src/test/compile-fail/keyword-do-as-identifier.rs rename to src/test/parse-fail/keyword-do-as-identifier.rs diff --git a/src/test/compile-fail/keyword-final.rs b/src/test/parse-fail/keyword-final.rs similarity index 100% rename from src/test/compile-fail/keyword-final.rs rename to src/test/parse-fail/keyword-final.rs diff --git a/src/test/compile-fail/keyword-mut-as-identifier.rs b/src/test/parse-fail/keyword-mut-as-identifier.rs similarity index 100% rename from src/test/compile-fail/keyword-mut-as-identifier.rs rename to src/test/parse-fail/keyword-mut-as-identifier.rs diff --git a/src/test/compile-fail/keyword-override.rs b/src/test/parse-fail/keyword-override.rs similarity index 100% rename from src/test/compile-fail/keyword-override.rs rename to src/test/parse-fail/keyword-override.rs diff --git a/src/test/compile-fail/keyword-priv-as-identifier.rs b/src/test/parse-fail/keyword-priv-as-identifier.rs similarity index 100% rename from src/test/compile-fail/keyword-priv-as-identifier.rs rename to src/test/parse-fail/keyword-priv-as-identifier.rs diff --git a/src/test/compile-fail/keyword-ref-as-identifier.rs b/src/test/parse-fail/keyword-ref-as-identifier.rs similarity index 100% rename from src/test/compile-fail/keyword-ref-as-identifier.rs rename to src/test/parse-fail/keyword-ref-as-identifier.rs diff --git a/src/test/compile-fail/keyword-typeof.rs b/src/test/parse-fail/keyword-typeof.rs similarity index 100% rename from src/test/compile-fail/keyword-typeof.rs rename to src/test/parse-fail/keyword-typeof.rs diff --git a/src/test/compile-fail/lex-bad-char-literals.rs b/src/test/parse-fail/lex-bad-char-literals.rs similarity index 100% rename from src/test/compile-fail/lex-bad-char-literals.rs rename to src/test/parse-fail/lex-bad-char-literals.rs diff --git a/src/test/compile-fail/lex-bad-token.rs b/src/test/parse-fail/lex-bad-token.rs similarity index 100% rename from src/test/compile-fail/lex-bad-token.rs rename to src/test/parse-fail/lex-bad-token.rs diff --git a/src/test/compile-fail/macro-attribute.rs b/src/test/parse-fail/macro-attribute.rs similarity index 100% rename from src/test/compile-fail/macro-attribute.rs rename to src/test/parse-fail/macro-attribute.rs diff --git a/src/test/compile-fail/macro-bad-delimiter-ident.rs b/src/test/parse-fail/macro-bad-delimiter-ident.rs similarity index 100% rename from src/test/compile-fail/macro-bad-delimiter-ident.rs rename to src/test/parse-fail/macro-bad-delimiter-ident.rs diff --git a/src/test/compile-fail/macro-keyword.rs b/src/test/parse-fail/macro-keyword.rs similarity index 100% rename from src/test/compile-fail/macro-keyword.rs rename to src/test/parse-fail/macro-keyword.rs diff --git a/src/test/compile-fail/macro-mismatched-delim-brace-paren.rs b/src/test/parse-fail/macro-mismatched-delim-brace-paren.rs similarity index 100% rename from src/test/compile-fail/macro-mismatched-delim-brace-paren.rs rename to src/test/parse-fail/macro-mismatched-delim-brace-paren.rs diff --git a/src/test/compile-fail/macro-mismatched-delim-paren-brace.rs b/src/test/parse-fail/macro-mismatched-delim-paren-brace.rs similarity index 100% rename from src/test/compile-fail/macro-mismatched-delim-paren-brace.rs rename to src/test/parse-fail/macro-mismatched-delim-paren-brace.rs diff --git a/src/test/compile-fail/macros-no-semicolon.rs b/src/test/parse-fail/macros-no-semicolon.rs similarity index 100% rename from src/test/compile-fail/macros-no-semicolon.rs rename to src/test/parse-fail/macros-no-semicolon.rs diff --git a/src/test/compile-fail/match-arrows-block-then-binop.rs b/src/test/parse-fail/match-arrows-block-then-binop.rs similarity index 100% rename from src/test/compile-fail/match-arrows-block-then-binop.rs rename to src/test/parse-fail/match-arrows-block-then-binop.rs diff --git a/src/test/compile-fail/match-vec-invalid.rs b/src/test/parse-fail/match-vec-invalid.rs similarity index 100% rename from src/test/compile-fail/match-vec-invalid.rs rename to src/test/parse-fail/match-vec-invalid.rs diff --git a/src/test/compile-fail/mod_file_disambig.rs b/src/test/parse-fail/mod_file_disambig.rs similarity index 100% rename from src/test/compile-fail/mod_file_disambig.rs rename to src/test/parse-fail/mod_file_disambig.rs diff --git a/src/test/compile-fail/mod_file_not_exist.rs b/src/test/parse-fail/mod_file_not_exist.rs similarity index 100% rename from src/test/compile-fail/mod_file_not_exist.rs rename to src/test/parse-fail/mod_file_not_exist.rs diff --git a/src/test/compile-fail/mod_file_not_owning.rs b/src/test/parse-fail/mod_file_not_owning.rs similarity index 100% rename from src/test/compile-fail/mod_file_not_owning.rs rename to src/test/parse-fail/mod_file_not_owning.rs diff --git a/src/test/compile-fail/mod_file_with_path_attr.rs b/src/test/parse-fail/mod_file_with_path_attr.rs similarity index 100% rename from src/test/compile-fail/mod_file_with_path_attr.rs rename to src/test/parse-fail/mod_file_with_path_attr.rs diff --git a/src/test/compile-fail/multiline-comment-line-tracking.rs b/src/test/parse-fail/multiline-comment-line-tracking.rs similarity index 100% rename from src/test/compile-fail/multiline-comment-line-tracking.rs rename to src/test/parse-fail/multiline-comment-line-tracking.rs diff --git a/src/test/compile-fail/multitrait.rs b/src/test/parse-fail/multitrait.rs similarity index 100% rename from src/test/compile-fail/multitrait.rs rename to src/test/parse-fail/multitrait.rs diff --git a/src/test/compile-fail/mut-patterns.rs b/src/test/parse-fail/mut-patterns.rs similarity index 100% rename from src/test/compile-fail/mut-patterns.rs rename to src/test/parse-fail/mut-patterns.rs diff --git a/src/test/compile-fail/new-unicode-escapes-1.rs b/src/test/parse-fail/new-unicode-escapes-1.rs similarity index 100% rename from src/test/compile-fail/new-unicode-escapes-1.rs rename to src/test/parse-fail/new-unicode-escapes-1.rs diff --git a/src/test/compile-fail/new-unicode-escapes-2.rs b/src/test/parse-fail/new-unicode-escapes-2.rs similarity index 100% rename from src/test/compile-fail/new-unicode-escapes-2.rs rename to src/test/parse-fail/new-unicode-escapes-2.rs diff --git a/src/test/compile-fail/new-unicode-escapes-3.rs b/src/test/parse-fail/new-unicode-escapes-3.rs similarity index 100% rename from src/test/compile-fail/new-unicode-escapes-3.rs rename to src/test/parse-fail/new-unicode-escapes-3.rs diff --git a/src/test/compile-fail/new-unicode-escapes-4.rs b/src/test/parse-fail/new-unicode-escapes-4.rs similarity index 100% rename from src/test/compile-fail/new-unicode-escapes-4.rs rename to src/test/parse-fail/new-unicode-escapes-4.rs diff --git a/src/test/compile-fail/not-a-pred.rs b/src/test/parse-fail/not-a-pred.rs similarity index 100% rename from src/test/compile-fail/not-a-pred.rs rename to src/test/parse-fail/not-a-pred.rs diff --git a/src/test/compile-fail/omitted-arg-in-item-fn.rs b/src/test/parse-fail/omitted-arg-in-item-fn.rs similarity index 100% rename from src/test/compile-fail/omitted-arg-in-item-fn.rs rename to src/test/parse-fail/omitted-arg-in-item-fn.rs diff --git a/src/test/compile-fail/paamayim-nekudotayim.rs b/src/test/parse-fail/paamayim-nekudotayim.rs similarity index 100% rename from src/test/compile-fail/paamayim-nekudotayim.rs rename to src/test/parse-fail/paamayim-nekudotayim.rs diff --git a/src/test/compile-fail/parenthesized-box-expr-message.rs b/src/test/parse-fail/parenthesized-box-expr-message.rs similarity index 100% rename from src/test/compile-fail/parenthesized-box-expr-message.rs rename to src/test/parse-fail/parenthesized-box-expr-message.rs diff --git a/src/test/compile-fail/pat-range-bad-dots.rs b/src/test/parse-fail/pat-range-bad-dots.rs similarity index 100% rename from src/test/compile-fail/pat-range-bad-dots.rs rename to src/test/parse-fail/pat-range-bad-dots.rs diff --git a/src/test/compile-fail/pat-ref-enum.rs b/src/test/parse-fail/pat-ref-enum.rs similarity index 100% rename from src/test/compile-fail/pat-ref-enum.rs rename to src/test/parse-fail/pat-ref-enum.rs diff --git a/src/test/compile-fail/range-3.rs b/src/test/parse-fail/range-3.rs similarity index 100% rename from src/test/compile-fail/range-3.rs rename to src/test/parse-fail/range-3.rs diff --git a/src/test/compile-fail/range-4.rs b/src/test/parse-fail/range-4.rs similarity index 100% rename from src/test/compile-fail/range-4.rs rename to src/test/parse-fail/range-4.rs diff --git a/src/test/compile-fail/raw-byte-string-eof.rs b/src/test/parse-fail/raw-byte-string-eof.rs similarity index 100% rename from src/test/compile-fail/raw-byte-string-eof.rs rename to src/test/parse-fail/raw-byte-string-eof.rs diff --git a/src/test/compile-fail/raw-byte-string-literals.rs b/src/test/parse-fail/raw-byte-string-literals.rs similarity index 100% rename from src/test/compile-fail/raw-byte-string-literals.rs rename to src/test/parse-fail/raw-byte-string-literals.rs diff --git a/src/test/compile-fail/raw-str-delim.rs b/src/test/parse-fail/raw-str-delim.rs similarity index 100% rename from src/test/compile-fail/raw-str-delim.rs rename to src/test/parse-fail/raw-str-delim.rs diff --git a/src/test/compile-fail/raw-str-unbalanced.rs b/src/test/parse-fail/raw-str-unbalanced.rs similarity index 100% rename from src/test/compile-fail/raw-str-unbalanced.rs rename to src/test/parse-fail/raw-str-unbalanced.rs diff --git a/src/test/compile-fail/raw-str-unterminated.rs b/src/test/parse-fail/raw-str-unterminated.rs similarity index 100% rename from src/test/compile-fail/raw-str-unterminated.rs rename to src/test/parse-fail/raw-str-unterminated.rs diff --git a/src/test/compile-fail/regions-infer-paramd-method.rs b/src/test/parse-fail/regions-infer-paramd-method.rs similarity index 100% rename from src/test/compile-fail/regions-infer-paramd-method.rs rename to src/test/parse-fail/regions-infer-paramd-method.rs diff --git a/src/test/compile-fail/regions-out-of-scope-slice.rs b/src/test/parse-fail/regions-out-of-scope-slice.rs similarity index 100% rename from src/test/compile-fail/regions-out-of-scope-slice.rs rename to src/test/parse-fail/regions-out-of-scope-slice.rs diff --git a/src/test/compile-fail/regions-trait-2.rs b/src/test/parse-fail/regions-trait-2.rs similarity index 100% rename from src/test/compile-fail/regions-trait-2.rs rename to src/test/parse-fail/regions-trait-2.rs diff --git a/src/test/compile-fail/regions-trait-3.rs b/src/test/parse-fail/regions-trait-3.rs similarity index 100% rename from src/test/compile-fail/regions-trait-3.rs rename to src/test/parse-fail/regions-trait-3.rs diff --git a/src/test/compile-fail/removed-syntax-closure-lifetime.rs b/src/test/parse-fail/removed-syntax-closure-lifetime.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-closure-lifetime.rs rename to src/test/parse-fail/removed-syntax-closure-lifetime.rs diff --git a/src/test/compile-fail/removed-syntax-enum-newtype.rs b/src/test/parse-fail/removed-syntax-enum-newtype.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-enum-newtype.rs rename to src/test/parse-fail/removed-syntax-enum-newtype.rs diff --git a/src/test/compile-fail/removed-syntax-extern-const.rs b/src/test/parse-fail/removed-syntax-extern-const.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-extern-const.rs rename to src/test/parse-fail/removed-syntax-extern-const.rs diff --git a/src/test/compile-fail/removed-syntax-field-let.rs b/src/test/parse-fail/removed-syntax-field-let.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-field-let.rs rename to src/test/parse-fail/removed-syntax-field-let.rs diff --git a/src/test/compile-fail/removed-syntax-field-semicolon.rs b/src/test/parse-fail/removed-syntax-field-semicolon.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-field-semicolon.rs rename to src/test/parse-fail/removed-syntax-field-semicolon.rs diff --git a/src/test/compile-fail/removed-syntax-fixed-vec.rs b/src/test/parse-fail/removed-syntax-fixed-vec.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-fixed-vec.rs rename to src/test/parse-fail/removed-syntax-fixed-vec.rs diff --git a/src/test/compile-fail/removed-syntax-fn-pure.rs b/src/test/parse-fail/removed-syntax-fn-pure.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-fn-pure.rs rename to src/test/parse-fail/removed-syntax-fn-pure.rs diff --git a/src/test/compile-fail/removed-syntax-fn-sigil.rs b/src/test/parse-fail/removed-syntax-fn-sigil.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-fn-sigil.rs rename to src/test/parse-fail/removed-syntax-fn-sigil.rs diff --git a/src/test/compile-fail/removed-syntax-larrow-init.rs b/src/test/parse-fail/removed-syntax-larrow-init.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-larrow-init.rs rename to src/test/parse-fail/removed-syntax-larrow-init.rs diff --git a/src/test/compile-fail/removed-syntax-larrow-move.rs b/src/test/parse-fail/removed-syntax-larrow-move.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-larrow-move.rs rename to src/test/parse-fail/removed-syntax-larrow-move.rs diff --git a/src/test/compile-fail/removed-syntax-mode.rs b/src/test/parse-fail/removed-syntax-mode.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-mode.rs rename to src/test/parse-fail/removed-syntax-mode.rs diff --git a/src/test/compile-fail/removed-syntax-mut-vec-expr.rs b/src/test/parse-fail/removed-syntax-mut-vec-expr.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-mut-vec-expr.rs rename to src/test/parse-fail/removed-syntax-mut-vec-expr.rs diff --git a/src/test/compile-fail/removed-syntax-mut-vec-ty.rs b/src/test/parse-fail/removed-syntax-mut-vec-ty.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-mut-vec-ty.rs rename to src/test/parse-fail/removed-syntax-mut-vec-ty.rs diff --git a/src/test/compile-fail/removed-syntax-ptr-lifetime.rs b/src/test/parse-fail/removed-syntax-ptr-lifetime.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-ptr-lifetime.rs rename to src/test/parse-fail/removed-syntax-ptr-lifetime.rs diff --git a/src/test/compile-fail/removed-syntax-record.rs b/src/test/parse-fail/removed-syntax-record.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-record.rs rename to src/test/parse-fail/removed-syntax-record.rs diff --git a/src/test/compile-fail/removed-syntax-static-fn.rs b/src/test/parse-fail/removed-syntax-static-fn.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-static-fn.rs rename to src/test/parse-fail/removed-syntax-static-fn.rs diff --git a/src/test/compile-fail/removed-syntax-uniq-mut-expr.rs b/src/test/parse-fail/removed-syntax-uniq-mut-expr.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-uniq-mut-expr.rs rename to src/test/parse-fail/removed-syntax-uniq-mut-expr.rs diff --git a/src/test/compile-fail/removed-syntax-uniq-mut-ty.rs b/src/test/parse-fail/removed-syntax-uniq-mut-ty.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-uniq-mut-ty.rs rename to src/test/parse-fail/removed-syntax-uniq-mut-ty.rs diff --git a/src/test/compile-fail/removed-syntax-with-1.rs b/src/test/parse-fail/removed-syntax-with-1.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-with-1.rs rename to src/test/parse-fail/removed-syntax-with-1.rs diff --git a/src/test/compile-fail/removed-syntax-with-2.rs b/src/test/parse-fail/removed-syntax-with-2.rs similarity index 100% rename from src/test/compile-fail/removed-syntax-with-2.rs rename to src/test/parse-fail/removed-syntax-with-2.rs diff --git a/src/test/compile-fail/reserved-be.rs b/src/test/parse-fail/reserved-be.rs similarity index 100% rename from src/test/compile-fail/reserved-be.rs rename to src/test/parse-fail/reserved-be.rs diff --git a/src/test/compile-fail/struct-literal-in-for.rs b/src/test/parse-fail/struct-literal-in-for.rs similarity index 100% rename from src/test/compile-fail/struct-literal-in-for.rs rename to src/test/parse-fail/struct-literal-in-for.rs diff --git a/src/test/compile-fail/struct-literal-in-if.rs b/src/test/parse-fail/struct-literal-in-if.rs similarity index 100% rename from src/test/compile-fail/struct-literal-in-if.rs rename to src/test/parse-fail/struct-literal-in-if.rs diff --git a/src/test/compile-fail/struct-literal-in-match-discriminant.rs b/src/test/parse-fail/struct-literal-in-match-discriminant.rs similarity index 100% rename from src/test/compile-fail/struct-literal-in-match-discriminant.rs rename to src/test/parse-fail/struct-literal-in-match-discriminant.rs diff --git a/src/test/compile-fail/struct-literal-in-while.rs b/src/test/parse-fail/struct-literal-in-while.rs similarity index 100% rename from src/test/compile-fail/struct-literal-in-while.rs rename to src/test/parse-fail/struct-literal-in-while.rs diff --git a/src/test/compile-fail/struct-no-fields-enumlike.rs b/src/test/parse-fail/struct-no-fields-enumlike.rs similarity index 100% rename from src/test/compile-fail/struct-no-fields-enumlike.rs rename to src/test/parse-fail/struct-no-fields-enumlike.rs diff --git a/src/test/compile-fail/struct-no-fields.rs b/src/test/parse-fail/struct-no-fields.rs similarity index 100% rename from src/test/compile-fail/struct-no-fields.rs rename to src/test/parse-fail/struct-no-fields.rs diff --git a/src/test/compile-fail/trait-keyword.rs b/src/test/parse-fail/trait-keyword.rs similarity index 100% rename from src/test/compile-fail/trait-keyword.rs rename to src/test/parse-fail/trait-keyword.rs diff --git a/src/test/compile-fail/unbalanced-doublequote.rs b/src/test/parse-fail/unbalanced-doublequote.rs similarity index 100% rename from src/test/compile-fail/unbalanced-doublequote.rs rename to src/test/parse-fail/unbalanced-doublequote.rs diff --git a/src/test/compile-fail/unboxed-closure-sugar-used-on-struct-3.rs b/src/test/parse-fail/unboxed-closure-sugar-used-on-struct-3.rs similarity index 100% rename from src/test/compile-fail/unboxed-closure-sugar-used-on-struct-3.rs rename to src/test/parse-fail/unboxed-closure-sugar-used-on-struct-3.rs diff --git a/src/test/compile-fail/unsized.rs b/src/test/parse-fail/unsized.rs similarity index 100% rename from src/test/compile-fail/unsized.rs rename to src/test/parse-fail/unsized.rs diff --git a/src/test/compile-fail/use-as-where-use-ends-with-mod-sep.rs b/src/test/parse-fail/use-as-where-use-ends-with-mod-sep.rs similarity index 100% rename from src/test/compile-fail/use-as-where-use-ends-with-mod-sep.rs rename to src/test/parse-fail/use-as-where-use-ends-with-mod-sep.rs diff --git a/src/test/compile-fail/use-ends-with-mod-sep.rs b/src/test/parse-fail/use-ends-with-mod-sep.rs similarity index 100% rename from src/test/compile-fail/use-ends-with-mod-sep.rs rename to src/test/parse-fail/use-ends-with-mod-sep.rs diff --git a/src/test/compile-fail/use-mod-4.rs b/src/test/parse-fail/use-mod-4.rs similarity index 100% rename from src/test/compile-fail/use-mod-4.rs rename to src/test/parse-fail/use-mod-4.rs diff --git a/src/test/compile-fail/variadic-ffi-1.rs b/src/test/parse-fail/variadic-ffi-1.rs similarity index 100% rename from src/test/compile-fail/variadic-ffi-1.rs rename to src/test/parse-fail/variadic-ffi-1.rs diff --git a/src/test/compile-fail/variadic-ffi-3.rs b/src/test/parse-fail/variadic-ffi-3.rs similarity index 100% rename from src/test/compile-fail/variadic-ffi-3.rs rename to src/test/parse-fail/variadic-ffi-3.rs diff --git a/src/test/compile-fail/variadic-ffi-4.rs b/src/test/parse-fail/variadic-ffi-4.rs similarity index 100% rename from src/test/compile-fail/variadic-ffi-4.rs rename to src/test/parse-fail/variadic-ffi-4.rs