Files
rust/tests/ui
许杰友 Jieyou Xu (Joe) e7bb090d0a Rollup merge of #124930 - compiler-errors:consume-arg, r=petrochenkov
Make sure we consume a generic arg when checking mistyped turbofish

When recovering un-turbofish-ed args in expr position (e.g. `let x = a<T, U>();` in `check_mistyped_turbofish_with_multiple_type_params`, we used `parse_seq_to_before_end` to parse the fake generic args; however, it used `parse_generic_arg` which *optionally* parses a generic arg. If it doesn't end up parsing an arg, it returns `Ok(None)` and consumes no tokens. If we don't find a delimiter after this (`,`), we try parsing *another* element. In this case, we just infinitely loop looking for a subsequent element.

We can fix this by making sure that we either parse a generic arg or error in `parse_seq_to_before_end`'s callback.

Fixes #124897
2024-05-11 01:15:10 +01:00
..
2024-05-07 16:56:54 -04:00
2024-05-02 19:42:31 -04:00
2024-04-24 13:12:33 +01:00
2024-05-07 16:56:54 -04:00
2024-04-21 15:43:43 -03:00
2024-03-06 12:01:54 +00:00
2024-04-21 15:43:43 -03:00
2024-04-21 15:43:43 -03:00
2024-04-14 21:34:14 +05:30
2024-04-12 20:57:07 +00:00
2024-05-02 19:42:31 -04:00
2024-04-12 17:45:15 +01:00
2024-04-24 13:12:33 +01:00
2024-04-24 13:12:33 +01:00
2024-04-29 14:53:38 +02:00
2024-04-25 10:47:24 +08:00
2024-05-02 19:42:31 -04:00
2024-05-02 19:42:31 -04:00
2024-05-08 21:37:54 +02:00
2024-04-07 17:38:07 -03:00
2024-05-02 19:42:31 -04:00
2024-04-11 17:53:27 -04:00
2024-05-02 19:42:31 -04:00
2024-03-23 16:14:42 +01:00
2024-04-21 15:43:43 -03:00
2024-04-14 09:42:53 -04:00
2024-02-29 14:43:43 +01:00
2024-04-24 13:12:33 +01:00
2024-03-31 14:58:17 -03:00
2024-04-27 10:54:31 +03:00
2024-04-25 10:51:54 -04:00
2024-03-15 13:37:41 +00:00
2024-05-08 21:37:55 +02:00
2024-04-07 17:38:07 -03:00
2024-04-27 10:54:31 +03:00
2024-02-22 18:05:28 +00:00

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>.