From: Pierre-Emmanuel Patry <pierre-emmanuel.pa...@embecosm.com> We need a finer grain to filter tests and organise them.
gcc/testsuite/ChangeLog: * rust/compile/builtin_macro_compile_error.rs: Move to... * rust/compile/macros/builtin/compile_error.rs: ...here. * rust/compile/builtin_macro_concat.rs: Move to... * rust/compile/macros/builtin/concat.rs: ...here. * rust/compile/builtin_macro_eager1.rs: Move to... * rust/compile/macros/builtin/eager1.rs: ...here. * rust/compile/builtin_macro_eager2.rs: Move to... * rust/compile/macros/builtin/eager2.rs: ...here. * rust/compile/builtin_macro_eager3.rs: Move to... * rust/compile/macros/builtin/eager3.rs: ...here. * rust/compile/builtin_macro_env.rs: Move to... * rust/compile/macros/builtin/env.rs: ...here. * rust/compile/builtin_macro_include_bytes.rs: Move to... * rust/compile/macros/builtin/include_bytes.rs: ...here. * rust/compile/builtin_macro_include_bytes_location_info.rs: Move to... * rust/compile/macros/builtin/include_bytes_location_info.rs: ...here. * rust/compile/builtin_macro_include_str.rs: Move to... * rust/compile/macros/builtin/include_str.rs: ...here. * rust/compile/builtin_macro_include_str_location_info.rs: Move to... * rust/compile/macros/builtin/include_str_location_info.rs: ...here. * rust/compile/builtin_macro_not_found.rs: Move to... * rust/compile/macros/builtin/not_found.rs: ...here. * rust/compile/builtin_macro_recurse2.rs: Move to... * rust/compile/macros/builtin/recurse2.rs: ...here. * rust/compile/macros/builtin/builtin_macro.exp: New test. * rust/compile/invalid_utf8: Move invalid-utf8 data to... * rust/compile/macros/builtin/invalid_utf8: ...here. Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.pa...@embecosm.com> --- .../compile/builtin_macro_include_bytes.rs | 15 -------- .../rust/compile/builtin_macro_include_str.rs | 16 --------- .../compile/macros/builtin/builtin_macro.exp | 35 +++++++++++++++++++ .../builtin/compile_error.rs} | 0 .../builtin/concat.rs} | 0 .../builtin/eager1.rs} | 0 .../builtin/eager2.rs} | 0 .../builtin/eager3.rs} | 0 .../builtin/env.rs} | 0 .../compile/macros/builtin/include_bytes.rs | 15 ++++++++ .../builtin/include_bytes_location_info.rs} | 0 .../compile/macros/builtin/include_str.rs | 16 +++++++++ .../builtin/include_str_location_info.rs} | 0 .../compile/{ => macros/builtin}/invalid_utf8 | 0 .../builtin/not_found.rs} | 0 .../builtin/recurse2.rs} | 0 16 files changed, 66 insertions(+), 31 deletions(-) delete mode 100644 gcc/testsuite/rust/compile/builtin_macro_include_bytes.rs delete mode 100644 gcc/testsuite/rust/compile/builtin_macro_include_str.rs create mode 100644 gcc/testsuite/rust/compile/macros/builtin/builtin_macro.exp rename gcc/testsuite/rust/compile/{builtin_macro_compile_error.rs => macros/builtin/compile_error.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_concat.rs => macros/builtin/concat.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_eager1.rs => macros/builtin/eager1.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_eager2.rs => macros/builtin/eager2.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_eager3.rs => macros/builtin/eager3.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_env.rs => macros/builtin/env.rs} (100%) create mode 100644 gcc/testsuite/rust/compile/macros/builtin/include_bytes.rs rename gcc/testsuite/rust/compile/{builtin_macro_include_bytes_location_info.rs => macros/builtin/include_bytes_location_info.rs} (100%) create mode 100644 gcc/testsuite/rust/compile/macros/builtin/include_str.rs rename gcc/testsuite/rust/compile/{builtin_macro_include_str_location_info.rs => macros/builtin/include_str_location_info.rs} (100%) rename gcc/testsuite/rust/compile/{ => macros/builtin}/invalid_utf8 (100%) rename gcc/testsuite/rust/compile/{builtin_macro_not_found.rs => macros/builtin/not_found.rs} (100%) rename gcc/testsuite/rust/compile/{builtin_macro_recurse2.rs => macros/builtin/recurse2.rs} (100%) diff --git a/gcc/testsuite/rust/compile/builtin_macro_include_bytes.rs b/gcc/testsuite/rust/compile/builtin_macro_include_bytes.rs deleted file mode 100644 index 9972c10b49a..00000000000 --- a/gcc/testsuite/rust/compile/builtin_macro_include_bytes.rs +++ /dev/null @@ -1,15 +0,0 @@ -#![feature(rustc_attrs)] - -#[rustc_builtin_macro] -macro_rules! include_bytes { - () => {{}}; -} - -fn main () { - let file = "include.txt"; - include_bytes! (file); // { dg-error "argument must be a string literal" "" } - include_bytes! (); // { dg-error "macro takes 1 argument" "" } - include_bytes! ("foo.txt", "bar.txt"); // { dg-error "macro takes 1 argument" "" } - include_bytes! ("builtin_macro_include_bytes.rs"); // ok - include_bytes! ("builtin_macro_include_bytes.rs",); // trailing comma ok -} diff --git a/gcc/testsuite/rust/compile/builtin_macro_include_str.rs b/gcc/testsuite/rust/compile/builtin_macro_include_str.rs deleted file mode 100644 index d6d7a76856f..00000000000 --- a/gcc/testsuite/rust/compile/builtin_macro_include_str.rs +++ /dev/null @@ -1,16 +0,0 @@ -#![feature(rustc_attrs)] - -#[rustc_builtin_macro] -macro_rules! include_str { - () => {{}}; -} - -fn main () { - let file = "include.txt"; - include_str! (file); // { dg-error "argument must be a string literal" "" } - include_str! (); // { dg-error "macro takes 1 argument" "" } - include_str! ("foo.txt", "bar.txt"); // { dg-error "macro takes 1 argument" "" } - include_str! ("builtin_macro_include_str.rs"); // ok - include_str! ("builtin_macro_include_str.rs",); // trailing comma ok - include_str! ("invalid_utf8"); // { dg-error "invalid_utf8 was not a valid utf-8 file" "" } -} diff --git a/gcc/testsuite/rust/compile/macros/builtin/builtin_macro.exp b/gcc/testsuite/rust/compile/macros/builtin/builtin_macro.exp new file mode 100644 index 00000000000..ac891db246e --- /dev/null +++ b/gcc/testsuite/rust/compile/macros/builtin/builtin_macro.exp @@ -0,0 +1,35 @@ +# Copyright (C) 2021-2024 Free Software Foundation, Inc. + +# This program is free software; you can redistribute it and/or modify +# it under the terms of the GNU General Public License as published by +# the Free Software Foundation; either version 3 of the License, or +# (at your option) any later version. +# +# This program is distributed in the hope that it will be useful, +# but WITHOUT ANY WARRANTY; without even the implied warranty of +# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the +# GNU General Public License for more details. +# +# You should have received a copy of the GNU General Public License +# along with GCC; see the file COPYING3. If not see +# <http://www.gnu.org/licenses/>. + +# Compile tests, no torture testing. +# +# These tests raise errors in the front end; torture testing doesn't apply. + +# Load support procs. +load_lib rust-dg.exp + +# Initialize `dg'. +dg-init + +# Main loop. +set saved-dg-do-what-default ${dg-do-what-default} + +set dg-do-what-default "compile" +dg-runtest [lsort [glob -nocomplain $srcdir/$subdir/*.rs]] "" "" +set dg-do-what-default ${saved-dg-do-what-default} + +# All done. +dg-finish diff --git a/gcc/testsuite/rust/compile/builtin_macro_compile_error.rs b/gcc/testsuite/rust/compile/macros/builtin/compile_error.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_compile_error.rs rename to gcc/testsuite/rust/compile/macros/builtin/compile_error.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_concat.rs b/gcc/testsuite/rust/compile/macros/builtin/concat.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_concat.rs rename to gcc/testsuite/rust/compile/macros/builtin/concat.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_eager1.rs b/gcc/testsuite/rust/compile/macros/builtin/eager1.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_eager1.rs rename to gcc/testsuite/rust/compile/macros/builtin/eager1.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_eager2.rs b/gcc/testsuite/rust/compile/macros/builtin/eager2.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_eager2.rs rename to gcc/testsuite/rust/compile/macros/builtin/eager2.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_eager3.rs b/gcc/testsuite/rust/compile/macros/builtin/eager3.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_eager3.rs rename to gcc/testsuite/rust/compile/macros/builtin/eager3.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_env.rs b/gcc/testsuite/rust/compile/macros/builtin/env.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_env.rs rename to gcc/testsuite/rust/compile/macros/builtin/env.rs diff --git a/gcc/testsuite/rust/compile/macros/builtin/include_bytes.rs b/gcc/testsuite/rust/compile/macros/builtin/include_bytes.rs new file mode 100644 index 00000000000..88ceaf18aa4 --- /dev/null +++ b/gcc/testsuite/rust/compile/macros/builtin/include_bytes.rs @@ -0,0 +1,15 @@ +#![feature(rustc_attrs)] + +#[rustc_builtin_macro] +macro_rules! include_bytes { + () => {{}}; +} + +fn main() { + let file = "include.txt"; + include_bytes!(file); // { dg-error "argument must be a string literal" "" } + include_bytes!(); // { dg-error "macro takes 1 argument" "" } + include_bytes!("foo.txt", "bar.txt"); // { dg-error "macro takes 1 argument" "" } + include_bytes!("include_bytes.rs"); // ok + include_bytes!("include_bytes.rs",); // trailing comma ok +} diff --git a/gcc/testsuite/rust/compile/builtin_macro_include_bytes_location_info.rs b/gcc/testsuite/rust/compile/macros/builtin/include_bytes_location_info.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_include_bytes_location_info.rs rename to gcc/testsuite/rust/compile/macros/builtin/include_bytes_location_info.rs diff --git a/gcc/testsuite/rust/compile/macros/builtin/include_str.rs b/gcc/testsuite/rust/compile/macros/builtin/include_str.rs new file mode 100644 index 00000000000..37a7218556a --- /dev/null +++ b/gcc/testsuite/rust/compile/macros/builtin/include_str.rs @@ -0,0 +1,16 @@ +#![feature(rustc_attrs)] + +#[rustc_builtin_macro] +macro_rules! include_str { + () => {{}}; +} + +fn main() { + let file = "include.txt"; + include_str!(file); // { dg-error "argument must be a string literal" "" } + include_str!(); // { dg-error "macro takes 1 argument" "" } + include_str!("foo.txt", "bar.txt"); // { dg-error "macro takes 1 argument" "" } + include_str!("include_str.rs"); // ok + include_str!("include_str.rs",); // trailing comma ok + include_str!("invalid_utf8"); // { dg-error "invalid_utf8 was not a valid utf-8 file" "" } +} diff --git a/gcc/testsuite/rust/compile/builtin_macro_include_str_location_info.rs b/gcc/testsuite/rust/compile/macros/builtin/include_str_location_info.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_include_str_location_info.rs rename to gcc/testsuite/rust/compile/macros/builtin/include_str_location_info.rs diff --git a/gcc/testsuite/rust/compile/invalid_utf8 b/gcc/testsuite/rust/compile/macros/builtin/invalid_utf8 similarity index 100% rename from gcc/testsuite/rust/compile/invalid_utf8 rename to gcc/testsuite/rust/compile/macros/builtin/invalid_utf8 diff --git a/gcc/testsuite/rust/compile/builtin_macro_not_found.rs b/gcc/testsuite/rust/compile/macros/builtin/not_found.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_not_found.rs rename to gcc/testsuite/rust/compile/macros/builtin/not_found.rs diff --git a/gcc/testsuite/rust/compile/builtin_macro_recurse2.rs b/gcc/testsuite/rust/compile/macros/builtin/recurse2.rs similarity index 100% rename from gcc/testsuite/rust/compile/builtin_macro_recurse2.rs rename to gcc/testsuite/rust/compile/macros/builtin/recurse2.rs -- 2.45.2