blob: 61e15f9ae6a82e7641af978fce9d4a36cecf6457 (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
|
const FooType = opaque {};
export fn entry1() void {
const someFuncPtr: fn (FooType) void = undefined;
_ = someFuncPtr;
}
export fn entry2() void {
const someFuncPtr: fn (@TypeOf(null)) void = undefined;
_ = someFuncPtr;
}
fn foo(p: FooType) void {
_ = p;
}
export fn entry3() void {
_ = foo;
}
fn bar(p: @TypeOf(null)) void {
_ = p;
}
export fn entry4() void {
_ = bar;
}
// error
// backend=stage2
// target=native
//
// :3:28: error: parameter of opaque type 'tmp.FooType' not allowed
// :1:17: note: opaque declared here
// :8:28: error: parameter of type '@TypeOf(null)' not allowed
// :12:8: error: parameter of opaque type 'tmp.FooType' not allowed
// :1:17: note: opaque declared here
// :19:8: error: parameter of type '@TypeOf(null)' not allowed
|