diff --git a/Kernel/Polynomial.hpp b/Kernel/Polynomial.hpp index e4c02f7a5..bd19c4b79 100644 --- a/Kernel/Polynomial.hpp +++ b/Kernel/Polynomial.hpp @@ -661,8 +661,9 @@ IterTraits iterArgsPnf(Literal* lit); } // namespace Kernel -// include needs to go here, since we need the specialization BottomUpChildIter to declare Iter -#include "Kernel/BottomUpEvaluation.hpp" +// include needs to go here: the specialization BottomUpChildIter needs PolyNf complete, and +// every TU that uses PolyNf::SubtermIter must see it (otherwise the empty primary template gets instantiated, an ODR violation) +#include "Kernel/PolynomialBottomUpEvaluation.hpp" namespace Kernel {