tree: 59c4eafff0805ac397dac0dbc29413e509162c34 [path history] [tgz]
  1. abi/
  2. alloc-error/
  3. allocator/
  4. annotate-snippet/
  5. anon-params/
  6. argfile/
  7. argument-suggestions/
  8. array-slice-vec/
  9. asm/
  10. associated-consts/
  11. associated-inherent-types/
  12. associated-item/
  13. associated-type-bounds/
  14. associated-types/
  15. async-await/
  16. attributes/
  17. auto-traits/
  18. autodiff/
  19. autoref-autoderef/
  20. auxiliary/
  21. backtrace/
  22. bench/
  23. binding/
  24. binop/
  25. blind/
  26. block-result/
  27. borrowck/
  28. box/
  29. btreemap/
  30. builtin-superkinds/
  31. c-variadic/
  32. cast/
  33. cfg/
  34. check-cfg/
  35. closure-expected-type/
  36. closure_context/
  37. closures/
  38. cmse-nonsecure/
  39. codegen/
  40. codemap_tests/
  41. coercion/
  42. coherence/
  43. coinduction/
  44. command/
  45. compare-method/
  46. compiletest-self-test/
  47. conditional-compilation/
  48. confuse-field-and-method/
  49. const-generics/
  50. const-ptr/
  51. const_prop/
  52. consts/
  53. coroutine/
  54. coverage-attr/
  55. crate-loading/
  56. cross/
  57. cross-crate/
  58. custom_test_frameworks/
  59. cycle-trait/
  60. debuginfo/
  61. definition-reachable/
  62. delegation/
  63. dep-graph/
  64. deployment-target/
  65. deprecation/
  66. deref-patterns/
  67. derived-errors/
  68. derives/
  69. deriving/
  70. dest-prop/
  71. destructuring-assignment/
  72. diagnostic-flags/
  73. diagnostic-width/
  74. diagnostic_namespace/
  75. did_you_mean/
  76. directory_ownership/
  77. disallowed-deconstructing/
  78. dollar-crate/
  79. drop/
  80. drop-bounds/
  81. dropck/
  82. dst/
  83. duplicate/
  84. dyn-compatibility/
  85. dyn-drop/
  86. dyn-keyword/
  87. dyn-star/
  88. dynamically-sized-types/
  89. editions/
  90. empty/
  91. entry-point/
  92. enum/
  93. enum-discriminant/
  94. env-macro/
  95. error-codes/
  96. error-emitter/
  97. errors/
  98. explicit/
  99. explicit-tail-calls/
  100. expr/
  101. extern/
  102. extern-flag/
  103. feature-gates/
  104. ffi-attrs/
  105. float/
  106. fmt/
  107. fn/
  108. fn-main/
  109. for/
  110. for-loop-while/
  111. foreign/
  112. fuel/
  113. fully-qualified-type/
  114. function-pointer/
  115. functional-struct-update/
  116. functions-closures/
  117. generic-associated-types/
  118. generic-const-items/
  119. generics/
  120. half-open-range-patterns/
  121. hashmap/
  122. hello_world/
  123. higher-ranked/
  124. hygiene/
  125. illegal-sized-bound/
  126. impl-header-lifetime-elision/
  127. impl-trait/
  128. implied-bounds/
  129. imports/
  130. include-macros/
  131. incoherent-inherent-impls/
  132. indexing/
  133. inference/
  134. infinite/
  135. inherent-impls-overlap-check/
  136. inline-const/
  137. instrument-coverage/
  138. instrument-xray/
  139. interior-mutability/
  140. internal/
  141. internal-lints/
  142. intrinsics/
  143. invalid/
  144. invalid-compile-flags/
  145. invalid-module-declaration/
  146. invalid-self-argument/
  147. io-checks/
  148. issues/
  149. iterators/
  150. json/
  151. keyword/
  152. kindck/
  153. label/
  154. lang-items/
  155. late-bound-lifetimes/
  156. layout/
  157. lazy-type-alias/
  158. lazy-type-alias-impl-trait/
  159. let-else/
  160. lexer/
  161. lifetimes/
  162. limits/
  163. linkage-attr/
  164. lint/
  165. liveness/
  166. loops/
  167. lowering/
  168. lto/
  169. lub-glb/
  170. macro_backtrace/
  171. macros/
  172. malformed/
  173. manual/
  174. marker_trait_attr/
  175. match/
  176. meta/
  177. methods/
  178. mir/
  179. mir-dataflow/
  180. mismatched_types/
  181. missing/
  182. missing-trait-bounds/
  183. missing_non_modrs_mod/
  184. modules/
  185. modules_and_files_visibility/
  186. moves/
  187. mut/
  188. namespace/
  189. native-library-link-flags/
  190. never_type/
  191. nll/
  192. no_std/
  193. non_modrs_mods/
  194. non_modrs_mods_and_inline_mods/
  195. not-panic/
  196. numbers-arithmetic/
  197. numeric/
  198. object-lifetime/
  199. obsolete-in-place/
  200. offset-of/
  201. on-unimplemented/
  202. operator-recovery/
  203. or-patterns/
  204. overloaded/
  205. packed/
  206. panic-handler/
  207. panic-runtime/
  208. panics/
  209. parallel-rustc/
  210. parser/
  211. patchable-function-entry/
  212. pattern/
  213. pin-macro/
  214. polymorphization/
  215. precondition-checks/
  216. print_type_sizes/
  217. privacy/
  218. proc-macro/
  219. process/
  220. process-termination/
  221. ptr_ops/
  222. pub/
  223. qualified/
  224. query-system/
  225. range/
  226. raw-ref-op/
  227. reachable/
  228. recursion/
  229. recursion_limit/
  230. regions/
  231. repeat-expr/
  232. repr/
  233. reserved/
  234. resolve/
  235. return/
  236. rfcs/
  237. rmeta/
  238. runtime/
  239. rust-2018/
  240. rust-2021/
  241. rust-2024/
  242. rustc-env/
  243. rustdoc/
  244. sanitizer/
  245. self/
  246. sepcomp/
  247. shadowed/
  248. shell-argfiles/
  249. simd/
  250. single-use-lifetime/
  251. sized/
  252. span/
  253. specialization/
  254. stability-attribute/
  255. stable-mir-print/
  256. stack-protector/
  257. static/
  258. statics/
  259. stats/
  260. std/
  261. stdlib-unit-tests/
  262. str/
  263. structs/
  264. structs-enums/
  265. suggestions/
  266. svh/
  267. symbol-mangling-version/
  268. symbol-names/
  269. sync/
  270. target-feature/
  271. test-attrs/
  272. thir-print/
  273. thread-local/
  274. threads-sendsync/
  275. tool-attributes/
  276. track-diagnostics/
  277. trait-bounds/
  278. traits/
  279. transmutability/
  280. transmute/
  281. treat-err-as-bug/
  282. trivial-bounds/
  283. try-block/
  284. try-trait/
  285. tuple/
  286. type/
  287. type-alias/
  288. type-alias-enum-variants/
  289. type-alias-impl-trait/
  290. type-inference/
  291. typeck/
  292. typeof/
  293. ufcs/
  294. unboxed-closures/
  295. underscore-imports/
  296. underscore-lifetime/
  297. uniform-paths/
  298. uninhabited/
  299. union/
  300. unknown-unstable-lints/
  301. unop/
  302. unpretty/
  303. unresolved/
  304. unsafe/
  305. unsized/
  306. unsized-locals/
  307. unused-crate-deps/
  308. unwind-abis/
  309. use/
  310. variance/
  311. variants/
  312. version/
  313. warnings/
  314. wasm/
  315. wf/
  316. where-clauses/
  317. while/
  318. windows-subsystem/
  319. zero-sized/
  320. .gitattributes
  321. alias-uninit-value.rs
  322. allow-non-lint-warnings.rs
  323. anonymous-higher-ranked-lifetime.rs
  324. anonymous-higher-ranked-lifetime.stderr
  325. artificial-block.rs
  326. as-precedence.rs
  327. assign-assign.rs
  328. assign-imm-local-twice.rs
  329. assign-imm-local-twice.stderr
  330. assoc-lang-items.rs
  331. assoc-lang-items.stderr
  332. assoc-oddities-3.rs
  333. associated-path-shl.rs
  334. associated-path-shl.stderr
  335. atomic-from-mut-not-available.rs
  336. atomic-from-mut-not-available.stderr
  337. attempted-access-non-fatal.rs
  338. attempted-access-non-fatal.stderr
  339. attr-bad-crate-attr.rs
  340. attr-bad-crate-attr.stderr
  341. attr-shebang.rs
  342. attr-start.rs
  343. attr-usage-inline.rs
  344. attr-usage-inline.stderr
  345. attrs-resolution-errors.rs
  346. attrs-resolution-errors.stderr
  347. attrs-resolution.rs
  348. augmented-assignments-feature-gate-cross.rs
  349. augmented-assignments-rpass.rs
  350. augmented-assignments.rs
  351. augmented-assignments.stderr
  352. auto-instantiate.rs
  353. auto-ref-slice-plus-ref.rs
  354. auto-ref-slice-plus-ref.stderr
  355. autoderef-full-lval.rs
  356. autoderef-full-lval.stderr
  357. bare-fn-implements-fn-mut.rs
  358. bare-static-string.rs
  359. big-literals.rs
  360. bind-by-move.rs
  361. bitwise.rs
  362. bogus-tag.rs
  363. bogus-tag.stderr
  364. borrow-by-val-method-receiver.rs
  365. bounds-lifetime.rs
  366. bounds-lifetime.stderr
  367. break-diverging-value.rs
  368. break-diverging-value.stderr
  369. builtin-clone-unwind.rs
  370. can-copy-pod.rs
  371. cancel-clean-via-immediate-rvalue-ref.rs
  372. cannot-mutate-captured-non-mut-var.rs
  373. cannot-mutate-captured-non-mut-var.stderr
  374. capture1.rs
  375. capture1.stderr
  376. catch-unwind-bang.rs
  377. cenum_impl_drop_cast.rs
  378. cenum_impl_drop_cast.stderr
  379. cfguard-run.rs
  380. char.rs
  381. class-cast-to-trait.rs
  382. class-cast-to-trait.stderr
  383. class-method-missing.rs
  384. class-method-missing.stderr
  385. cleanup-rvalue-for-scope.rs
  386. cleanup-rvalue-scopes-cf.rs
  387. cleanup-rvalue-scopes-cf.stderr
  388. cleanup-rvalue-scopes.rs
  389. cleanup-rvalue-temp-during-incomplete-alloc.rs
  390. cleanup-shortcircuit.rs
  391. close-over-big-then-small-data.rs
  392. command-line-diagnostics.rs
  393. command-line-diagnostics.stderr
  394. complex.rs
  395. conservative_impl_trait.rs
  396. conservative_impl_trait.stderr
  397. constructor-lifetime-args.rs
  398. constructor-lifetime-args.stderr
  399. copy-a-resource.rs
  400. copy-a-resource.stderr
  401. crate-leading-sep.rs
  402. crate-method-reexport-grrrrrrr.rs
  403. crate-name-attr-used.rs
  404. crate-name-mismatch.rs
  405. crate-name-mismatch.stderr
  406. custom-attribute-multisegment.rs
  407. custom-attribute-multisegment.stderr
  408. custom-test-frameworks-simple.rs
  409. custom_attribute.rs
  410. custom_attribute.stderr
  411. deduplicate-diagnostics.deduplicate.stderr
  412. deduplicate-diagnostics.duplicate.stderr
  413. deduplicate-diagnostics.rs
  414. deep.rs
  415. default-method-parsing.rs
  416. default-method-simple.rs
  417. defaults-well-formedness.rs
  418. deprecation-in-force-unstable.rs
  419. deref-non-pointer.rs
  420. deref-non-pointer.stderr
  421. deref-rc.rs
  422. deref.rs
  423. derive-uninhabited-enum-38885.rs
  424. derive-uninhabited-enum-38885.stderr
  425. destructure-trait-ref.rs
  426. destructure-trait-ref.stderr
  427. diverging-fallback-method-chain.rs
  428. diverging-fallback-option.rs
  429. diverging-fn-tail-35849.rs
  430. diverging-fn-tail-35849.stderr
  431. double-ref.rs
  432. double-type-import.rs
  433. double-type-import.stderr
  434. dupe-first-attr.rs
  435. duplicate-label-E0381-issue-129274.rs
  436. duplicate-label-E0381-issue-129274.stderr
  437. duplicate_entry_error.rs
  438. duplicate_entry_error.stderr
  439. early-ret-binop-add.rs
  440. elide-errors-on-mismatched-tuple.rs
  441. elide-errors-on-mismatched-tuple.stderr
  442. elided-test.rs
  443. elided-test.stderr
  444. else-if.rs
  445. empty-allocation-non-null.rs
  446. empty-allocation-rvalue-non-null.rs
  447. empty-type-parameter-list.rs
  448. empty-type-parameter-list.stderr
  449. error-festival.rs
  450. error-festival.stderr
  451. error-should-say-copy-not-pod.rs
  452. error-should-say-copy-not-pod.stderr
  453. exclusive-drop-and-copy.rs
  454. exclusive-drop-and-copy.stderr
  455. explain.rs
  456. explain.stdout
  457. explicit-i-suffix.rs
  458. explore-issue-38412.rs
  459. explore-issue-38412.stderr
  460. ext-expand-inner-exprs.rs
  461. ext-nonexistent.rs
  462. ext-nonexistent.stderr
  463. fact.rs
  464. fail-simple.rs
  465. fail-simple.stderr
  466. filter-block-view-items.rs
  467. format-no-std.rs
  468. fun-indirect-call.rs
  469. future-incompatible-lint-group.rs
  470. future-incompatible-lint-group.stderr
  471. global-scope.rs
  472. hello.rs
  473. illegal-ufcs-drop.fixed
  474. illegal-ufcs-drop.rs
  475. illegal-ufcs-drop.stderr
  476. impl-inherent-non-conflict.rs
  477. impl-not-adjacent-to-type.rs
  478. impl-privacy-xc-1.rs
  479. impl-unused-rps-in-assoc-type.rs
  480. impl-unused-rps-in-assoc-type.stderr
  481. impl-unused-tps-inherent.rs
  482. impl-unused-tps-inherent.stderr
  483. impl-unused-tps.rs
  484. impl-unused-tps.stderr
  485. implicit-method-bind.rs
  486. implicit-method-bind.stderr
  487. inline-disallow-on-variant.rs
  488. inline-disallow-on-variant.stderr
  489. inlined-main.rs
  490. inner-attrs-on-impl.rs
  491. inner-module.rs
  492. inner-static-type-parameter.rs
  493. inner-static-type-parameter.stderr
  494. inner-static.rs
  495. integral-indexing.rs
  496. integral-indexing.stderr
  497. integral-variable-unification-error.rs
  498. integral-variable-unification-error.stderr
  499. invalid_crate_type_syntax.rs
  500. invalid_crate_type_syntax.stderr
  501. invalid_dispatch_from_dyn_impls.rs
  502. invalid_dispatch_from_dyn_impls.stderr
  503. issue-11881.rs
  504. issue-13560.rs
  505. issue-15924.rs
  506. issue-16822.rs
  507. issue-18502.rs
  508. issue-24106.rs
  509. issue-76387-llvm-miscompile.rs
  510. issues-71798.rs
  511. issues-71798.stderr
  512. item-name-overload.rs
  513. kinds-in-metadata.rs
  514. kinds-of-primitive-impl.rs
  515. kinds-of-primitive-impl.stderr
  516. last-use-in-block.rs
  517. last-use-in-cap-clause.rs
  518. last-use-is-capture.rs
  519. lazy-and-or.rs
  520. lexical-scopes.rs
  521. lexical-scopes.stderr
  522. lexical-scoping.rs
  523. link-section.rs
  524. list.rs
  525. log-err-phi.rs
  526. log-knows-the-names-of-variants.rs
  527. log-poly.rs
  528. logging-only-prints-once.rs
  529. loud_ui.rs
  530. max-min-classes.rs
  531. maximal_mir_to_hir_coverage.rs
  532. maybe-bounds.rs
  533. maybe-bounds.stderr
  534. method-output-diff-issue-127263.rs
  535. method-output-diff-issue-127263.stderr
  536. minus-string.rs
  537. minus-string.stderr
  538. missing_debug_impls.rs
  539. missing_debug_impls.stderr
  540. mod-subitem-as-enum-variant.rs
  541. mod-subitem-as-enum-variant.stderr
  542. monomorphize-abi-alignment.rs
  543. msvc-data-only.rs
  544. msvc-opt-minsize.rs
  545. multibyte.rs
  546. multiline-comment.rs
  547. mut-function-arguments.rs
  548. mutual-recursion-group.rs
  549. myriad-closures.rs
  550. nested-block-comment.rs
  551. nested-cfg-attrs.rs
  552. nested-cfg-attrs.stderr
  553. nested-class.rs
  554. nested-ty-params.rs
  555. nested-ty-params.stderr
  556. new-impl-syntax.rs
  557. new-import-syntax.rs
  558. new-style-constants.rs
  559. new-unicode-escapes.rs
  560. newlambdas.rs
  561. newtype-polymorphic.rs
  562. newtype.rs
  563. no-capture-arc.rs
  564. no-capture-arc.stderr
  565. no-core-1.rs
  566. no-core-2.rs
  567. no-link-unknown-crate.rs
  568. no-link-unknown-crate.stderr
  569. no-reuse-move-arc.rs
  570. no-reuse-move-arc.stderr
  571. no-send-res-ports.rs
  572. no-send-res-ports.stderr
  573. no-warn-on-field-replace-issue-34101.rs
  574. no_crate_type.rs
  575. no_crate_type.stderr
  576. no_send-enum.rs
  577. no_send-enum.stderr
  578. no_send-rc.rs
  579. no_send-rc.stderr
  580. no_share-enum.rs
  581. no_share-enum.stderr
  582. no_share-struct.rs
  583. no_share-struct.stderr
  584. noexporttypeexe.rs
  585. noexporttypeexe.stderr
  586. non-constant-expr-for-arr-len.rs
  587. non-constant-expr-for-arr-len.stderr
  588. non-copyable-void.rs
  589. non-copyable-void.stderr
  590. non-fmt-panic.fixed
  591. non-fmt-panic.rs
  592. non-fmt-panic.stderr
  593. noncopyable-class.rs
  594. noncopyable-class.stderr
  595. nonscalar-cast.fixed
  596. nonscalar-cast.rs
  597. nonscalar-cast.stderr
  598. not-clone-closure.rs
  599. not-clone-closure.stderr
  600. not-copy-closure.rs
  601. not-copy-closure.stderr
  602. not-enough-arguments.rs
  603. not-enough-arguments.stderr
  604. nul-characters.rs
  605. nullable-pointer-iotareduction.rs
  606. nullable-pointer-size.rs
  607. object-pointer-types.rs
  608. object-pointer-types.stderr
  609. objects-coerce-freeze-borrored.rs
  610. occurs-check-2.rs
  611. occurs-check-2.stderr
  612. occurs-check-3.rs
  613. occurs-check-3.stderr
  614. occurs-check.rs
  615. occurs-check.stderr
  616. once-cant-call-twice-on-heap.rs
  617. once-cant-call-twice-on-heap.stderr
  618. oom_unwind.rs
  619. op-assign-builtins-by-ref.rs
  620. opeq.rs
  621. opt-in-copy.rs
  622. opt-in-copy.stderr
  623. optimization-remark.rs
  624. out-pointer-aliasing.rs
  625. output-slot-variants.rs
  626. over-constrained-vregs.rs
  627. panic-while-printing.rs
  628. panic_implementation-closures.rs
  629. paren-span.rs
  630. paren-span.stderr
  631. partialeq_help.rs
  632. partialeq_help.stderr
  633. path-lookahead.fixed
  634. path-lookahead.rs
  635. path-lookahead.stderr
  636. path.rs
  637. paths-containing-nul.rs
  638. phantom-auto-trait.rs
  639. phantom-auto-trait.stderr
  640. point-to-type-err-cause-on-impl-trait-return-2.rs
  641. point-to-type-err-cause-on-impl-trait-return-2.stderr
  642. pptypedef.rs
  643. pptypedef.stderr
  644. primitive-binop-lhs-mut.rs
  645. print-calling-conventions.rs
  646. print-calling-conventions.stdout
  647. print-stdout-eprint-stderr.rs
  648. project-cache-issue-31849.rs
  649. ptr-coercion-rpass.rs
  650. ptr-coercion.rs
  651. ptr-coercion.stderr
  652. query-visibility.rs
  653. raw-str.rs
  654. README.md
  655. realloc-16687.rs
  656. reassign-ref-mut.rs
  657. reassign-ref-mut.stderr
  658. reexport-test-harness-main.rs
  659. removing-extern-crate.fixed
  660. removing-extern-crate.rs
  661. removing-extern-crate.stderr
  662. resource-assign-is-not-copy.rs
  663. resource-destruct.rs
  664. rustc-error.rs
  665. rustc-error.stderr
  666. seq-args.rs
  667. seq-args.stderr
  668. shadow-bool.rs
  669. shadowed-use-visibility.rs
  670. short-error-format.rs
  671. short-error-format.stderr
  672. sized-borrowed-pointer.rs
  673. sized-cycle-note.rs
  674. sized-cycle-note.stderr
  675. sized-owned-pointer.rs
  676. sse2.rs
  677. stable-addr-of.rs
  678. std-uncopyable-atomics.rs
  679. std-uncopyable-atomics.stderr
  680. stdio-is-blocking.rs
  681. string-box-error.rs
  682. struct-ctor-mangling.rs
  683. super-at-top-level.rs
  684. super-at-top-level.stderr
  685. super.rs
  686. svh-add-nothing.rs
  687. swap-1.rs
  688. swap-overlapping.rs
  689. switched-expectations.rs
  690. switched-expectations.stderr
  691. syntax-extension-minor.rs
  692. tag-type-args.rs
  693. tag-type-args.stderr
  694. tag-variant-cast-non-nullary.fixed
  695. tag-variant-cast-non-nullary.rs
  696. tag-variant-cast-non-nullary.stderr
  697. tail-call-arg-leak.rs
  698. tail-cps.rs
  699. tail-typeck.rs
  700. tail-typeck.stderr
  701. trailing-comma.rs
  702. trait-method-number-parameters.rs
  703. trait-method-number-parameters.stderr
  704. transmute-equal-assoc-types.rs
  705. transmute-non-immediate-to-immediate.rs
  706. trivial_casts-rpass.rs
  707. trivial_casts-rpass.stderr
  708. try-from-int-error-partial-eq.rs
  709. try-operator-hygiene.rs
  710. try-operator.rs
  711. tydesc-name.rs
  712. type-id-higher-rank-2.rs
  713. type-namespace.rs
  714. type-param-constraints.rs
  715. type-param.rs
  716. type-ptr.rs
  717. type-use-i1-versus-i8.rs
  718. type_length_limit.polonius.stderr
  719. type_length_limit.rs
  720. type_length_limit.stderr
  721. typeid-intrinsic.rs
  722. typestate-multi-decl.rs
  723. unconstrained-none.rs
  724. unconstrained-none.stderr
  725. unconstrained-ref.rs
  726. unconstrained-ref.stderr
  727. underscore-ident-matcher.rs
  728. underscore-ident-matcher.stderr
  729. underscore-lifetimes.rs
  730. underscore-method-after-integer.rs
  731. unevaluated_fixed_size_array_len.rs
  732. unevaluated_fixed_size_array_len.stderr
  733. uninit-empty-types.rs
  734. unit.rs
  735. unknown-language-item.rs
  736. unknown-language-item.stderr
  737. unknown-llvm-arg.rs
  738. unknown-llvm-arg.stderr
  739. unnamed_argument_mode.rs
  740. unreachable-code-1.rs
  741. unreachable-code.rs
  742. unsigned-literal-negation.rs
  743. unsigned-literal-negation.stderr
  744. unused-move-capture.rs
  745. unused-move.rs
  746. unwind-no-uwtable.rs
  747. use-import-export.rs
  748. use-keyword-2.rs
  749. use-module-level-int-consts.rs
  750. use-nested-groups.rs
  751. used.rs
  752. used.stderr
  753. using-target-feature-unstable.rs
  754. usize-generic-argument-parent.rs
  755. usize-generic-argument-parent.stderr
  756. utf8-bom.rs
  757. utf8_idents.rs
  758. wait-forked-but-failed-child.rs
  759. walk-struct-literal-with.rs
  760. walk-struct-literal-with.stderr
  761. weak-new-uninhabited-issue-48493.rs
  762. weird-exit-code.rs
  763. weird-exprs.rs
  764. write-fmt-errors.rs
  765. writing-to-immutable-vec.rs
  766. writing-to-immutable-vec.stderr
  767. wrong-hashset-issue-42918.rs
tests/ui/README.md

UI Tests

This folder contains rustc's UI tests.

Test Directives (Headers)

Typically, a UI test will have some test directives / headers which are special comments that tell compiletest how to build and intepret a test.

As part of an on-going effort to rewrite compiletest (see https://github.com/rust-lang/compiler-team/issues/536), a major change proposal to change legacy compiletest-style headers // <directive> to ui_test-style headers //@ <directive> was accepted (see https://github.com/rust-lang/compiler-team/issues/512.

An example directive is ignore-test. In legacy compiletest style, the header would be written as

// ignore-test

but in ui_test style, the header would be written as

//@ ignore-test

compiletest is changed to accept only //@ directives for UI tests (currently), and will reject and report an error if it encounters any comments // <content> that may be parsed as an legacy compiletest-style test header. To fix this, you should migrate to the ui_test-style header //@ <content>.