summaryrefslogtreecommitdiff
path: root/src/plugins/cpptools/cppmodelmanager.h
diff options
context:
space:
mode:
authorErik Verbruggen <erik.verbruggen@nokia.com>2012-02-16 15:09:56 +0100
committerErik Verbruggen <erik.verbruggen@nokia.com>2012-02-16 15:17:17 +0100
commit3aab8beaf4c585e66179f14fac2f63b51f034520 (patch)
treeaa9e45b3b8647ff76d421cc7ae0138c4531c9567 /src/plugins/cpptools/cppmodelmanager.h
parent89e64b5aedf480133b0837d34408736220d593e3 (diff)
downloadqt-creator-3aab8beaf4c585e66179f14fac2f63b51f034520.tar.gz
Supply c++11 flags and per-project info to c++ code model.
A manual squash/merge of the changes below, plus a couple of subsequent code fixes. 59085aa5fbb99e2d786cd2c1a06c24a111ccb49f: Modify CppModel::ProjectInfo Adding per project node information, to pass on the correct defines/includes for each file, instead of aggregating them incorrectly. Also split up SOURCES and OBJECTIVE_SOURCES. Also ask the toolchain to convert the compilerflags to flags the codemodel understands, for now only gcc and only c++11. Also make the toolchain aware of the flags used to compile, so that it can emit the correct defines. Note: No header files are passed on. 74028802314cd4e75b41b46407433e07090a304d: GCC: Evaluate cxxflags when checking for predefined macros ebaaa4957e4c02cc9637a998eddae1d0acd74f83: MSVC: Take cxxflags into account when checking for predefined macros 9bfce7e889bcf7bcc47bf880e3ea25945ca7d0d7: Compile fixes Change-Id: I9de94ad038dfc5dc1987732e84b13fb4419c96f5 Reviewed-by: Erik Verbruggen <erik.verbruggen@nokia.com>
Diffstat (limited to 'src/plugins/cpptools/cppmodelmanager.h')
-rw-r--r--src/plugins/cpptools/cppmodelmanager.h5
1 files changed, 4 insertions, 1 deletions
diff --git a/src/plugins/cpptools/cppmodelmanager.h b/src/plugins/cpptools/cppmodelmanager.h
index 025e066231..d56045c2e9 100644
--- a/src/plugins/cpptools/cppmodelmanager.h
+++ b/src/plugins/cpptools/cppmodelmanager.h
@@ -83,7 +83,7 @@ class CppPreprocessor;
class CppFindReferences;
#ifndef ICHECK_BUILD
-class CppModelManager : public CPlusPlus::CppModelManagerInterface
+class CPPTOOLS_EXPORT CppModelManager : public CPlusPlus::CppModelManagerInterface
{
Q_OBJECT
@@ -99,6 +99,7 @@ public:
virtual QList<ProjectInfo> projectInfos() const;
virtual ProjectInfo projectInfo(ProjectExplorer::Project *project) const;
virtual void updateProjectInfo(const ProjectInfo &pinfo);
+ virtual QList<ProjectPart::Ptr> projectPart(const QString &fileName) const;
virtual CPlusPlus::Snapshot snapshot() const;
virtual void GC();
@@ -237,6 +238,8 @@ private:
mutable QMutex protectExtraDiagnostics;
QHash<QString, QHash<int, QList<CPlusPlus::Document::DiagnosticMessage> > > m_extraDiagnostics;
+
+ QMap<QString, QList<ProjectPart::Ptr> > m_srcToProjectPart;
};
#endif