> Object@ is a type, so if you write: > > void foo(Object@ o) {... > > It means the compiler statically refuses you to give a nullable > type to foo. So inside foo there is no need for a run time test. > > Good work :-) > > Bye, > bearophile Change line 14 from OpToken = r"\?", into OpToken = r"\@", And it works as you like. ;) I will change it too.