# HG changeset patch # User František Kučera # Date 1576271981 -3600 # Node ID caee22a6370af6bacb66050945799bd36d898281 # Parent bbfb1944d269a3f2a4831ab253b05df4409de36a support signed integers, negative numbers; binary format change: encode numbers as SLEB128 diff -r bbfb1944d269 -r caee22a6370a src/GuileHandler.h --- a/src/GuileHandler.h Wed Oct 30 16:47:44 2019 +0100 +++ b/src/GuileHandler.h Fri Dec 13 22:19:41 2019 +0100 @@ -145,7 +145,7 @@ { assert(typeInfo == typeid (integer_t)); auto* typedValue = static_cast (value); - return scm_from_uint64(*typedValue); + return scm_from_int64(*typedValue); } case TypeId::STRING: { @@ -181,7 +181,7 @@ } case writer::TypeId::INTEGER: { - integer_t value = stoul(definition.value); + integer_t value = stol(definition.value); defineGuileVariable(definition.name, &value, typeid (value), TypeId::INTEGER); break; } @@ -212,7 +212,7 @@ } case writer::TypeId::INTEGER: { - integer_t value = scm_to_uint64(guileValue); + integer_t value = scm_to_int64(guileValue); return relationalWriter->writeAttribute(&value, typeid (value)); } case writer::TypeId::STRING: