gccrs: Add named variadic argument test

Variadic arguments may have a name or a pattern. This commit provides two
new tests in order to ensure their correct behavior.

gcc/testsuite/ChangeLog:

	* rust/compile/pattern_variadic.rs: New test.
	* rust/execute/torture/named_variadic.rs: New test.

Signed-off-by: Pierre-Emmanuel Patry <pierre-emmanuel.patry@embecosm.com>
This commit is contained in:
Pierre-Emmanuel Patry 2023-11-06 11:37:50 +01:00 committed by Arthur Cohen
parent 8e3740a25e
commit 0df14bb1f3
2 changed files with 34 additions and 0 deletions

View file

@ -0,0 +1,14 @@
extern "C" {
fn printf(fmt: *const i8, _: ...);
}
fn main() -> i32 {
unsafe {
printf(
"%s" as *const str as *const i8,
"Message" as *const str as *const i8,
);
}
0
}

View file

@ -0,0 +1,20 @@
// { dg-output "Named variadic" }
extern "C" {
fn printf(fmt: *const i8, variadic: ...);
}
fn print(s: &str) {
unsafe {
printf(
"%s" as *const str as *const i8,
s as *const str as *const i8,
);
}
}
fn main() -> i32 {
print("Named variadic");
0
}