[Bug c++/109761] [10/11/12/13/14 Regression] Nested class destructor's noexcept specification incorrectly considered as too loose compared to the outer class

ppalka at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Tue May 9 13:46:31 GMT 2023


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

Patrick Palka <ppalka at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
            Summary|Nested class destructor's   |[10/11/12/13/14 Regression]
                   |noexcept specification      |Nested class destructor's
                   |incorrectly considered as   |noexcept specification
                   |too loose compared to the   |incorrectly considered as
                   |outer class                 |too loose compared to the
                   |                            |outer class
   Target Milestone|---                         |10.5

--- Comment #5 from Patrick Palka <ppalka at gcc dot gnu.org> ---
Here's another reduced version that demonstrates a regression since
r10-1280-g78f7607db4c53f:

struct base {
  virtual ~base() {}
};

struct outer : base {
  static void f();
  struct nested {
    ~nested() noexcept(noexcept(f())); // { dg-bogus "looser" }
  };
};


More information about the Gcc-bugs mailing list