summaryrefslogtreecommitdiffstats
path: root/src/test/ui/const-generics/const-generic-function.rs
diff options
context:
space:
mode:
Diffstat (limited to 'src/test/ui/const-generics/const-generic-function.rs')
-rw-r--r--src/test/ui/const-generics/const-generic-function.rs21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/test/ui/const-generics/const-generic-function.rs b/src/test/ui/const-generics/const-generic-function.rs
new file mode 100644
index 000000000..c8d2683e5
--- /dev/null
+++ b/src/test/ui/const-generics/const-generic-function.rs
@@ -0,0 +1,21 @@
+fn foo<const N: i32>() -> i32 {
+ N
+}
+
+const fn bar(n: i32, m: i32) -> i32 {
+ n
+}
+
+const fn baz() -> i32 {
+ 1
+}
+
+const FOO: i32 = 3;
+
+fn main() {
+ foo::<baz()>(); //~ ERROR expected type, found function `baz`
+ //~| ERROR unresolved item provided when a constant was expected
+ foo::<bar(bar(1, 1), bar(1, 1))>(); //~ ERROR expected type, found `1`
+ foo::<bar(1, 1)>(); //~ ERROR expected type, found `1`
+ foo::<bar(FOO, 2)>(); //~ ERROR expected type, found `2`
+}