aboutsummaryrefslogtreecommitdiffstats
path: root/src/lib/corelib/language/itemreader.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/lib/corelib/language/itemreader.cpp')
-rw-r--r--src/lib/corelib/language/itemreader.cpp13
1 files changed, 12 insertions, 1 deletions
diff --git a/src/lib/corelib/language/itemreader.cpp b/src/lib/corelib/language/itemreader.cpp
index bdc5570a0..afa768a06 100644
--- a/src/lib/corelib/language/itemreader.cpp
+++ b/src/lib/corelib/language/itemreader.cpp
@@ -88,7 +88,7 @@ void ItemReader::popExtraSearchPaths()
m_allSearchPaths.clear();
}
-std::vector<QStringList> ItemReader::extraSearchPathsStack() const
+const std::vector<QStringList> &ItemReader::extraSearchPathsStack() const
{
return m_extraSearchPaths;
}
@@ -124,6 +124,17 @@ Item *ItemReader::readFile(const QString &filePath)
return m_visitorState->readFile(filePath, allSearchPaths(), m_pool);
}
+Item *ItemReader::readFile(const QString &filePath, const CodeLocation &referencingLocation)
+{
+ try {
+ return readFile(filePath);
+ } catch (const ErrorInfo &e) {
+ if (e.hasLocation())
+ throw;
+ throw ErrorInfo(e.toString(), referencingLocation);
+ }
+}
+
Set<QString> ItemReader::filesRead() const
{
return m_visitorState->filesRead();