diff --git a/modules/mol/base/src/impl/query_impl.cc b/modules/mol/base/src/impl/query_impl.cc
index a70cfa813b39d63d9337cfb6135846d63796f8fb..965f1dbe418ce9bf391449d0bc1f46a215874c7b 100644
--- a/modules/mol/base/src/impl/query_impl.cc
+++ b/modules/mol/base/src/impl/query_impl.cc
@@ -283,12 +283,7 @@ bool QueryImpl::IsAlwaysUndef(const Node* ast,
   if (lop_node) {
     bool lhs = this->IsAlwaysUndef(lop_node->GetLHS(), target_level);
     bool rhs = this->IsAlwaysUndef(lop_node->GetRHS(), target_level);    
-    switch (lop_node->GetOP()) {
-      case LOP_AND:
-        return lhs || rhs;
-      case LOP_OR:
-        return lhs && rhs;
-    }
+    return lhs && rhs;
   }  
   else {
     const SelNode* sel_node = dynamic_cast<const SelNode*>(ast);