From 047fda2fc5815aaeac1a262fb9447cf77f1e6ab6 Mon Sep 17 00:00:00 2001 From: Yuki Okushi Date: Sun, 4 Dec 2022 09:55:43 +0900 Subject: [PATCH] Add regression test for #79450 Signed-off-by: Yuki Okushi --- .../rfc-2632-const-trait-impl/issue-79450.rs | 20 +++++++++++++++++++ .../issue-79450.stderr | 12 +++++++++++ 2 files changed, 32 insertions(+) create mode 100644 src/test/ui/rfc-2632-const-trait-impl/issue-79450.rs create mode 100644 src/test/ui/rfc-2632-const-trait-impl/issue-79450.stderr diff --git a/src/test/ui/rfc-2632-const-trait-impl/issue-79450.rs b/src/test/ui/rfc-2632-const-trait-impl/issue-79450.rs new file mode 100644 index 0000000000000..b604c65d75100 --- /dev/null +++ b/src/test/ui/rfc-2632-const-trait-impl/issue-79450.rs @@ -0,0 +1,20 @@ +#![feature(const_fmt_arguments_new)] +#![feature(const_trait_impl)] + +#[const_trait] +trait Tr { + fn req(&self); + + fn prov(&self) { + println!("lul"); //~ ERROR: cannot call non-const fn `_print` in constant functions + self.req(); + } +} + +struct S; + +impl const Tr for S { + fn req(&self) {} +} + +fn main() {} diff --git a/src/test/ui/rfc-2632-const-trait-impl/issue-79450.stderr b/src/test/ui/rfc-2632-const-trait-impl/issue-79450.stderr new file mode 100644 index 0000000000000..082c0333fbfcd --- /dev/null +++ b/src/test/ui/rfc-2632-const-trait-impl/issue-79450.stderr @@ -0,0 +1,12 @@ +error[E0015]: cannot call non-const fn `_print` in constant functions + --> $DIR/issue-79450.rs:9:9 + | +LL | println!("lul"); + | ^^^^^^^^^^^^^^^ + | + = note: calls in constant functions are limited to constant functions, tuple structs and tuple variants + = note: this error originates in the macro `println` (in Nightly builds, run with -Z macro-backtrace for more info) + +error: aborting due to previous error + +For more information about this error, try `rustc --explain E0015`.