(a || b)::c; a || b::c; ::obj.prop; (void 0)::func(); (+0)::is(-0); a::b.c; a::(b.c()); a::b.c(); a::(b.c()()); a::(b.c()()); a::(b.c())(); a::(b.c().d); a::(c().d.e); a::(b()); a::(b::c()); a::(b()::c); a::(b().c::d); a::(b.c::d); a::(b::c.d); a::(b.c::d::e); a::(b::c::d); a::(b::c::d.e); a::(b::c::d).e; a::(void 0); a::(b.c()::d.e); a::(b.c::d.e); a::(b.c::d.e)::f.g; b.c::d.e; (b.c::d).e; (b::c::d).e; new (a::b)(); new f(a::b); f[a::b]; f[a::b()];