re PR c++/91222 (507.cactuBSSN_r build fails in warn_types_mismatch at ipa-devirt.c:1006 since r273571)
PR lto/91222 * ipa-devirt.c (warn_types_mismatch): Do not ICE when anonymous type is matched with non-C++ type * g++.dg/lto/odr-6_0.C: New testcase. * g++.dg/lto/odr-6_1.c: New testcase. From-SVN: r276420
This commit is contained in:
parent
a9346b558b
commit
56f1a16cae
|
@ -1,3 +1,9 @@
|
||||||
|
2019-10-01 Jan Hubicka <hubicka@ucw.cz>
|
||||||
|
|
||||||
|
PR lto/91222
|
||||||
|
* ipa-devirt.c (warn_types_mismatch): Do not ICE when anonymous type
|
||||||
|
is matched with non-C++ type
|
||||||
|
|
||||||
2019-10-01 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
|
2019-10-01 Prathamesh Kulkarni <prathamesh.kulkarni@linaro.org>
|
||||||
|
|
||||||
* tree-if-conv.c (tree_if_conversion): Move call to ifcvt_local_dce
|
* tree-if-conv.c (tree_if_conversion): Move call to ifcvt_local_dce
|
||||||
|
|
|
@ -992,14 +992,14 @@ warn_types_mismatch (tree t1, tree t2, location_t loc1, location_t loc2)
|
||||||
std::swap (t1, t2);
|
std::swap (t1, t2);
|
||||||
std::swap (loc_t1, loc_t2);
|
std::swap (loc_t1, loc_t2);
|
||||||
}
|
}
|
||||||
gcc_assert (TYPE_NAME (t1) && TYPE_NAME (t2)
|
gcc_assert (TYPE_NAME (t1)
|
||||||
&& TREE_CODE (TYPE_NAME (t1)) == TYPE_DECL
|
&& TREE_CODE (TYPE_NAME (t1)) == TYPE_DECL);
|
||||||
&& TREE_CODE (TYPE_NAME (t2)) == TYPE_DECL);
|
|
||||||
tree n1 = TYPE_NAME (t1);
|
tree n1 = TYPE_NAME (t1);
|
||||||
tree n2 = TYPE_NAME (t2);
|
tree n2 = TYPE_NAME (t2) ? TYPE_NAME (t2) : NULL;
|
||||||
|
|
||||||
if (TREE_CODE (n1) == TYPE_DECL)
|
if (TREE_CODE (n1) == TYPE_DECL)
|
||||||
n1 = DECL_NAME (n1);
|
n1 = DECL_NAME (n1);
|
||||||
if (TREE_CODE (n2) == TYPE_DECL)
|
if (n2 && TREE_CODE (n2) == TYPE_DECL)
|
||||||
n2 = DECL_NAME (n2);
|
n2 = DECL_NAME (n2);
|
||||||
/* Most of the time, the type names will match, do not be unnecesarily
|
/* Most of the time, the type names will match, do not be unnecesarily
|
||||||
verbose. */
|
verbose. */
|
||||||
|
|
|
@ -1,3 +1,8 @@
|
||||||
|
2019-10-01 Jan Hubicka <hubicka@ucw.cz>
|
||||||
|
|
||||||
|
* g++.dg/lto/odr-6_0.C: New testcase.
|
||||||
|
* g++.dg/lto/odr-6_1.c: New testcase.
|
||||||
|
|
||||||
2019-10-01 Jan Hubicka <hubicka@ucw.cz>
|
2019-10-01 Jan Hubicka <hubicka@ucw.cz>
|
||||||
|
|
||||||
* gcc.dg/tree-ssa/ssa-thread-12.c: Fix warning introduced by my
|
* gcc.dg/tree-ssa/ssa-thread-12.c: Fix warning introduced by my
|
||||||
|
|
|
@ -0,0 +1,8 @@
|
||||||
|
// { dg-lto-do link }
|
||||||
|
extern "C" {
|
||||||
|
struct { // { dg-lto-message "" 2 }
|
||||||
|
} admbaserest_;
|
||||||
|
}
|
||||||
|
int main()
|
||||||
|
{
|
||||||
|
}
|
|
@ -0,0 +1,4 @@
|
||||||
|
struct {} admbaserest_; // { dg-lto-message "type of " 2 }
|
||||||
|
|
||||||
|
|
||||||
|
|
Loading…
Reference in New Issue