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

            Bug ID: 125249
           Summary: GCC rejects valid program with public indirect based
                    being changed to private
           Product: gcc
           Version: 17.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: jlame646 at gmail dot com
  Target Milestone: ---

The following valid program is rejected by gcc but accepted by clang, msvc and
edg: https://godbolt.org/z/M7cfdne1b

```
struct A {
    int member;
};

struct B : public A {
private:
    using A::member;
};

struct C : public B {
    using A::member; // #1
};

```
GCC says:
```
<source>:11:14: error: 'int A::member' is private within this context
   11 |     using A::member; // #1
      |              ^~~~~~
<source>:7:14: note: declared private here
    7 |     using A::member;
      |              ^~~~~~
Compiler returned: 1
```

Reply via email to