Report errors in string escape sequences more verbosely

This commit is contained in:
Thomas Krijnen
2016-07-19 16:41:36 +02:00
parent cd2b0c3a05
commit fd4086aa8d
3 changed files with 21 additions and 4 deletions
+2 -2
View File
@@ -218,7 +218,7 @@ IfcCharacterDecoder::operator std::string() {
(current_char == '\'' && parse_state == APOSTROPHE)
) ) {
if ( parse_state == APOSTROPHE && current_char != '\'' ) break;
throw IfcException("Invalid character encountered");
throw IfcInvalidTokenException(file->Tell(), current_char);
} else {
parse_state = hex = hex_count = 0;
// NOTE: this is in fact wrong, this ought to be the representation of the character.
@@ -286,7 +286,7 @@ void IfcCharacterDecoder::dryRun() {
(current_char == '\'' && parse_state == APOSTROPHE)
) ) {
if ( parse_state == APOSTROPHE && current_char != '\'' ) break;
throw IfcException("Invalid character encountered");
throw IfcInvalidTokenException(file->Tell(), current_char);
} else {
parse_state = hex_count = 0;
}