Bug 355004

Summary: QCoreApplication is not properly parsed by new CLang parser
Product: [Applications] kdevelop Reporter: Piotr Mierzwinski <piotr.mierzwinski>
Component: Language Support: CPP (Clang-based)Assignee: kdevelop-bugs-null
Status: RESOLVED FIXED    
Severity: normal CC: piotr.mierzwinski
Priority: NOR    
Version: git master   
Target Milestone: ---   
Platform: Mageia RPMs   
OS: Linux   
Latest Commit: Version Fixed In:
Attachments: Very simple QCoreApplication project

Description Piotr Mierzwinski 2015-11-07 19:38:52 UTC
Having the simplest project ever I met issue that QCoreApplication is not properly parsed, as I suppose.
First manifestation is "bad" colorizing. Class name have the same color as preprocesor directive.
Second manifestation is that when I move mouse cursor over this class name then nothing happen.
Because QCoreApplication is located in QtCore I also added into Includes/Imports (project configuration)  path to QtCore (for me this is /usr/include/Qt/QtCore where is bunch of headers) and reparsed the project.

Below please find the only one function from this project. For your convenience I also attached archive containing this project.

#include <QCoreApplication>

int main(int argc, char** argv)
{
	QCoreApplication app(argc, argv);

	return app.exec();
}

Please note this is come from KDevelop plugin "New Project Wizard".
Generated by option: "Project -> New from template", where:
"Category" is "Qt"
"Project Type" is "Terminal"


Reproducible: Always

Steps to Reproduce:
1. Clear ~/.cache/kdevduchain cache
2. Run KDevelop
3. Open attached project
4. Open file main.cpp
5. Move mouse cursor over QCoreApplication

Actual Results:  
nothing happen

Expected Results:  
should be shown tool tip referring to QCoreApplication

Kate, KTextEditor, KDevelop, KDevplatform cloned at 04.11.2015

I'm not sure, but maybe the reason is the same like in Bug 354846 - QCollator class name is not colorized in global function
Comment 1 Piotr Mierzwinski 2015-11-07 19:39:57 UTC
Created attachment 95372 [details]
Very simple QCoreApplication project
Comment 2 Piotr Mierzwinski 2015-11-07 19:43:55 UTC
Additionally when I write "app." then I'm getting the list of method from QCoreApplication class.
Comment 3 Milian Wolff 2015-11-10 14:06:04 UTC
confirmed
Comment 4 Milian Wolff 2015-11-10 14:09:17 UTC
Git commit 1472719544ed230f15696a6ce793e117ef42ce3d by Milian Wolff.
Committed on 10/11/2015 at 14:09.
Pushed by mwolff into branch '5.0'.

Fallback to non-canonicalized cursor for declaration lookup in use builder.

This fixes a bug where we failed to associate a use with a declaration
when there occurred a friend declaration before the actual declaration.
Related: bug 354846, bug 355007

M  +13   -2    languages/clang/duchain/builder.cpp
M  +13   -0    languages/clang/tests/files/uses.cpp
M  +1    -1    languages/clang/tests/test_duchain.cpp

http://commits.kde.org/kdevelop/1472719544ed230f15696a6ce793e117ef42ce3d