hi,
shouldn't the following create some runtime errors if i turn on -rt?
void main() { string|int foo; Stdio.File f; object ff; mixed gazong;
foo = 1; gazong = foo; ff = gazong; f = ff; write("%O\n", f); }
greetings, martin.
You need to fix all strict type warnings first.
$ ./pike -rT -rt -w lyskom_13004388.pike ... lyskom_13004388.pike:12: Warning: An expression type mixed cannot be assigned to a variable of type object. lyskom_13004388.pike:13: Warning: An expression type object cannot be assigned to a variable of type { File = object(implements 65627) }. 1
After fixing the warnings you get:
$ ./pike -mmaster.pike -rt -w lyskom_13004388.pike main(): Soft cast failed. Expected object, got int(1..1) lyskom_13004388.pike:12: /main()->main()
so runtime typechecking needs strict types, but -rt does not imply that?
btw, on 7.6.7 i get many warnings from the lib itself.
pike-devel@lists.lysator.liu.se