Compiler [Typechecker]: Second go at fixing some warnings. las.cmod:fix_type_field() is called by optimize() from the leaves going up. This means that the expression in eg `?` has typically already been typechecked when it is received by fix_type_field(). Move the special case to mknode(). CAVEAT EMPTOR: Calling fix_type_field() from mknode() in early compiler passes may cause strange and unexpected failures. The special case type adjustment is therefore only performed in the last compiler pass. Fixes warnings from eg Getopt.