diff options
Diffstat (limited to 'src/test/ui/const-generics/intrinsics-type_name-as-const-argument.rs')
-rw-r--r-- | src/test/ui/const-generics/intrinsics-type_name-as-const-argument.rs | 21 |
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/intrinsics-type_name-as-const-argument.rs b/src/test/ui/const-generics/intrinsics-type_name-as-const-argument.rs new file mode 100644 index 000000000..147a00cb2 --- /dev/null +++ b/src/test/ui/const-generics/intrinsics-type_name-as-const-argument.rs @@ -0,0 +1,21 @@ +// [full] check-pass +// revisions: full min + +#![cfg_attr(full, allow(incomplete_features))] +#![cfg_attr(full, feature(adt_const_params, generic_const_exprs))] + +#![feature(core_intrinsics)] +#![feature(const_type_name)] + +trait Trait<const S: &'static str> {} +//[min]~^ ERROR `&'static str` is forbidden as the type of a const generic parameter + +struct Bug<T> +where + T: Trait<{std::intrinsics::type_name::<T>()}> + //[min]~^ ERROR generic parameters may not be used in const operations +{ + t: T +} + +fn main() {} |