const ::example = { get() { console.log(1); } }
const get = function () { console.log(2); }
const cond = Math.random() > 0.5;
cond ? null::example:get(); // How will this be parsed?
cond ? null::example:get() : get(); // and this?
(To avoid this hazard i think we can change ':' ext name operator to '.:', which seems to have no hazard at all)
cond ? null::example.:get() : get();
(To avoid this hazard i think we can change ':' ext name operator to '.:', which seems to have no hazard at all)