rogfer01 added a comment.

I wonder what should we do in C99 for cases like

  void foo(void) {
  
    {
      extern void g(int(*a)[call_to_undeclared()]);
  
      int (*p_ok)() = call_to_undeclared;
    }
    int (*p_err)() = call_to_undeclared;
  }

I understand that the scope `S` in this case is a (function) prototype scope so 
it would not be the innermost block scope, would it? That said, GCC does not 
accept `p_ok` above so probably this behaviour is sensible, after all in C99 
this is an extension.


https://reviews.llvm.org/D33676



_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to