diff --git a/src/ifcparse/IfcFile.cpp b/src/ifcparse/IfcFile.cpp index f7b256586d..47232b95cb 100644 --- a/src/ifcparse/IfcFile.cpp +++ b/src/ifcparse/IfcFile.cpp @@ -53,7 +53,11 @@ namespace { fn(IfcParse::TokenFunc::asBool(t)); } else if (t.type == IfcParse::Token_ENUMERATION) { if (decl->as_enumeration_type()) { - fn(EnumerationReference(decl->as_enumeration_type(), decl->as_enumeration_type()->lookup_enum_offset(IfcParse::TokenFunc::asStringRef(t)))); + try { + fn(EnumerationReference(decl->as_enumeration_type(), decl->as_enumeration_type()->lookup_enum_offset(IfcParse::TokenFunc::asStringRef(t)))); + } catch (IfcParse::IfcException& e) { + Logger::Error(e); + } } } else if (t.type == IfcParse::Token_FLOAT) { fn(IfcParse::TokenFunc::asFloat(t));