When we're trying to implicitly declare a function, we first search the scope
looking for whether the function identifier is already bound to a declaration.
But as the following test shows, we might find something else other than a
FUNCTION_DECL like we're expecting, which would mean that an ICE ensues. So
return early not only for error_mark_nodes, but also for anything that isn't a
FUNCTION_DECL.
Bootstrapped/regtested on x86_64-linux, ok for trunk?
2016-07-28 Marek Polacek <polacek@redhat.com>
PR c/71573
* c-decl.c (implicitly_declare): Return decl early not only for
error_mark_nodes, but for anything that is not a FUNCTION_DECL.
* gcc.dg/noncompile/pr71573.c: New test.