blob: 29d36b40d4d7a1360b9e4542d1b6c70d6d3d6476 (
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
36
37
38
|
() dostuff[T](var T#[3]^ ptr) { // FIXME should this really be allowed? should at least require a length parameter.
}
() dostuff2(var any^ ptr) {
}
() dostuff3[T](var T^ ptr) {
}
() dostuff4(var byte#[3]^ ptr) {
}
() test() {
var byte#[3] data = [1,2,3];
var byte#[3]^ dataptr = @data;
// TODO autodetect the type parameter from the argument types!
dostuff[byte](@data);
dostuff[byte](@data as var byte#[3]^);
dostuff[byte](dataptr);
dostuff2(@data);
dostuff2(@data as var byte#[3]^);
dostuff2(dataptr);
dostuff3[byte#[3]](@data);
dostuff3[byte#[3]](@data as var byte#[3]^);
dostuff4(@data);
dostuff[byte](@data);
any^ ap = @data;
}
|