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

David Friberg <davveston at gmail dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |davveston at gmail dot com

--- Comment #2 from David Friberg <davveston at gmail dot com> ---
Another similar but more common (/less contrived) example, rejects-valid e.g.
for GCC 10.1.0 for all C++ version (-std=c++X with X in {98, 11, 17, 2a/20}).

// https://wandbox.org/permlink/aQpRzgcvAHOihKz5
template<typename T>
struct S {
    using type = int;
    type f() const;
};

template<typename T>
using type_t = typename S<T>::type;

template <typename T>
type_t<T> S<T>::f() const { }
// error: no declaration matches 'type_t<T> S<T>::f() const'

int main() {}

---

Brought up in
https://stackoverflow.com/questions/65110143/using-typealias-in-place-of-typedef-defined-in-class-in-definition

Reply via email to