abstract Under(T) { @:from public static function from(v:T) return v; } class Main { static public function main() { var a1:Under<{}> = { }; } }