------- Comment #2 from reichelt at gcc dot gnu dot org  2007-06-06 22:57 
-------
Just a note:

> Also, shouldn't there also be an error about lack of return type for
> _M_fill_initialize?

Well, here's the code snippet from the function grokdeclarator in decl.c
that deals with missing return types:

      if (type_was_error_mark_node)
        /* We've already issued an error, don't complain more.  */;
      else if (in_system_header || flag_ms_extensions)
        /* Allow it, sigh.  */;
      else if (pedantic || ! is_main)
        pedwarn ("ISO C++ forbids declaration of %qs with no type", name);
      else
        warning (OPT_Wreturn_type,
                 "ISO C++ forbids declaration of %qs with no type", name);

As you can see, return types may be omitted in system headers
(probably because there were too many systems with such headers around).
Otherwise you should get a diagnostic.


-- 


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=32208

Reply via email to