diff options
| author | Marek Polacek <polacek@redhat.com> | 2026-02-01 18:06:20 -0500 |
|---|---|---|
| committer | Marek Polacek <polacek@redhat.com> | 2026-02-02 09:38:22 -0500 |
| commit | 6b2a3804758bb8e731ad18420cf79fd03cf280d9 (patch) | |
| tree | faf3a5b901f23f47b9718c85d8f76281c4dbbe7d /libjava/classpath/gnu/java/lang | |
| parent | 9de2f8da0c37f04d67bc3d5dcee6a36034df2f9a (diff) | |
| download | gcc-6b2a3804758bb8e731ad18420cf79fd03cf280d9.zip gcc-6b2a3804758bb8e731ad18420cf79fd03cf280d9.tar.gz gcc-6b2a3804758bb8e731ad18420cf79fd03cf280d9.tar.bz2 | |
c++/reflection: fix ICE with object_of [PR123695]
In eval_object_of we are calling cxx_eval_constant_expression on
references to get the referent. We should check that the type is
non-null before checking TYPE_REF_P, because for invalid arguments
it can be null, as shown in the test.
PR c++/123695
gcc/cp/ChangeLog:
* reflect.cc (eval_object_of): Check type before TYPE_REF_P.
gcc/testsuite/ChangeLog:
* g++.dg/reflect/object_of3.C: New test.
Co-authored-by: Boris Staletic <boris.staletic@protonmail.com>
Reviewed-by: Jason Merrill <jason@redhat.com>
Diffstat (limited to 'libjava/classpath/gnu/java/lang')
0 files changed, 0 insertions, 0 deletions
