https://gcc.gnu.org/bugzilla/show_bug.cgi?id=86490
--- Comment #16 from joe.harvell at netscout dot com --- Correction on the previous comment. I said This function is defined in one .c file and declared with the extern keyword in another .c file. But in fact the extern declaration in the second .c file is removed by the pre-processor. So the symbol only occurs in one .c file.