aboutsummaryrefslogtreecommitdiff
path: root/gcc/go/gofrontend/statements.cc
diff options
context:
space:
mode:
Diffstat (limited to 'gcc/go/gofrontend/statements.cc')
-rw-r--r--gcc/go/gofrontend/statements.cc5
1 files changed, 4 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/statements.cc b/gcc/go/gofrontend/statements.cc
index af34670..ad249f6 100644
--- a/gcc/go/gofrontend/statements.cc
+++ b/gcc/go/gofrontend/statements.cc
@@ -4841,6 +4841,8 @@ Select_clauses::get_backend(Translate_context* context,
std::vector<std::vector<Bexpression*> > cases(count);
std::vector<Bstatement*> clauses(count);
+ Type* int32_type = Type::lookup_integer_type("int32");
+
int i = 0;
for (Clauses::iterator p = this->clauses_.begin();
p != this->clauses_.end();
@@ -4849,7 +4851,8 @@ Select_clauses::get_backend(Translate_context* context,
int index = p->index();
mpz_t ival;
mpz_init_set_ui(ival, index);
- Expression* index_expr = Expression::make_integer(&ival, NULL, location);
+ Expression* index_expr = Expression::make_integer(&ival, int32_type,
+ location);
mpz_clear(ival);
cases[i].push_back(tree_to_expr(index_expr->get_tree(context)));