is_convertible<derived*, base*> may lead to ODR
Alisdair Meredith

Created on 2017-09-24.00:00:00 last changed 68 months ago


Date: 2018-11-11.00:00:00

[ 2018-11-11 Resolved by P1285R0, adopted in San Diego. ]

Date: 2018-08-22.12:55:05

[ 2018-08 Batavia Monday issue discussion ]

Issues 2797, 2939, 3022, and 3099 are all closely related. Walter to write a paper resolving them.

Date: 2017-11-09.15:13:04

[ 2017-11 Albuquerque Wednesday night issues processing ]

Priority set to 2

Date: 2017-09-24.00:00:00

Given two incomplete types, base and derived, that will have the expected base/derived relationship when complete, the trait is_convertible claims to support instantiation with pointers to these types (as pointers to incomplete types are, themselves, complete), yet will give a different answer when the types are complete vs. when they are incomplete.

We should require pointers (and pointers to pointers etc.) point to a complete type, unless one is a pointer to cv-void. We may also want some weasel-wording to permit pointers to arrays-of-unknown-bound, and pointers to cv-qualified variants of the same incomplete type.

Date User Action Args
2018-11-12 04:30:58adminsetmessages: + msg10174
2018-11-12 04:30:58adminsetstatus: new -> resolved
2018-08-22 12:55:05adminsetmessages: + msg10094
2017-11-09 15:13:04adminsetmessages: + msg9521
2017-09-24 00:00:00admincreate