https://gcc.gnu.org/bugzilla/show_bug.cgi?id=106529

--- Comment #4 from Thomas Klausner <tk at giga dot or.at> ---
Well, I can one-up that one:

int sincos();
int main() {
return sincos();
}

gives:

sincos.c:1:5: warning: conflicting types for built-in function ‘sincos’;
expected ‘void(double,  double *, double *)’ [-Wbuiltin-declaration-mismatch]
    1 | int sincos();
      |     ^~~~~~
sincos.c:1:1: note: ‘sincos’ is declared in header ‘<math.h>’
  +++ |+#include <math.h>
    1 | int sincos();
ld: /tmp//ccO3U7pd.o: in function `main':
sincos.c:(.text+0xa): undefined reference to `sincos'


a) there is no conflict since there is no builtin or otherwise sincos()
function
b) it is not declared in math.h

the linker warning is correct though :)

Reply via email to