typcase SELF_TYPE
selftypebadreturn
selftypeparam