diff --git a/src/problem/problem.cpp b/src/problem/problem.cpp index 76c90a4569bd9585c09b92fc89e8ace80e3b11c2..cf2d49d942d960b8b4b42fc4f09415b54fa22fc5 100644 --- a/src/problem/problem.cpp +++ b/src/problem/problem.cpp @@ -1910,14 +1910,6 @@ bool Problem::check(int verbose_level) const if (found_here) cout << " Fo" << Fo->id(); found = found || found_here; - // Find in Captures of the constrained Frame - for (auto FoC : Fo->getCaptureList()) - { - sb_vec = FoC->getStateBlockVec(); - found_here = (std::find(sb_vec.begin(), sb_vec.end(), sb) != sb_vec.end()); - if (found_here) cout << " FoC" << FoC->id(); - found = found || found_here; - } } // find in constrained Capture @@ -1929,6 +1921,16 @@ bool Problem::check(int verbose_level) const found = found || found_here; } + // Find in other Captures of the constrained Frame + if (!found_here && Fo) + for (auto FoC : Fo->getCaptureList()) + { + sb_vec = FoC->getStateBlockVec(); + found_here = (std::find(sb_vec.begin(), sb_vec.end(), sb) != sb_vec.end()); + if (found_here) cout << " FoC" << FoC->id(); + found = found || found_here; + } + // find in constrained Feature if (fo) {