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