diff options
author | Jan Hubicka <hubicka@ucw.cz> | 2015-06-09 00:24:57 +0200 |
---|---|---|
committer | Jan Hubicka <hubicka@gcc.gnu.org> | 2015-06-08 22:24:57 +0000 |
commit | 64578d988427290be041802901a005b61cebf95a (patch) | |
tree | 35be7a92fc2dbe146f3c69e913968b9856f0f396 /gcc/tree.c | |
parent | 44433db051a923a6e32baa8e448ec8cf5a88f5f8 (diff) | |
download | gcc-64578d988427290be041802901a005b61cebf95a.zip gcc-64578d988427290be041802901a005b61cebf95a.tar.gz gcc-64578d988427290be041802901a005b61cebf95a.tar.bz2 |
lto.c (hash_canonical_type): Drop hashing of TYPE_STRING_FLAG.
* lto.c (hash_canonical_type): Drop hashing of TYPE_STRING_FLAG.
* tree.c (gimple_canonical_types_compatible_p): Drop comparsion of
TYPE_STRING_FLAG.
* gfortran.dg/lto/bind_c-2b_0.f90: New testcase
* gfortran.dg/lto/bind_c-2b_1.c: New testcase
From-SVN: r224252
Diffstat (limited to 'gcc/tree.c')
-rw-r--r-- | gcc/tree.c | 6 |
1 files changed, 3 insertions, 3 deletions
@@ -12948,9 +12948,9 @@ gimple_canonical_types_compatible_p (const_tree t1, const_tree t2, || TYPE_UNSIGNED (t1) != TYPE_UNSIGNED (t2)) return false; - if (TREE_CODE (t1) == INTEGER_TYPE - && TYPE_STRING_FLAG (t1) != TYPE_STRING_FLAG (t2)) - return false; + /* Fortran's C_SIGNED_CHAR is !TYPE_STRING_FLAG but needs to be + interoperable with "signed char". Unless all frontends are revisited + to agree on these types, we must ignore the flag completely. */ /* Fortran standard define C_PTR type that is compatible with every C pointer. For this reason we need to glob all pointers into one. |