Files
rust/tests/ui
Josh Triplett a5a60d75a8 Add size_of, size_of_val, align_of, and align_of_val to the prelude
Many, many projects use `size_of` to get the size of a type. However,
it's also often equally easy to hardcode a size (e.g. `8` instead of
`size_of::<u64>()`). Minimizing friction in the use of `size_of` helps
ensure that people use it and make code more self-documenting.

The name `size_of` is unambiguous: the name alone, without any prefix or
path, is self-explanatory and unmistakeable for any other functionality.
Adding it to the prelude cannot produce any name conflicts, as any local
definition will silently shadow the one from the prelude. Thus, we don't
need to wait for a new edition prelude to add it.

Add `size_of_val`, `align_of`, and `align_of_val` as well, with similar
justification: widely useful, self-explanatory, unmistakeable for
anything else, won't produce conflicts.
2024-05-13 15:11:28 +02: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-02-01 03:31:03 +00: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-10 13:47:37 -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-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-05-12 12:11:25 -04: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
2024-02-07 10:42:01 +08:00
2024-02-07 10:42:01 +08: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>.