[Bug c++/94302] New: Implement DR 2310: Type completeness and derived-to-base pointer conversions

mpolacek at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue Mar 24 16:10:07 GMT 2020


https://gcc.gnu.org/bugzilla/show_bug.cgi?id=94302

            Bug ID: 94302
           Summary: Implement DR 2310: Type completeness and
                    derived-to-base pointer conversions
           Product: gcc
           Version: unknown
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: mpolacek at gcc dot gnu.org
  Target Milestone: ---

This issue was approved as a DR at Kona 2019:

  template<typename A, typename B> struct check_derived_from { 
    static A a; 
    static constexpr B *p = &a; 
  }; 
  struct W {}; 
  struct X {}; 
  struct Y {}; 
  struct Z : W, 
    X, check_derived_from<Z, X>,  // #1 
    check_derived_from<Z, Y>, Y { // #2 
    check_derived_from<Z, W> cdf; // #3 
  }; 


All three attempted conversions in the example are ill-formed.


More information about the Gcc-bugs mailing list