diff --git a/src/graph/helper.cc b/src/graph/helper.cc
index b6bf6ac9cebaa82bb077c6c69d239d6ad52563e7..7fa58624d56a51bef2f19280a5f6a047cac51b06 100644
--- a/src/graph/helper.cc
+++ b/src/graph/helper.cc
@@ -120,13 +120,7 @@ namespace hpp {
             struct CaseTraits {
               static const bool pregrasp = (gCase & WithPreGrasp);
               static const bool preplace = (gCase & WithPrePlace);
-              /// FIXME
-              // It should be
-              // static const bool intersec = !((gCase & NoGrasp) || (gCase & NoPlace));
-              // but when NoPlace | WithPreGrasp, we need a LevelSetEdge after
-              // the pregrasp waypoint state. Sadly the current implementation of
-              // WaypointEdge does not allow the last edge of type other than Edge.
-              static const bool intersec = pregrasp || preplace || ((gCase & GraspOnly) && (gCase & PlaceOnly));
+              static const bool intersec = !((gCase & NoGrasp) || (gCase & NoPlace));
 
               static const bool valid =
                    ( (gCase & WithPreGrasp) || (gCase & GraspOnly) || (gCase & NoGrasp) )