On 3/31/15 8:53 PM, Eric Fiselier wrote:
Hi mclow.lists, danalbert, compnerd,

Currently there are bugs in out detection of multi-level pointer conversions 
and pointer to member conversions. This patch fixes the following issues.

* Allow multi-level pointers with different nested qualifiers.

Humph, I thought I had exhaustively tested that clause in test/catch_pointer_reference.cpp

Guess not.


Jon

* Allow multi-level mixed pointers to objects and pointers to members with 
different nested qualifiers.
* Allow conversions from `int Base::*` to `int Derived::*` but only for 
non-nested pointers.

There is still some work that needs to be done to clean this patch up but I 
want to get some input on it.
Open questions:

* Does `__pointer_to_member_type_info::can_catch(...)` need to adjust the 
pointer if a base to derived conversion is performed?

http://reviews.llvm.org/D8758

Files:
   src/private_typeinfo.cpp
   src/private_typeinfo.h
   test/catch_member_data_pointer_01.pass.cpp
   test/catch_pointer_nullptr.pass.cpp

EMAIL PREFERENCES
   http://reviews.llvm.org/settings/panel/emailpreferences/



_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits


--
Jon Roelofs
[email protected]
CodeSourcery / Mentor Embedded
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to