Allowing has to be used on nonterminal types