enum StrongTag {
var,
str[32],
Float:dim
}
new Type[StrongTag] = {
1,
"wat",
-1.0
};
new Car[StrongTag];
stock Foo(arr[]) {
Car = arr;
return 1;
}
main() {
Foo(Type);
}
enum StrongTag {
var,
str[10],
Float:dim
}
new Bar[StrongTag] = {
1,
"sup",
-1.0
};
new Car[StrongTag];
stock Foo(v, s[], Float:d) {
Car[var] = v;
strcpy(Car[str], s);
Car[dim] = d;
return 1;
}
main() {
Foo(Bar[var], Bar[str], Bar[dim]);
}
enum weakTag {
var,
Float:dim
}
new Type[weakTag] = {
1,
-1.0
};
new Car[weakTag];
stock Foo(const v[]) {
Car = weakTag:v; //Line 53
return 1;
}
stock FooBar(v) {
Car = weakTag:v; //Line 57
return 1;
}
stock FooBarFoo(weakTag:v) {
Car = weakTag:v; //Line 61
return 1;
}
stock FooBarFooBar(weakTag:v[]) {
Car = v; //Line 65
return 1;
}
main() {
Foo(Type);
FooBar(Type); //Line 71
FooBarFoo(Type);
FooBarFooBar(Type);
new weakTag:Tmp;
Foo(Tmp);
FooBar(Tmp);
FooBarFoo(Tmp);
FooBarFooBar(Tmp);
}
|
truck.pwn(53) : error 047: array sizes do not match, or destination array is too small truck.pwn(57) : error 033: array must be indexed (variable "Car") truck.pwn(61) : error 033: array must be indexed (variable "Car") truck.pwn(65) : error 047: array sizes do not match, or destination array is too small truck.pwn(71) : error 035: argument type mismatch (argument 1) truck.pwn(72) : error 035: argument type mismatch (argument 1) truck.pwn(73) : warning 213: tag mismatch truck.pwn(75) : error 035: argument type mismatch (argument 1) truck.pwn(7 : error 035: argument type mismatch (argument 1) |
stock Foo(const v[], s = sizeof v) {
printf("%d %d", sizeof Car, s);
return 1;
}
stock Foo(v[weakTag])