puppetlabs/puppet — pull request #3126 by jeffmccune (2014-09-26 23:27:08+00:00)
Title: (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.

Note: This should be included as a bug fix in the 3.7.x series because the
actual behavior does not match the expected behavior in 3.7.1.