Commit d32e8006 by Ian Lance Taylor

re PR go/78145 (Several go.test tests fail with error: integer constant overflow on 32bit targets)

	PR go/78145
    compiler: don't put print/println constants into temporaries
    
    It's not necessary, and it breaks setting their type to int64/uint64
    when appropriate.
    
    This fixes GCC PR 78145.
    
    Reviewed-on: https://go-review.googlesource.com/32475

From-SVN: r241740
parent cc656415
c353ffbe18d1538cac7f2a3fcefb846dbf1a6591 919ef699fe56a9b40c2bd0df07ac1378ce4a7fab
The first line of this file holds the git revision number of the last The first line of this file holds the git revision number of the last
merge done from the gofrontend repository. merge done from the gofrontend repository.
...@@ -7193,7 +7193,7 @@ Builtin_call_expression::do_lower(Gogo*, Named_object* function, ...@@ -7193,7 +7193,7 @@ Builtin_call_expression::do_lower(Gogo*, Named_object* function,
pa != this->args()->end(); pa != this->args()->end();
++pa) ++pa)
{ {
if (!(*pa)->is_variable()) if (!(*pa)->is_variable() && !(*pa)->is_constant())
{ {
Temporary_statement* temp = Temporary_statement* temp =
Statement::make_temporary(NULL, *pa, loc); Statement::make_temporary(NULL, *pa, loc);
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment