ArmA no longer uses those wiggly brackets and quotes interchangably: wiggly bracket = code, quotation marks = string.
So:
?({_x hasweapon "soandsoweapon"} count _unitarray)>0:goto "hasradio"
Should work, unless there's something wrong in the count thing (those thingies always confuse the heck out of me)
Wolfrug out.