summaryrefslogtreecommitdiffstats
path: root/searchcore
diff options
context:
space:
mode:
authorHenning Baldersheim <balder@yahoo-inc.com>2017-08-14 15:17:01 +0200
committerGitHub <noreply@github.com>2017-08-14 15:17:01 +0200
commitdb572644380b0f0fa4393c5bdd0bc773360b5efd (patch)
tree5f1fc2c52871c1e595e3e5b6ac1af53ade99b6b1 /searchcore
parent079aa085416f76b4d19fbaaaad1c05e2ea508ba9 (diff)
parenta6555b013546b8baf8c90cd8d1b008eaad0201e4 (diff)
Merge pull request #3097 from vespa-engine/vekterli/ignore-spurious-gcc-lambda-destructor-inlining-warnings
Selectively ignore GCC inlining warning for lambdas
Diffstat (limited to 'searchcore')
-rw-r--r--searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp
index 84e2910d059..d371dffa319 100644
--- a/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp
+++ b/searchcore/src/vespa/searchcore/proton/server/storeonlyfeedview.cpp
@@ -354,6 +354,8 @@ void StoreOnlyFeedView::putSummary(SerialNum serialNum, search::DocumentIdT lid
FutureStream futureStream, OnOperationDoneType onDone)
{
_pendingLidTracker.produce(lid);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Winline" // Avoid spurious inlining warning from GCC related to lambda destructor.
summaryExecutor().execute(
makeLambdaTask([serialNum, lid, futureStream = std::move(futureStream), onDone, this] () mutable {
(void) onDone;
@@ -363,18 +365,22 @@ void StoreOnlyFeedView::putSummary(SerialNum serialNum, search::DocumentIdT lid
}
_pendingLidTracker.consume(lid);
}));
+#pragma GCC diagnostic pop
}
void StoreOnlyFeedView::putSummary(SerialNum serialNum, search::DocumentIdT lid,
Document::SP doc, OnOperationDoneType onDone)
{
_pendingLidTracker.produce(lid);
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Winline" // Avoid spurious inlining warning from GCC related to lambda destructor.
summaryExecutor().execute(
makeLambdaTask([serialNum, doc = std::move(doc), onDone, lid, this] {
(void) onDone;
_summaryAdapter->put(serialNum, lid, *doc);
_pendingLidTracker.consume(lid);
}));
+#pragma GCC diagnostic pop
}
void StoreOnlyFeedView::removeSummary(SerialNum serialNum, search::DocumentIdT lid) {
_pendingLidTracker.produce(lid);
@@ -439,7 +445,8 @@ StoreOnlyFeedView::internalUpdate(FeedToken::UP token, const UpdateOperation &up
if (useDocumentStore(serialNum)) {
putSummary(serialNum, lid, std::move(futureStream), onWriteDone);
}
-
+#pragma GCC diagnostic push
+#pragma GCC diagnostic ignored "-Winline" // Avoid spurious inlining warning from GCC related to lambda destructor.
_writeService
.attributeFieldWriter()
.execute(serialNum,
@@ -450,6 +457,7 @@ StoreOnlyFeedView::internalUpdate(FeedToken::UP token, const UpdateOperation &up
makeUpdatedDocument(serialNum, std::move(prevDoc), upd,
onWriteDone, std::move(promisedDoc), std::move(promisedStream));
});
+#pragma GCC diagnostic pop
}
if (!updateScope._indexedFields && onWriteDone) {
if (onWriteDone->shouldTrace(1)) {