diff options
| author | Mazdak Farrokhzad <twingoow@gmail.com> | 2019-08-16 08:26:33 +0200 |
|---|---|---|
| committer | GitHub <noreply@github.com> | 2019-08-16 08:26:33 +0200 |
| commit | 100a02a0d8b0ff44885aa792de2a355ff1209df2 (patch) | |
| tree | fe0f2185dc15b7b331fd10d511b949689f74b6ee /src | |
| parent | f7af19c279b8b7ea3d2c21fcbd67164af8d5d968 (diff) | |
| parent | 26ee99e5d473e8743e3faa08c6cb89d3acb29104 (diff) | |
| download | rust-100a02a0d8b0ff44885aa792de2a355ff1209df2.tar.gz rust-100a02a0d8b0ff44885aa792de2a355ff1209df2.zip | |
Rollup merge of #62593 - kper:cleanup_abi, r=Centril
Group all ABI tests. r? @eddyb Closes #62401
Diffstat (limited to 'src')
| -rw-r--r-- | src/test/ui/abi/abi-sysv64-arg-passing.rs (renamed from src/test/ui/abi-sysv64-arg-passing.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/abi-sysv64-register-usage.rs (renamed from src/test/ui/abi-sysv64-register-usage.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/abort-on-c-abi.rs (renamed from src/test/ui/abort-on-c-abi.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/anon-extern-mod.rs (renamed from src/test/ui/anon-extern-mod.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/auxiliary/anon-extern-mod-cross-crate-1.rs (renamed from src/test/ui/auxiliary/anon-extern-mod-cross-crate-1.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/auxiliary/foreign_lib.rs (renamed from src/test/ui/auxiliary/foreign_lib.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/c-stack-as-value.rs (renamed from src/test/ui/c-stack-as-value.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/cabi-int-widening.rs (renamed from src/test/ui/cabi-int-widening.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/consts/auxiliary/anon-extern-mod-cross-crate-1.rs (renamed from src/test/ui/consts/auxiliary/anon-extern-mod-cross-crate-1.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/cross-crate/anon-extern-mod-cross-crate-2.rs (renamed from src/test/ui/cross-crate/anon-extern-mod-cross-crate-2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs (renamed from src/test/ui/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/duplicated-external-mods.rs (renamed from src/test/ui/duplicated-external-mods.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/auxiliary/extern-crosscrate-source.rs (renamed from src/test/ui/extern/auxiliary/extern-crosscrate-source.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-call-deep.rs (renamed from src/test/ui/extern/extern-call-deep.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-call-deep2.rs (renamed from src/test/ui/extern/extern-call-deep2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-call-direct.rs (renamed from src/test/ui/extern/extern-call-direct.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-call-indirect.rs (renamed from src/test/ui/extern/extern-call-indirect.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-call-scrub.rs (renamed from src/test/ui/extern/extern-call-scrub.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-crosscrate.rs (renamed from src/test/ui/extern/extern-crosscrate.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-TwoU16s.rs (renamed from src/test/ui/extern/extern-pass-TwoU16s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-TwoU32s.rs (renamed from src/test/ui/extern/extern-pass-TwoU32s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-TwoU64s.rs (renamed from src/test/ui/extern/extern-pass-TwoU64s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-TwoU8s.rs (renamed from src/test/ui/extern/extern-pass-TwoU8s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-char.rs (renamed from src/test/ui/extern/extern-pass-char.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-double.rs (renamed from src/test/ui/extern/extern-pass-double.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-empty.rs (renamed from src/test/ui/extern/extern-pass-empty.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-u32.rs (renamed from src/test/ui/extern/extern-pass-u32.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-pass-u64.rs (renamed from src/test/ui/extern/extern-pass-u64.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-return-TwoU16s.rs (renamed from src/test/ui/extern/extern-return-TwoU16s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-return-TwoU32s.rs (renamed from src/test/ui/extern/extern-return-TwoU32s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-return-TwoU64s.rs (renamed from src/test/ui/extern/extern-return-TwoU64s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/extern/extern-return-TwoU8s.rs (renamed from src/test/ui/extern/extern-return-TwoU8s.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/foreign/auxiliary/foreign_lib.rs (renamed from src/test/ui/foreign/auxiliary/foreign_lib.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/foreign/foreign-call-no-runtime.rs (renamed from src/test/ui/foreign/foreign-call-no-runtime.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/foreign/foreign-dupe.rs (renamed from src/test/ui/foreign/foreign-dupe.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/foreign/foreign-fn-with-byval.rs (renamed from src/test/ui/foreign/foreign-fn-with-byval.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/foreign/foreign-no-abi.rs (renamed from src/test/ui/foreign/foreign-no-abi.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/invoke-external-foreign.rs (renamed from src/test/ui/invoke-external-foreign.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/lib-defaults.rs (renamed from src/test/ui/lib-defaults.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/macros/macros-in-extern.rs (renamed from src/test/ui/macros/macros-in-extern.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/macros/macros-in-extern.stderr (renamed from src/test/ui/macros/macros-in-extern.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/mir/mir_codegen_calls_variadic.rs (renamed from src/test/ui/mir/mir_codegen_calls_variadic.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/numbers-arithmetic/i128-ffi.rs (renamed from src/test/ui/numbers-arithmetic/i128-ffi.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/proc-macro/auxiliary/test-macros.rs | 112 | ||||
| -rw-r--r-- | src/test/ui/abi/proc-macro/macros-in-extern.rs (renamed from src/test/ui/proc-macro/macros-in-extern.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/proc-macro/macros-in-extern.stderr (renamed from src/test/ui/proc-macro/macros-in-extern.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/segfault-no-out-of-stack.rs (renamed from src/test/ui/segfault-no-out-of-stack.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/stack-probes-lto.rs (renamed from src/test/ui/stack-probes-lto.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/stack-probes.rs (renamed from src/test/ui/stack-probes.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/statics/static-mut-foreign.rs (renamed from src/test/ui/statics/static-mut-foreign.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/struct-enums/struct-return.rs (renamed from src/test/ui/structs-enums/struct-return.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/union/union-c-interop.rs (renamed from src/test/ui/union/union-c-interop.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/abi/variadic-ffi.rs (renamed from src/test/ui/variadic-ffi.rs) | 0 |
53 files changed, 112 insertions, 0 deletions
diff --git a/src/test/ui/abi-sysv64-arg-passing.rs b/src/test/ui/abi/abi-sysv64-arg-passing.rs index d40006eb9b6..d40006eb9b6 100644 --- a/src/test/ui/abi-sysv64-arg-passing.rs +++ b/src/test/ui/abi/abi-sysv64-arg-passing.rs diff --git a/src/test/ui/abi-sysv64-register-usage.rs b/src/test/ui/abi/abi-sysv64-register-usage.rs index 0c7e2d906b7..0c7e2d906b7 100644 --- a/src/test/ui/abi-sysv64-register-usage.rs +++ b/src/test/ui/abi/abi-sysv64-register-usage.rs diff --git a/src/test/ui/abort-on-c-abi.rs b/src/test/ui/abi/abort-on-c-abi.rs index cd7dd1b6a45..cd7dd1b6a45 100644 --- a/src/test/ui/abort-on-c-abi.rs +++ b/src/test/ui/abi/abort-on-c-abi.rs diff --git a/src/test/ui/anon-extern-mod.rs b/src/test/ui/abi/anon-extern-mod.rs index 37a67876c91..37a67876c91 100644 --- a/src/test/ui/anon-extern-mod.rs +++ b/src/test/ui/abi/anon-extern-mod.rs diff --git a/src/test/ui/auxiliary/anon-extern-mod-cross-crate-1.rs b/src/test/ui/abi/auxiliary/anon-extern-mod-cross-crate-1.rs index 948b5e688eb..948b5e688eb 100644 --- a/src/test/ui/auxiliary/anon-extern-mod-cross-crate-1.rs +++ b/src/test/ui/abi/auxiliary/anon-extern-mod-cross-crate-1.rs diff --git a/src/test/ui/auxiliary/foreign_lib.rs b/src/test/ui/abi/auxiliary/foreign_lib.rs index de6b0e2118a..de6b0e2118a 100644 --- a/src/test/ui/auxiliary/foreign_lib.rs +++ b/src/test/ui/abi/auxiliary/foreign_lib.rs diff --git a/src/test/ui/c-stack-as-value.rs b/src/test/ui/abi/c-stack-as-value.rs index 7595b76fb3f..7595b76fb3f 100644 --- a/src/test/ui/c-stack-as-value.rs +++ b/src/test/ui/abi/c-stack-as-value.rs diff --git a/src/test/ui/cabi-int-widening.rs b/src/test/ui/abi/cabi-int-widening.rs index 240eaebf3d6..240eaebf3d6 100644 --- a/src/test/ui/cabi-int-widening.rs +++ b/src/test/ui/abi/cabi-int-widening.rs diff --git a/src/test/ui/consts/auxiliary/anon-extern-mod-cross-crate-1.rs b/src/test/ui/abi/consts/auxiliary/anon-extern-mod-cross-crate-1.rs index 948b5e688eb..948b5e688eb 100644 --- a/src/test/ui/consts/auxiliary/anon-extern-mod-cross-crate-1.rs +++ b/src/test/ui/abi/consts/auxiliary/anon-extern-mod-cross-crate-1.rs diff --git a/src/test/ui/cross-crate/anon-extern-mod-cross-crate-2.rs b/src/test/ui/abi/cross-crate/anon-extern-mod-cross-crate-2.rs index 77168be5374..77168be5374 100644 --- a/src/test/ui/cross-crate/anon-extern-mod-cross-crate-2.rs +++ b/src/test/ui/abi/cross-crate/anon-extern-mod-cross-crate-2.rs diff --git a/src/test/ui/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs b/src/test/ui/abi/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs index 948b5e688eb..948b5e688eb 100644 --- a/src/test/ui/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs +++ b/src/test/ui/abi/cross-crate/auxiliary/anon-extern-mod-cross-crate-1.rs diff --git a/src/test/ui/duplicated-external-mods.rs b/src/test/ui/abi/duplicated-external-mods.rs index 05a279a3014..05a279a3014 100644 --- a/src/test/ui/duplicated-external-mods.rs +++ b/src/test/ui/abi/duplicated-external-mods.rs diff --git a/src/test/ui/extern/auxiliary/extern-crosscrate-source.rs b/src/test/ui/abi/extern/auxiliary/extern-crosscrate-source.rs index d4568d38e25..d4568d38e25 100644 --- a/src/test/ui/extern/auxiliary/extern-crosscrate-source.rs +++ b/src/test/ui/abi/extern/auxiliary/extern-crosscrate-source.rs diff --git a/src/test/ui/extern/extern-call-deep.rs b/src/test/ui/abi/extern/extern-call-deep.rs index 81f884dada9..81f884dada9 100644 --- a/src/test/ui/extern/extern-call-deep.rs +++ b/src/test/ui/abi/extern/extern-call-deep.rs diff --git a/src/test/ui/extern/extern-call-deep2.rs b/src/test/ui/abi/extern/extern-call-deep2.rs index b31489b1e10..b31489b1e10 100644 --- a/src/test/ui/extern/extern-call-deep2.rs +++ b/src/test/ui/abi/extern/extern-call-deep2.rs diff --git a/src/test/ui/extern/extern-call-direct.rs b/src/test/ui/abi/extern/extern-call-direct.rs index 72041764215..72041764215 100644 --- a/src/test/ui/extern/extern-call-direct.rs +++ b/src/test/ui/abi/extern/extern-call-direct.rs diff --git a/src/test/ui/extern/extern-call-indirect.rs b/src/test/ui/abi/extern/extern-call-indirect.rs index 158b54e4b8c..158b54e4b8c 100644 --- a/src/test/ui/extern/extern-call-indirect.rs +++ b/src/test/ui/abi/extern/extern-call-indirect.rs diff --git a/src/test/ui/extern/extern-call-scrub.rs b/src/test/ui/abi/extern/extern-call-scrub.rs index a7b1065c9e1..a7b1065c9e1 100644 --- a/src/test/ui/extern/extern-call-scrub.rs +++ b/src/test/ui/abi/extern/extern-call-scrub.rs diff --git a/src/test/ui/extern/extern-crosscrate.rs b/src/test/ui/abi/extern/extern-crosscrate.rs index 123ce20ca26..123ce20ca26 100644 --- a/src/test/ui/extern/extern-crosscrate.rs +++ b/src/test/ui/abi/extern/extern-crosscrate.rs diff --git a/src/test/ui/extern/extern-pass-TwoU16s.rs b/src/test/ui/abi/extern/extern-pass-TwoU16s.rs index 285bce2e19c..285bce2e19c 100644 --- a/src/test/ui/extern/extern-pass-TwoU16s.rs +++ b/src/test/ui/abi/extern/extern-pass-TwoU16s.rs diff --git a/src/test/ui/extern/extern-pass-TwoU32s.rs b/src/test/ui/abi/extern/extern-pass-TwoU32s.rs index fb18aa8d22f..fb18aa8d22f 100644 --- a/src/test/ui/extern/extern-pass-TwoU32s.rs +++ b/src/test/ui/abi/extern/extern-pass-TwoU32s.rs diff --git a/src/test/ui/extern/extern-pass-TwoU64s.rs b/src/test/ui/abi/extern/extern-pass-TwoU64s.rs index 419648263aa..419648263aa 100644 --- a/src/test/ui/extern/extern-pass-TwoU64s.rs +++ b/src/test/ui/abi/extern/extern-pass-TwoU64s.rs diff --git a/src/test/ui/extern/extern-pass-TwoU8s.rs b/src/test/ui/abi/extern/extern-pass-TwoU8s.rs index 53a6a0f29f8..53a6a0f29f8 100644 --- a/src/test/ui/extern/extern-pass-TwoU8s.rs +++ b/src/test/ui/abi/extern/extern-pass-TwoU8s.rs diff --git a/src/test/ui/extern/extern-pass-char.rs b/src/test/ui/abi/extern/extern-pass-char.rs index 22f841b4552..22f841b4552 100644 --- a/src/test/ui/extern/extern-pass-char.rs +++ b/src/test/ui/abi/extern/extern-pass-char.rs diff --git a/src/test/ui/extern/extern-pass-double.rs b/src/test/ui/abi/extern/extern-pass-double.rs index dbd0a2dfa48..dbd0a2dfa48 100644 --- a/src/test/ui/extern/extern-pass-double.rs +++ b/src/test/ui/abi/extern/extern-pass-double.rs diff --git a/src/test/ui/extern/extern-pass-empty.rs b/src/test/ui/abi/extern/extern-pass-empty.rs index 07099a24204..07099a24204 100644 --- a/src/test/ui/extern/extern-pass-empty.rs +++ b/src/test/ui/abi/extern/extern-pass-empty.rs diff --git a/src/test/ui/extern/extern-pass-u32.rs b/src/test/ui/abi/extern/extern-pass-u32.rs index f2efdb7d366..f2efdb7d366 100644 --- a/src/test/ui/extern/extern-pass-u32.rs +++ b/src/test/ui/abi/extern/extern-pass-u32.rs diff --git a/src/test/ui/extern/extern-pass-u64.rs b/src/test/ui/abi/extern/extern-pass-u64.rs index 975446d430c..975446d430c 100644 --- a/src/test/ui/extern/extern-pass-u64.rs +++ b/src/test/ui/abi/extern/extern-pass-u64.rs diff --git a/src/test/ui/extern/extern-return-TwoU16s.rs b/src/test/ui/abi/extern/extern-return-TwoU16s.rs index dd884ee77fe..dd884ee77fe 100644 --- a/src/test/ui/extern/extern-return-TwoU16s.rs +++ b/src/test/ui/abi/extern/extern-return-TwoU16s.rs diff --git a/src/test/ui/extern/extern-return-TwoU32s.rs b/src/test/ui/abi/extern/extern-return-TwoU32s.rs index d6aaf5c9eaf..d6aaf5c9eaf 100644 --- a/src/test/ui/extern/extern-return-TwoU32s.rs +++ b/src/test/ui/abi/extern/extern-return-TwoU32s.rs diff --git a/src/test/ui/extern/extern-return-TwoU64s.rs b/src/test/ui/abi/extern/extern-return-TwoU64s.rs index c5e4ebadc18..c5e4ebadc18 100644 --- a/src/test/ui/extern/extern-return-TwoU64s.rs +++ b/src/test/ui/abi/extern/extern-return-TwoU64s.rs diff --git a/src/test/ui/extern/extern-return-TwoU8s.rs b/src/test/ui/abi/extern/extern-return-TwoU8s.rs index a7cd21b2073..a7cd21b2073 100644 --- a/src/test/ui/extern/extern-return-TwoU8s.rs +++ b/src/test/ui/abi/extern/extern-return-TwoU8s.rs diff --git a/src/test/ui/foreign/auxiliary/foreign_lib.rs b/src/test/ui/abi/foreign/auxiliary/foreign_lib.rs index de6b0e2118a..de6b0e2118a 100644 --- a/src/test/ui/foreign/auxiliary/foreign_lib.rs +++ b/src/test/ui/abi/foreign/auxiliary/foreign_lib.rs diff --git a/src/test/ui/foreign/foreign-call-no-runtime.rs b/src/test/ui/abi/foreign/foreign-call-no-runtime.rs index c6afa07ad05..c6afa07ad05 100644 --- a/src/test/ui/foreign/foreign-call-no-runtime.rs +++ b/src/test/ui/abi/foreign/foreign-call-no-runtime.rs diff --git a/src/test/ui/foreign/foreign-dupe.rs b/src/test/ui/abi/foreign/foreign-dupe.rs index 3c9f0f583d4..3c9f0f583d4 100644 --- a/src/test/ui/foreign/foreign-dupe.rs +++ b/src/test/ui/abi/foreign/foreign-dupe.rs diff --git a/src/test/ui/foreign/foreign-fn-with-byval.rs b/src/test/ui/abi/foreign/foreign-fn-with-byval.rs index 3a35599aa57..3a35599aa57 100644 --- a/src/test/ui/foreign/foreign-fn-with-byval.rs +++ b/src/test/ui/abi/foreign/foreign-fn-with-byval.rs diff --git a/src/test/ui/foreign/foreign-no-abi.rs b/src/test/ui/abi/foreign/foreign-no-abi.rs index 2f33fb47656..2f33fb47656 100644 --- a/src/test/ui/foreign/foreign-no-abi.rs +++ b/src/test/ui/abi/foreign/foreign-no-abi.rs diff --git a/src/test/ui/invoke-external-foreign.rs b/src/test/ui/abi/invoke-external-foreign.rs index dbd2b4ad865..dbd2b4ad865 100644 --- a/src/test/ui/invoke-external-foreign.rs +++ b/src/test/ui/abi/invoke-external-foreign.rs diff --git a/src/test/ui/lib-defaults.rs b/src/test/ui/abi/lib-defaults.rs index cd0b0bb2321..cd0b0bb2321 100644 --- a/src/test/ui/lib-defaults.rs +++ b/src/test/ui/abi/lib-defaults.rs diff --git a/src/test/ui/macros/macros-in-extern.rs b/src/test/ui/abi/macros/macros-in-extern.rs index bba8b15cdb0..bba8b15cdb0 100644 --- a/src/test/ui/macros/macros-in-extern.rs +++ b/src/test/ui/abi/macros/macros-in-extern.rs diff --git a/src/test/ui/macros/macros-in-extern.stderr b/src/test/ui/abi/macros/macros-in-extern.stderr index 6ee33f4ab61..6ee33f4ab61 100644 --- a/src/test/ui/macros/macros-in-extern.stderr +++ b/src/test/ui/abi/macros/macros-in-extern.stderr diff --git a/src/test/ui/mir/mir_codegen_calls_variadic.rs b/src/test/ui/abi/mir/mir_codegen_calls_variadic.rs index dc9fee03b77..dc9fee03b77 100644 --- a/src/test/ui/mir/mir_codegen_calls_variadic.rs +++ b/src/test/ui/abi/mir/mir_codegen_calls_variadic.rs diff --git a/src/test/ui/numbers-arithmetic/i128-ffi.rs b/src/test/ui/abi/numbers-arithmetic/i128-ffi.rs index 19edf9779f3..19edf9779f3 100644 --- a/src/test/ui/numbers-arithmetic/i128-ffi.rs +++ b/src/test/ui/abi/numbers-arithmetic/i128-ffi.rs diff --git a/src/test/ui/abi/proc-macro/auxiliary/test-macros.rs b/src/test/ui/abi/proc-macro/auxiliary/test-macros.rs new file mode 100644 index 00000000000..27efa44f980 --- /dev/null +++ b/src/test/ui/abi/proc-macro/auxiliary/test-macros.rs @@ -0,0 +1,112 @@ +// force-host +// no-prefer-dynamic + +// Proc macros commonly used by tests. +// `panic`/`print` -> `panic_bang`/`print_bang` to avoid conflicts with standard macros. + +#![crate_type = "proc-macro"] + +extern crate proc_macro; +use proc_macro::TokenStream; + +// Macro that return empty token stream. + +#[proc_macro] +pub fn empty(_: TokenStream) -> TokenStream { + TokenStream::new() +} + +#[proc_macro_attribute] +pub fn empty_attr(_: TokenStream, _: TokenStream) -> TokenStream { + TokenStream::new() +} + +#[proc_macro_derive(Empty, attributes(empty_helper))] +pub fn empty_derive(_: TokenStream) -> TokenStream { + TokenStream::new() +} + +// Macro that panics. + +#[proc_macro] +pub fn panic_bang(_: TokenStream) -> TokenStream { + panic!("panic-bang"); +} + +#[proc_macro_attribute] +pub fn panic_attr(_: TokenStream, _: TokenStream) -> TokenStream { + panic!("panic-attr"); +} + +#[proc_macro_derive(Panic, attributes(panic_helper))] +pub fn panic_derive(_: TokenStream) -> TokenStream { + panic!("panic-derive"); +} + +// Macros that return the input stream. + +#[proc_macro] +pub fn identity(input: TokenStream) -> TokenStream { + input +} + +#[proc_macro_attribute] +pub fn identity_attr(_: TokenStream, input: TokenStream) -> TokenStream { + input +} + +#[proc_macro_derive(Identity, attributes(identity_helper))] +pub fn identity_derive(input: TokenStream) -> TokenStream { + input +} + +// Macros that iterate and re-collect the input stream. + +#[proc_macro] +pub fn recollect(input: TokenStream) -> TokenStream { + input.into_iter().collect() +} + +#[proc_macro_attribute] +pub fn recollect_attr(_: TokenStream, input: TokenStream) -> TokenStream { + input.into_iter().collect() +} + +#[proc_macro_derive(Recollect, attributes(recollect_helper))] +pub fn recollect_derive(input: TokenStream) -> TokenStream { + input.into_iter().collect() +} + +// Macros that print their input in the original and re-collected forms (if they differ). + +fn print_helper(input: TokenStream, kind: &str) -> TokenStream { + let input_display = format!("{}", input); + let input_debug = format!("{:#?}", input); + let recollected = input.into_iter().collect(); + let recollected_display = format!("{}", recollected); + let recollected_debug = format!("{:#?}", recollected); + println!("PRINT-{} INPUT (DISPLAY): {}", kind, input_display); + if recollected_display != input_display { + println!("PRINT-{} RE-COLLECTED (DISPLAY): {}", kind, recollected_display); + } + println!("PRINT-{} INPUT (DEBUG): {}", kind, input_debug); + if recollected_debug != input_debug { + println!("PRINT-{} RE-COLLECTED (DEBUG): {}", kind, recollected_debug); + } + recollected +} + +#[proc_macro] +pub fn print_bang(input: TokenStream) -> TokenStream { + print_helper(input, "BANG") +} + +#[proc_macro_attribute] +pub fn print_attr(_: TokenStream, input: TokenStream) -> TokenStream { + print_helper(input, "ATTR") +} + +#[proc_macro_derive(Print, attributes(print_helper))] +pub fn print_derive(input: TokenStream) -> TokenStream { + print_helper(input, "DERIVE") +} diff --git a/src/test/ui/proc-macro/macros-in-extern.rs b/src/test/ui/abi/proc-macro/macros-in-extern.rs index 0477b5c48ec..0477b5c48ec 100644 --- a/src/test/ui/proc-macro/macros-in-extern.rs +++ b/src/test/ui/abi/proc-macro/macros-in-extern.rs diff --git a/src/test/ui/proc-macro/macros-in-extern.stderr b/src/test/ui/abi/proc-macro/macros-in-extern.stderr index 6049c2aa448..6049c2aa448 100644 --- a/src/test/ui/proc-macro/macros-in-extern.stderr +++ b/src/test/ui/abi/proc-macro/macros-in-extern.stderr diff --git a/src/test/ui/segfault-no-out-of-stack.rs b/src/test/ui/abi/segfault-no-out-of-stack.rs index 626de4ed5b6..626de4ed5b6 100644 --- a/src/test/ui/segfault-no-out-of-stack.rs +++ b/src/test/ui/abi/segfault-no-out-of-stack.rs diff --git a/src/test/ui/stack-probes-lto.rs b/src/test/ui/abi/stack-probes-lto.rs index 9018ff4bfc2..9018ff4bfc2 100644 --- a/src/test/ui/stack-probes-lto.rs +++ b/src/test/ui/abi/stack-probes-lto.rs diff --git a/src/test/ui/stack-probes.rs b/src/test/ui/abi/stack-probes.rs index 1ab1d6df66d..1ab1d6df66d 100644 --- a/src/test/ui/stack-probes.rs +++ b/src/test/ui/abi/stack-probes.rs diff --git a/src/test/ui/statics/static-mut-foreign.rs b/src/test/ui/abi/statics/static-mut-foreign.rs index 5d6fa416b98..5d6fa416b98 100644 --- a/src/test/ui/statics/static-mut-foreign.rs +++ b/src/test/ui/abi/statics/static-mut-foreign.rs diff --git a/src/test/ui/structs-enums/struct-return.rs b/src/test/ui/abi/struct-enums/struct-return.rs index 5930fc4acbb..5930fc4acbb 100644 --- a/src/test/ui/structs-enums/struct-return.rs +++ b/src/test/ui/abi/struct-enums/struct-return.rs diff --git a/src/test/ui/union/union-c-interop.rs b/src/test/ui/abi/union/union-c-interop.rs index 00f04d5b7ff..00f04d5b7ff 100644 --- a/src/test/ui/union/union-c-interop.rs +++ b/src/test/ui/abi/union/union-c-interop.rs diff --git a/src/test/ui/variadic-ffi.rs b/src/test/ui/abi/variadic-ffi.rs index 3232a11d726..3232a11d726 100644 --- a/src/test/ui/variadic-ffi.rs +++ b/src/test/ui/abi/variadic-ffi.rs |
