]> git.ipfire.org Git - thirdparty/gcc.git/commit
d: Improve TypeInfo errors when compiling in -fno-rtti mode
authorIain Buclaw <ibuclaw@gdcproject.org>
Mon, 13 Jun 2022 12:35:38 +0000 (14:35 +0200)
committerIain Buclaw <ibuclaw@gdcproject.org>
Mon, 13 Jun 2022 13:08:18 +0000 (15:08 +0200)
commite55eda238545e93708c020fd21249459be64c463
tree892ec8d4a3b62874fd18f7090497147e64fa7494
parent1158fe43407568f20415b16575ddbfff216bf8b6
d: Improve TypeInfo errors when compiling in -fno-rtti mode

The existing TypeInfo errors can be cryptic.  This alters the diagnostic
to include which expression is requiring `object.TypeInfo'.

gcc/d/ChangeLog:

* d-tree.h (check_typeinfo_type): Add Expression* parameter.
(build_typeinfo): Likewise.  Declare new override.
* expr.cc (ExprVisitor): Call build_typeinfo with Expression*.
* typeinfo.cc (check_typeinfo_type): Include expression in the
diagnostic message.
(build_typeinfo): New override.

gcc/testsuite/ChangeLog:

* gdc.dg/rtti1.d: New test.
gcc/d/d-tree.h
gcc/d/expr.cc
gcc/d/typeinfo.cc
gcc/testsuite/gdc.dg/rtti1.d [new file with mode: 0644]