aboutsummaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorIan Lance Taylor <ian@gcc.gnu.org>2019-08-28 18:45:45 +0000
committerIan Lance Taylor <ian@gcc.gnu.org>2019-08-28 18:45:45 +0000
commit4ee38894afaf5839960e9c4750672c4f904575fe (patch)
tree2f170b19148c11bbfb649318c3d8e069e109d4bc /gcc
parenta0be978a8216b58562c8eff71df977aca7d78387 (diff)
downloadgcc-4ee38894afaf5839960e9c4750672c4f904575fe.zip
gcc-4ee38894afaf5839960e9c4750672c4f904575fe.tar.gz
gcc-4ee38894afaf5839960e9c4750672c4f904575fe.tar.bz2
compiler: handle unsafe conversion expression in escape analysis
Reviewed-on: https://go-review.googlesource.com/c/gofrontend/+/192037 From-SVN: r275000
Diffstat (limited to 'gcc')
-rw-r--r--gcc/go/gofrontend/MERGE2
-rw-r--r--gcc/go/gofrontend/escape.cc9
2 files changed, 10 insertions, 1 deletions
diff --git a/gcc/go/gofrontend/MERGE b/gcc/go/gofrontend/MERGE
index f596a69..54a5935 100644
--- a/gcc/go/gofrontend/MERGE
+++ b/gcc/go/gofrontend/MERGE
@@ -1,4 +1,4 @@
-189ff44b2c26f29f41f0eb159e0d8f3fa508ecae
+5d15923ada640befb236d5fe94f0c724e98e99d7
The first line of this file holds the git revision number of the last
merge done from the gofrontend repository.
diff --git a/gcc/go/gofrontend/escape.cc b/gcc/go/gofrontend/escape.cc
index 4cfb480..db3afc7 100644
--- a/gcc/go/gofrontend/escape.cc
+++ b/gcc/go/gofrontend/escape.cc
@@ -1706,6 +1706,15 @@ Escape_analysis_assign::expression(Expression** pexpr)
}
break;
+ case Expression::EXPRESSION_UNSAFE_CONVERSION:
+ {
+ Unsafe_type_conversion_expression* uce =
+ (*pexpr)->unsafe_conversion_expression();
+ Node* expr_node = Node::make_node(uce->expr());
+ this->assign(n, expr_node);
+ }
+ break;
+
case Expression::EXPRESSION_FIXED_ARRAY_CONSTRUCTION:
case Expression::EXPRESSION_SLICE_CONSTRUCTION:
{