(PUP-3351) Evaluate ENC classes in the correct order
Without this patch classes declared from an ENC are evaluated in the
wrong order. This is a problem because classes declared without
parameters are evaluated prior to classes with parameters which causes
an Error: Duplicate declaration when the classes with parameters are
evaluated. According to the code comments for the
evaluate_node_classes method, the expected behavior is that classes
with an empty set of parameters will not conflict with classes that have
declared parameters.