Eric Pouech <[EMAIL PROTECTED]> writes: > it's fixed for C functions, but not when the function is declared in > assembly > extern inline int foo(int a); > extern inline int foo(int a) {return a + 1;} > int foo(int a) {return a+1;} > extern inline int ffo(int a); > extern inline int ffo(int a) {return a + 1;} > int ffo(int a) {return a+1;} > __asm__( ".text\n\t" > ".align 4\n\t" > ".globl ffo\n\t" > ".type ffo,@function\n" > "ffo:\n\tret\n" > "\n\t.previous" ); > > [EMAIL PROTECTED] wine-git]$ /opt2/intel/cc/9.1.047/bin/icc -c ~/icc2.c > /home/eric/icc2.c(3): warning #290: function "foo" has already been defined > int foo(int a) {return a+1;} > ^ > > /home/eric/icc2.c(6): warning #290: function "ffo" has already been defined > int ffo(int a) {return a+1;} > ^ > > IPO: WARNING: File scope asm disables -ipo > /home/eric/tmp/icc5IgzlBas_.s: Assembler messages: > /home/eric/tmp/icc5IgzlBas_.s:40: Error: symbol `ffo' is already defined > > (and embedding the asm code into a dummy function doesn't help either)
But here you really have two non-inline definitions, one in C and one in assembly. What happens if you remove the C version? -- Alexandre Julliard [EMAIL PROTECTED]