Don't fail on invalid enumeration literal

This commit is contained in:
Thomas Krijnen
2024-08-23 11:25:14 +02:00
parent 8b8663eb8e
commit 9c38a7c58b
+5 -1
View File
@@ -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));