From 7b3d3344728ea52af9e9cb5ebd26e4bf88b3b399 Mon Sep 17 00:00:00 2001 From: Thomas Krijnen Date: Fri, 29 Dec 2017 12:09:07 +0100 Subject: [PATCH] Warnings and errors --- src/ifcgeom_schema_agnostic/IteratorImplementation.cpp | 8 ++++---- src/ifcparse/IfcParse.cpp | 6 +++--- src/ifcparse/IfcUtil.cpp | 2 ++ 3 files changed, 9 insertions(+), 7 deletions(-) diff --git a/src/ifcgeom_schema_agnostic/IteratorImplementation.cpp b/src/ifcgeom_schema_agnostic/IteratorImplementation.cpp index 747771fc84..df747fb8e9 100644 --- a/src/ifcgeom_schema_agnostic/IteratorImplementation.cpp +++ b/src/ifcgeom_schema_agnostic/IteratorImplementation.cpp @@ -32,14 +32,14 @@ void IteratorFactoryImplementation

::bind(const std::string& schema_name, type template IfcGeom::IteratorImplementation

* IteratorFactoryImplementation

::construct(const std::string& schema_name, const IfcGeom::IteratorSettings& settings, IfcParse::IfcFile* file) { const std::string schema_name_lower = boost::to_lower_copy(schema_name); - std::map::type>::const_iterator it; + typename std::map::type>::const_iterator it; it = this->find(schema_name_lower); - if (it == end()) { + if (it == this->end()) { throw IfcParse::IfcException("No geometry iterator registered for " + schema_name); } return it->second(settings, file); } -template IteratorFactoryImplementation; -template IteratorFactoryImplementation; +template class IteratorFactoryImplementation; +template class IteratorFactoryImplementation; diff --git a/src/ifcparse/IfcParse.cpp b/src/ifcparse/IfcParse.cpp index a22c552b66..c7da43f20c 100644 --- a/src/ifcparse/IfcParse.cpp +++ b/src/ifcparse/IfcParse.cpp @@ -1227,10 +1227,10 @@ IfcFile::IfcFile(IfcParse::IfcSpfStream* s) { } IfcFile::IfcFile(const IfcParse::schema_definition* schema) - : schema_(schema) - , ifcroot_type_(schema_->declaration_by_name("IfcRoot")) + : parsing_complete_(false) , good_(false) - , parsing_complete_(false) + , schema_(schema) + , ifcroot_type_(schema_->declaration_by_name("IfcRoot")) , MaxId(0) , tokens(0) , stream(0) diff --git a/src/ifcparse/IfcUtil.cpp b/src/ifcparse/IfcUtil.cpp index 5edc5e4f03..48ea296329 100644 --- a/src/ifcparse/IfcUtil.cpp +++ b/src/ifcparse/IfcUtil.cpp @@ -233,6 +233,8 @@ IfcUtil::ArgumentType IfcUtil::from_parameter_type(const IfcParse::parameter_typ return IfcUtil::Argument_DOUBLE; case IfcParse::simple_type::string_type: return IfcUtil::Argument_STRING; + case IfcParse::simple_type::datatype_COUNT: + throw IfcParse::IfcException("Invalid simple type encountered"); } }