Community
Participate
Working Groups
Created attachment 273449 [details] test-conflicting-types There's an ancient makefile project that builds two libraries: single-threaded and multi-threaded. In the single-threaded library there's a variable to hold the error status: "int pits_error". Naturally, the multi-threaded library can't use such a variable and it defines the function with the same name: "int pits_error()" The object files from both libraries never end up in a single executable, therefore this situation is not a bug. When opening the single-threaded c file in the editor, the error appears: Symbol 'pits_error' could not be resolved. I have narrowed the problem. Please import the attached file as a makefile project, build and open single.c. There should be an error. This only happens if the symbol is declared in a header file. If I duplicate the declaration to the source file, the problem is gone.
This is a long-standing issue with Eclipse's indexer. It basically treats all source files as if they were all linked into a single executable or library.