Version: 4.0.0 (using KDE 4.4.4) OS: Linux Hello, I have recently switched from KDevelop 3.5.5 to KDevelop 4.0.1(using KDevPlatform 1.0.1) and am experiencing an issue with opening files in a Custom Makefile project. When I double-click on a class (in the Classes tab), the installed version of the file (found in /usr/include) is opened rather than the file local to the project. I only noticed this when I attempted to save my changes and could not. From what I can tell, KDevelop4 is not first checking if the file to be opened is located in the current project directory. Instead, it seems to check the system /usr/include first. Is this specific to a Custom Makefile Project? I have scoured the configuration of KDevelop4 and the Project's configuration and cannot see where I can change this behaviour. Am I missing something? My system: openSUSE 11.3 (recently upgraded and decided to migrate my KDev3 project to KDev4). KDE 4.4.4 release 2 KDevelop 4.0.1(using KDevPlatform 1.0.1) Cheers, Alvin Reproducible: Always Steps to Reproduce: 1. Create a project that contains a class (header and implementation file). 2. Copy/Install the header file into /usr/local 3. Open the Classes tab 4. Double-click on the class. Actual Results: After step 4, the header file in /usr/local will be opened rather than the file that is local to the project. Expected Results: The files local to the project should always be open...have preference. I first submitted this to the kdevelop ML. I received the following reply: Subject: Re: Classes tab Date: Wednesday 28 July 2010, 21:18:24 From: Milian Wolff <mail@milianw.de> To: kdevelop-devel@barney.cs.uni-potsdam.de - Show quoted text - On Wednesday 28 July 2010 14:46:36 Alvin Beach wrote: > Hello, > > I have recently switched from KDevelop 3.5.5 to KDevelop 4.0.1(using > KDevPlatform 1.0.1) and am experiencing an issue with opening files in > a Custom Makefile project. > > When I double-click on a class (in the Classes tab), the installed > version of the file (found in /usr/include) is opened rather than the > file local to the project. I only noticed this when I attempted to > save my changes and could not. From what I can tell, KDevelop4 is not > first checking if the file to be opened is located in the current > project directory. Instead, it seems to check the > system /usr/include first. > > Is this specific to a Custom Makefile Project? I have scoured the > configuration of KDevelop4 and the Project's configuration and cannot > see where I can change this behaviour. Am I missing something? > > My system: > openSUSE 11.3 (recently upgraded and decided to migrate my KDev3 > project to KDev4). > KDE 4.4.4 release 2 > KDevelop 4.0.1(using KDevPlatform 1.0.1) Yeah that happens from time to time and is really annoying. I think we should try to improve the situation by preferring files in opened projects when looking for imports in Cpp. I haven't looked at the code but it can fix multiple cases: 1) jump to declaration/definition 2) create class with inheritance (remember those <../../../usr/include/bla.h> includes?) 3) ...more? I have sadly no time for that right now. Please report it on bugs.kde.org. Thanks -- Milian Wolff
I can't reproduce that anymore, please re-open with a step by step explanation if that still happens for you.