diff options
Diffstat (limited to 'cpp/src/FreezeScript/AssignVisitor.cpp')
-rw-r--r-- | cpp/src/FreezeScript/AssignVisitor.cpp | 3 |
1 files changed, 2 insertions, 1 deletions
diff --git a/cpp/src/FreezeScript/AssignVisitor.cpp b/cpp/src/FreezeScript/AssignVisitor.cpp index 1037e6e96a3..ec1fb7ea5da 100644 --- a/cpp/src/FreezeScript/AssignVisitor.cpp +++ b/cpp/src/FreezeScript/AssignVisitor.cpp @@ -162,7 +162,8 @@ FreezeScript::AssignVisitor::visitEnum(const EnumDataPtr& dest) { if(_convert) { - if(!dest->setValue(i->integerValue())) + Ice::Long l = i->integerValue(); + if(l < 0 || l > INT_MAX || !dest->setValue(static_cast<Ice::Int>(l))) { rangeError(i->toString(), type); } |