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

Thomas Schwinge <tschwinge at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
   Last reconfirmed|2017-03-01 00:00:00         |2018-11-7
                 CC|                            |dmalcolm at gcc dot gnu.org,
                   |                            |tschwinge at gcc dot gnu.org

--- Comment #2 from Thomas Schwinge <tschwinge at gcc dot gnu.org> ---
I ran into such a thing, too (with today's GCC trunk r265867):

    struct s
    {
      int m;
    };

    void f(struct s **s)
    {
      *s->m = 5;
      // (*s)->m = 5;
    }

C:

    ../f.c: In function 'f':
    ../f.c:8:5: error: '*s' is a pointer; did you mean to use '->'?
        8 |   *s->m = 5;
          |     ^~
          |     ->

C++:

    ../f.c: In function 'void f(s**)':
    ../f.c:8:7: error: request for member 'm' in '* s', which is of pointer
type 's*' (maybe you meant to use '->' ?)
        8 |   *s->m = 5;
          |       ^

Reply via email to