diff options
author | Andrew Macleod <amacleod@redhat.com> | 2016-04-01 13:24:32 +0000 |
---|---|---|
committer | Andrew Macleod <amacleod@redhat.com> | 2016-04-01 13:24:32 +0000 |
commit | aaa4dd2a46092f9d8ba8b2acb02b2cf8b51a7f29 (patch) | |
tree | e45c454441d6e297c0dc1911c12d727880f4264a | |
parent | 71f9bdae8c781c0b74813f54ba71ecc4b3ff87b4 (diff) |
c-convert and other FE versions
git-svn-id: https://gcc.gnu.org/svn/gcc/branches/ttype-pro-trunk@234672 138bc75d-0d04-0410-961f-82ee72b054a4
-rw-r--r-- | gcc/ada/gcc-interface/gigi.h | 2 | ||||
-rw-r--r-- | gcc/ada/gcc-interface/utils.c | 2 | ||||
-rw-r--r-- | gcc/c/c-convert.c | 9 | ||||
-rw-r--r-- | gcc/cp/cvt.c | 2 | ||||
-rw-r--r-- | gcc/fortran/convert.c | 2 | ||||
-rw-r--r-- | gcc/go/go-lang.c | 2 | ||||
-rw-r--r-- | gcc/jit/jit-playback.c | 2 | ||||
-rw-r--r-- | gcc/lto/lto-lang.c | 2 | ||||
-rw-r--r-- | gcc/tree.h | 2 |
9 files changed, 13 insertions, 12 deletions
diff --git a/gcc/ada/gcc-interface/gigi.h b/gcc/ada/gcc-interface/gigi.h index efde7e5bbea..d106cd42777 100644 --- a/gcc/ada/gcc-interface/gigi.h +++ b/gcc/ada/gcc-interface/gigi.h @@ -560,7 +560,7 @@ extern bool fntype_same_flags_p (const_tree, tree, bool, bool, bool); is always TYPE. This function implements all reasonable conversions; callers should filter out those that are not permitted by the language being compiled. */ -extern tree convert (tree type, tree expr); +extern tree convert (ttype_p type, tree expr); /* Create an expression whose value is that of EXPR converted to the common index type, which is sizetype. */ diff --git a/gcc/ada/gcc-interface/utils.c b/gcc/ada/gcc-interface/utils.c index 65859a84183..84e766ad194 100644 --- a/gcc/ada/gcc-interface/utils.c +++ b/gcc/ada/gcc-interface/utils.c @@ -4105,7 +4105,7 @@ convert_to_fat_pointer (tree type, tree expr) not permitted by the language being compiled. */ tree -convert (tree type, tree expr) +convert (ttype_p type, tree expr) { tree etype = TREE_TYPE (expr); enum tree_code ecode = TREE_CODE (etype); diff --git a/gcc/c/c-convert.c b/gcc/c/c-convert.c index 4167c3461f3..4b7eeffa1ff 100644 --- a/gcc/c/c-convert.c +++ b/gcc/c/c-convert.c @@ -31,6 +31,7 @@ along with GCC; see the file COPYING3. If not see #include "convert.h" #include "langhooks.h" #include "ubsan.h" +#include "ttype.h" /* Change of width--truncation and extension of integers or reals-- is represented with NOP_EXPR. Proper functioning of many things @@ -60,7 +61,7 @@ along with GCC; see the file COPYING3. If not see not permitted by the language being compiled. */ tree -convert (tree type, tree expr) +convert (ttype_p type, tree expr) { tree e = expr; enum tree_code code = TREE_CODE (type); @@ -68,7 +69,7 @@ convert (tree type, tree expr) tree ret; location_t loc = EXPR_LOCATION (expr); - if (type == error_mark_node + if (type == error_type_node || error_operand_p (expr)) return error_mark_node; @@ -152,8 +153,8 @@ convert (tree type, tree expr) { if (TREE_CODE (e) != COMPLEX_EXPR) { - tree subtype = TREE_TYPE (type); - tree elt_type = TREE_TYPE (TREE_TYPE (e)); + ttype *subtype = TREE_TYPE (type); + ttype *elt_type = TREE_TYPE (TREE_TYPE (e)); if (in_late_binary_op) e = save_expr (e); diff --git a/gcc/cp/cvt.c b/gcc/cp/cvt.c index 0d1048cd7fe..d8d56522f14 100644 --- a/gcc/cp/cvt.c +++ b/gcc/cp/cvt.c @@ -1449,7 +1449,7 @@ convert_to_void (tree expr, impl_conv_void implicit, tsubst_flags_t complain) do a little bit more work. */ tree -convert (tree type, tree expr) +convert (ttype_p type, tree expr) { tree intype; diff --git a/gcc/fortran/convert.c b/gcc/fortran/convert.c index 128d915f207..8005f854605 100644 --- a/gcc/fortran/convert.c +++ b/gcc/fortran/convert.c @@ -73,7 +73,7 @@ truthvalue_conversion (tree expr) not permitted by the language being compiled. */ tree -convert (tree type, tree expr) +convert (ttype_p type, tree expr) { tree e = expr; enum tree_code code; diff --git a/gcc/go/go-lang.c b/gcc/go/go-lang.c index fe67c3f9875..8b9ac418ec1 100644 --- a/gcc/go/go-lang.c +++ b/gcc/go/go-lang.c @@ -475,7 +475,7 @@ go_langhook_eh_personality (void) /* Functions called directly by the generic backend. */ tree -convert (tree type, tree expr) +convert (ttype_p type, tree expr) { if (type == error_mark_node || expr == error_mark_node diff --git a/gcc/jit/jit-playback.c b/gcc/jit/jit-playback.c index 579230d3f98..60e6ac49cb0 100644 --- a/gcc/jit/jit-playback.c +++ b/gcc/jit/jit-playback.c @@ -55,7 +55,7 @@ along with GCC; see the file COPYING3. If not see extern tree convert (tree type, tree expr); tree -convert (tree dst_type, tree expr) +convert (ttype_p dst_type, tree expr) { gcc_assert (gcc::jit::active_playback_ctxt); gcc::jit::active_playback_ctxt->add_error (NULL, "unhandled conversion"); diff --git a/gcc/lto/lto-lang.c b/gcc/lto/lto-lang.c index cbe0955bae8..e5a07a23d7d 100644 --- a/gcc/lto/lto-lang.c +++ b/gcc/lto/lto-lang.c @@ -1400,7 +1400,7 @@ struct lang_hooks lang_hooks = LANG_HOOKS_INITIALIZER; /* Language hooks that are not part of lang_hooks. */ tree -convert (tree type ATTRIBUTE_UNUSED, tree expr ATTRIBUTE_UNUSED) +convert (ttype_p type ATTRIBUTE_UNUSED, tree expr ATTRIBUTE_UNUSED) { gcc_unreachable (); } diff --git a/gcc/tree.h b/gcc/tree.h index fa4161e5be0..bfa1dfac9f6 100644 --- a/gcc/tree.h +++ b/gcc/tree.h @@ -4298,7 +4298,7 @@ extern ttype *build_variant_type_copy (ttype_p); extern ttype *type_hash_canon (unsigned int, ttype_p); -extern tree convert (tree, tree); +extern tree convert (ttype_p , tree); extern unsigned int expr_align (const_tree); extern tree size_in_bytes (const ttype_p); extern HOST_WIDE_INT int_size_in_bytes (const ttype_p); |