Well, yes, it's a user layout problem that caused CC to scan all files from root.
But the user has no way to find or fix the problem without a message or warning. If we don't want to prevent CC scanning for symbols from root, can we put out the warning messages instead?
Ollydbg:
CC is doing just what it's supposed to do. It's just that when CC calls CalculateCommonTopLevelPath() when dbfFile is set AND the user has specified a project file like "..\..\..\..\iccv8cortex\include\CMSIS\core_cm3.h" where iccv8cortex is actually located at c:\iccv8cortex AND because that specification resolves to a file that actually exists, CC is handed back a top level path of "C:\".
CC wil then scan for all open file's symbols starting at root. It will scan c:\windows and all it subdirectories taking many seconds of time for each open file.
Thats why I called it a quirk, not a bug. But the user suffers....
because with many files, such as in FreeRTOS source, the problem is almost impossible to find.
I'll upload (somewhere) the source that causes this and get back to you.