rust/tests/ui/macros
bors 3e97763872 Auto merge of #106745 - m-ou-se:format-args-ast, r=oli-obk
Move format_args!() into AST (and expand it during AST lowering)

Implements https://github.com/rust-lang/compiler-team/issues/541

This moves FormatArgs from rustc_builtin_macros to rustc_ast_lowering. For now, the end result is the same. But this allows for future changes to do smarter things with format_args!(). It also allows Clippy to directly access the ast::FormatArgs, making things a lot easier.

This change turns the format args types into lang items. The builtin macro used to refer to them by their path. After this change, the path is no longer relevant, making it easier to make changes in `core`.

This updates clippy to use the new language items, but this doesn't yet make clippy use the ast::FormatArgs structure that's now available. That should be done after this is merged.
2023-01-26 12:44:47 +00:00
..
auxiliary
issue-69838-dir
macro-expanded-include
rfc-2011-nicer-assert-messages
rfc-3086-metavar-expr
syntax-extension-source-utils-files
ambiguity-legacy-vs-modern.rs
ambiguity-legacy-vs-modern.stderr
assert-as-macro.rs
assert-eq-macro-msg.rs
assert-eq-macro-panic.rs
assert-eq-macro-success.rs
assert-eq-macro-unsized.rs
assert-format-lazy.rs
assert-macro-explicit.rs
assert-macro-fmt.rs
assert-macro-owned.rs
assert-macro-static.rs
assert-matches-macro-msg.rs
assert-ne-macro-msg.rs
assert-ne-macro-panic.rs
assert-ne-macro-success.rs
assert-ne-macro-unsized.rs
assert-trailing-junk.rs
assert-trailing-junk.with-generic-asset.stderr
assert-trailing-junk.without-generic-asset.stderr
assert.rs
assert.with-generic-asset.stderr
assert.without-generic-asset.stderr
attr-empty-expr.rs
attr-empty-expr.stderr
attr-from-macro.rs
bad_hello.rs
bad_hello.stderr
bad-concat.rs
bad-concat.stderr
bang-after-name.fixed
bang-after-name.rs
bang-after-name.stderr
best-failure.rs
best-failure.stderr
builtin-prelude-no-accidents.rs
builtin-prelude-no-accidents.stderr
builtin-std-paths-fail.rs
builtin-std-paths-fail.stderr
builtin-std-paths.rs
cfg.rs
cfg.stderr
colorful-write-macros.rs
concat-bytes-error.rs
concat-bytes-error.stderr
concat-bytes.rs
concat-rpass.rs
concat.rs
concat.stderr
conditional-debug-macro-on.rs
cross-crate-pat-span.rs
derive-in-eager-expansion-hang.rs
derive-in-eager-expansion-hang.stderr
die-macro-2.rs
die-macro-expr.rs
die-macro-pure.rs
die-macro.rs
doc-comment.rs
dollar-crate-nested-encoding.rs
duplicate-builtin.rs
duplicate-builtin.stderr
edition-macro-pats.rs
empty-trailing-stmt.rs
empty-trailing-stmt.stderr
format-args-temporaries-async.rs
format-args-temporaries-in-write.rs
format-args-temporaries-in-write.stderr Account for method call and indexing when looking for inner-most path in expression 2023-01-17 02:52:43 +00:00
format-args-temporaries.rs
format-foreign.rs
format-foreign.stderr
format-parse-errors.rs
format-parse-errors.stderr
format-unused-lables.rs
format-unused-lables.stderr
global-asm.rs
global-asm.stderr
html-literals.rs
include-single-expr-helper-1.rs
include-single-expr-helper.rs
include-single-expr.rs
include-single-expr.stderr
issue-5060.rs
issue-6596-1.rs
issue-6596-1.stderr
issue-8709.rs
issue-8851.rs
issue-10536.rs
issue-10536.stderr
issue-16098.rs
issue-16098.stderr
issue-19163.rs
issue-19163.stderr
issue-21356.rs
issue-21356.stderr
issue-22463.rs
issue-25274.rs
issue-25385.rs
issue-25385.stderr
issue-26322.rs
issue-29084.rs
issue-29084.stderr
issue-30143.rs
issue-30143.stderr
issue-33185.rs
issue-34171.rs
issue-34421-mac-expr-bad-stmt-good-add-semi.rs
issue-34421-mac-expr-bad-stmt-good-add-semi.stderr
issue-35450.rs
issue-35450.stderr
issue-37175.rs
issue-38715.rs
issue-38715.stderr
issue-39388.rs
issue-39388.stderr
issue-39404.rs
issue-39404.stderr
issue-40469.rs
issue-40770.rs
issue-41776.rs
issue-41776.stderr
issue-41803.rs
issue-42954.fixed
issue-42954.rs
issue-42954.stderr
issue-44127.rs
issue-51848.rs
issue-51848.stderr
issue-52169.rs
issue-54441.rs
issue-54441.stderr
issue-57597.rs
issue-57597.stderr
issue-58490.rs
issue-58490.stderr
issue-61033-1.rs
issue-61033-1.stderr
issue-61033-2.rs
issue-61033-2.stderr
issue-61053-different-kleene.rs
issue-61053-different-kleene.stderr
issue-61053-duplicate-binder.rs
issue-61053-duplicate-binder.stderr
issue-61053-missing-repetition.rs
issue-61053-missing-repetition.stderr
issue-61053-unbound.rs
issue-61053-unbound.stderr
issue-63102.rs
issue-68058.rs
issue-68060.rs
issue-68060.stderr
issue-69838-mods-relative-to-included-path.rs
issue-70446.rs
issue-75982-foreign-macro-weird-mod.rs
issue-77475.rs
issue-78325-inconsistent-resolution.rs
issue-78325-inconsistent-resolution.stderr
issue-78333.rs
issue-78892-substitution-in-statement-attr.rs
issue-81006.rs
issue-81006.stderr
issue-83340.rs
issue-83340.stderr
issue-83344.rs
issue-83344.stderr
issue-84195-lint-anon-const.rs
issue-84195-lint-anon-const.stderr Add SEMICOLON_IN_EXPRESSIONS_FROM_MACROS to future-incompat report 2023-01-21 14:38:25 -06:00
issue-84429-matches-edition.rs
issue-84632-eager-expansion-recursion-limit.rs
issue-84632-eager-expansion-recursion-limit.stderr
issue-86082-option-env-invalid-char.rs
issue-86865.rs
issue-86865.stderr
issue-87877.rs
issue-88206.rs
issue-88206.stderr
issue-88228.rs note -> help 2023-01-17 03:09:49 +00:00
issue-88228.stderr note -> help 2023-01-17 03:09:49 +00:00
issue-92267.rs
issue-92267.stderr
issue-95267.rs
issue-95533.rs
issue-98466-allow.rs
issue-98466.fixed
issue-98466.rs
issue-98466.stderr
issue-99261.rs
issue-99265.fixed
issue-99265.rs
issue-99265.stderr
issue-99907.fixed
issue-99907.rs
issue-99907.stderr
issue-100199.rs
issue-100199.stderr
issue-102878.rs
issue-102878.stderr
issue-103529.rs
issue-103529.stderr
issue-104769-concat_bytes-invalid-literal.rs
issue-104769-concat_bytes-invalid-literal.stderr
issue-105011.rs
issue-105011.stderr
lint-trailing-macro-call.rs
lint-trailing-macro-call.stderr Add SEMICOLON_IN_EXPRESSIONS_FROM_MACROS to future-incompat report 2023-01-21 14:38:25 -06:00
local-ambiguity-multiple-parsing-options.rs
local-ambiguity-multiple-parsing-options.stderr
log_syntax-trace_macros-macro-locations.rs
log_syntax-trace_macros-macro-locations.stdout
macro_path_as_generic_bound.rs
macro_path_as_generic_bound.stderr
macro_rules-unmatchable-literals.rs
macro_rules-unmatchable-literals.stderr
macro_undefined.rs
macro_undefined.stderr
macro_with_super_2.rs
macro-2.rs
macro-as-fn-body.rs
macro-at-most-once-rep-2015-rpass.rs
macro-at-most-once-rep-2015.rs
macro-at-most-once-rep-2015.stderr
macro-at-most-once-rep-2018-rpass.rs
macro-at-most-once-rep-2018.rs
macro-at-most-once-rep-2018.stderr
macro-attribute-expansion.rs
macro-attribute.rs
macro-attribute.stderr
macro-attributes.rs
macro-backtrace-invalid-internals.rs
macro-backtrace-invalid-internals.stderr
macro-backtrace-nested.rs
macro-backtrace-nested.stderr
macro-backtrace-println.rs
macro-backtrace-println.stderr
macro-block-nonterminal.rs
macro-comma-behavior-rpass.rs
macro-comma-behavior.core.stderr
macro-comma-behavior.rs
macro-comma-behavior.std.stderr
macro-comma-support-rpass.rs
macro-comma-support.rs
macro-comma-support.stderr
macro-context.rs
macro-context.stderr Add SEMICOLON_IN_EXPRESSIONS_FROM_MACROS to future-incompat report 2023-01-21 14:38:25 -06:00
macro-crate-def-only.rs
macro-crate-nonterminal-non-root.rs
macro-crate-nonterminal-non-root.stderr
macro-crate-nonterminal-renamed.rs
macro-crate-nonterminal.rs
macro-crate-use.rs
macro-deep_expansion.rs
macro-def-site-super.rs
macro-delimiter-significance.rs
macro-deprecation.rs
macro-deprecation.stderr
macro-doc-comments.rs
macro-doc-escapes.rs
macro-doc-raw-str-hashes.rs
macro-error.rs
macro-error.stderr
macro-expansion-tests.rs
macro-expansion-tests.stderr
macro-export-inner-module.rs
macro-first-set.rs
macro-follow-rpass.rs
macro-follow.rs
macro-follow.stderr
macro-followed-by-seq-bad.rs
macro-followed-by-seq-bad.stderr
macro-followed-by-seq.rs
macro-in-expression-context-2.rs
macro-in-expression-context-2.stderr
macro-in-expression-context.fixed
macro-in-expression-context.rs
macro-in-expression-context.stderr Add SEMICOLON_IN_EXPRESSIONS_FROM_MACROS to future-incompat report 2023-01-21 14:38:25 -06:00
macro-in-fn.rs
macro-include-items.rs
macro-inner-attributes.rs
macro-inner-attributes.stderr
macro-input-future-proofing.rs
macro-input-future-proofing.stderr
macro-interpolation.rs
macro-invalid-fragment-spec.rs
macro-invalid-fragment-spec.stderr
macro-invocation-in-count-expr-fixed-array-type.rs
macro-lifetime-used-with-bound.rs
macro-lifetime-used-with-labels.rs
macro-lifetime-used-with-static.rs
macro-lifetime.rs
macro-literal.rs
macro-local-data-key-priv.rs
macro-local-data-key-priv.stderr
macro-match-nonterminal.rs
macro-match-nonterminal.stderr
macro-meta-items-modern.rs
macro-meta-items.rs
macro-method-issue-4621.rs
macro-missing-delimiters.rs
macro-missing-delimiters.stderr
macro-missing-fragment-deduplication.rs
macro-missing-fragment-deduplication.stderr
macro-missing-fragment.rs
macro-missing-fragment.stderr
macro-multiple-items.rs
macro-multiple-matcher-bindings.rs
macro-multiple-matcher-bindings.stderr
macro-name-typo.rs
macro-name-typo.stderr
macro-named-default.rs
macro-nested_definition_issue-31946.rs
macro-nested_expr.rs
macro-nested_stmt_macros.rs
macro-non-lifetime.rs
macro-non-lifetime.stderr
macro-nt-list.rs
macro-of-higher-order.rs
macro-or-patterns-back-compat.fixed
macro-or-patterns-back-compat.rs
macro-or-patterns-back-compat.stderr
macro-outer-attributes.rs
macro-outer-attributes.stderr
macro-parameter-span.rs
macro-parameter-span.stderr
macro-pat2021-pattern-followed-by-or.rs
macro-pat2021-pattern-followed-by-or.stderr
macro-pat-follow-2018.rs
macro-pat-follow.rs
macro-pat-neg-lit.rs
macro-pat-pattern-followed-by-or-in-2021.rs
macro-pat-pattern-followed-by-or-in-2021.stderr
macro-pat-pattern-followed-by-or.rs
macro-pat.rs
macro-path-prelude-fail-1.rs
macro-path-prelude-fail-1.stderr
macro-path-prelude-fail-2.rs
macro-path-prelude-fail-2.stderr
macro-path-prelude-fail-3.rs
macro-path-prelude-fail-3.stderr
macro-path-prelude-fail-4.rs
macro-path-prelude-fail-4.stderr
macro-path-prelude-pass.rs
macro-path-prelude-shadowing.rs
macro-path-prelude-shadowing.stderr
macro-path.rs
macro-pub-matcher.rs
macro-reexport-removed.rs
macro-reexport-removed.stderr
macro-seq-followed-by-seq.rs
macro-shadowing-relaxed.rs
macro-shadowing.rs
macro-shadowing.stderr
macro-stability-rpass.rs
macro-stability.rs
macro-stability.stderr
macro-stmt_macro_in_expr_macro.rs
macro-stmt-matchers.rs
macro-stmt.rs
macro-tt-followed-by-seq.rs
macro-tt-matchers.rs
macro-use-all-and-none.rs
macro-use-all-and-none.stderr
macro-use-all.rs
macro-use-bad-args-1.rs
macro-use-bad-args-1.stderr
macro-use-bad-args-2.rs
macro-use-bad-args-2.stderr
macro-use-both.rs
macro-use-one.rs
macro-use-scope.rs
macro-use-undef.rs
macro-use-undef.stderr
macro-use-wrong-name.rs
macro-use-wrong-name.stderr note -> help 2023-01-17 03:09:49 +00:00
macro-with-attrs1.rs
macro-with-attrs2.rs
macro-with-braces-in-expr-position.rs
macros-in-extern.rs
macros-nonfatal-errors.rs
macros-nonfatal-errors.stderr
malformed_macro_lhs.rs
malformed_macro_lhs.stderr
meta-item-absolute-path.rs
meta-item-absolute-path.stderr
meta-variable-depth-outside-repeat.rs
meta-variable-depth-outside-repeat.stderr
meta-variable-misuse.rs
missing-bang-in-decl.fixed
missing-bang-in-decl.rs
missing-bang-in-decl.stderr
missing-comma.rs
missing-comma.stderr
must-use-in-macro-55516.rs
must-use-in-macro-55516.stderr
no-std-macros.rs
none-delim-lookahead.rs
nonterminal-matching.rs
nonterminal-matching.stderr
not-utf8.bin
not-utf8.rs
not-utf8.stderr
out-of-order-shadowing.rs
out-of-order-shadowing.stderr
parse-complex-macro-invoc-op.rs
paths-in-macro-invocations.rs
proc_macro.rs
pub-item-inside-macro.rs
pub-method-inside-macro.rs
recovery-allowed.rs
recovery-allowed.stderr
recovery-forbidden.rs
restricted-shadowing-legacy.rs
restricted-shadowing-legacy.stderr
restricted-shadowing-modern.rs
restricted-shadowing-modern.stderr
same-sequence-span.rs
same-sequence-span.stderr
semi-after-macro-ty.rs
span-covering-argument-1.rs
span-covering-argument-1.stderr
stmt_expr_attr_macro_parse.rs
stringify.rs
syntax-error-recovery.rs
syntax-error-recovery.stderr
syntax-extension-cfg.rs
syntax-extension-source-utils.rs
trace_faulty_macros.rs
trace_faulty_macros.stderr
trace_macros-format.rs
trace_macros-format.stderr
trace-macro.rs
trace-macro.stderr
try-macro.rs
two-macro-use.rs
type-macros-hlist.rs
type-macros-simple.rs
typeck-macro-interaction-issue-8852.rs
unimplemented-macro-panic.rs
unknown-builtin.rs
unknown-builtin.stderr
unreachable-arg.edition_2021.stderr
unreachable-arg.rs
unreachable-fmt-msg.rs
unreachable-format-arg.rs
unreachable-format-args.edition_2015.stderr
unreachable-format-args.rs
unreachable-macro-panic.rs
unreachable-static-msg.rs
unreachable.rs
use-macro-self.rs
vec-macro-in-pattern.rs
vec-macro-in-pattern.stderr