rogfer01 added a comment. I think what happens is that the implicit declaration is done in the prototype scope which is not visible later.
Doing the same as GCC in the handling of this extension is probably the best: note that in C90 a function call should not happen inside an array expression because VLAs do not exist there so all the expressions inside an array declarator are constant-expressions, which in C90 (at least) do not allow function-calls. https://reviews.llvm.org/D33676 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org http://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits