ifcopenshell.validate to catch invalid entities used in entities attributes #6409

Example

```
For instance:
    # 1 =IFCCARTESIANPOINT((5.,5.,nan.));
Entity with name 'nan.' not found in schema 'IFC4'
```
This commit is contained in:
Andrej730
2025-03-25 17:06:53 +05:00
parent bd92821b2e
commit 0d7439c7a5
2 changed files with 11 additions and 1 deletions
+1 -1
View File
@@ -726,7 +726,7 @@ void IfcParse::IfcFile::load(unsigned entity_instance_name, const IfcParse::enti
context.push(simple_type_instance);
simple_type_instance->file_ = this;
} catch (IfcException& e) {
Logger::Message(Logger::LOG_ERROR, e.what());
Logger::Message(Logger::LOG_ERROR, std::string(e.what()) + " at offset " + std::to_string(next.startPos));
// #4070 We didn't actually capture an aggregate entry, undo length increment.
return_value--;
}