diff -r b602f0459f17 -r 1ecf916cc397 stage4/generate_c/generate_c.cc --- a/stage4/generate_c/generate_c.cc Tue Jun 12 17:15:24 2012 +0100 +++ b/stage4/generate_c/generate_c.cc Tue Jun 12 22:32:09 2012 +0200 @@ -782,7 +782,7 @@ /* signed_integer DOTDOT signed_integer */ //SYM_REF2(subrange_c, lower_limit, upper_limit) void *visit(subrange_c *symbol) { - int dimension = extract_integer_value(symbol->upper_limit) - extract_integer_value(symbol->lower_limit) + 1; + int dimension = extract_int64_value(symbol->upper_limit) - extract_int64_value(symbol->lower_limit) + 1; switch (current_mode) { case arrayname_im: current_array_name += "_";