[Libreoffice-commits] core.git: compilerplugins/clang

Stephan Bergmann sbergman at redhat.com
Mon Dec 11 09:47:08 UTC 2017


 compilerplugins/clang/salcall.cxx      |    7 +++----
 compilerplugins/clang/test/salcall.cxx |   12 ++++++------
 2 files changed, 9 insertions(+), 10 deletions(-)

New commits:
commit 492afb35b4fbec18be5e2695ea747e8fac50b890
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Sun Dec 10 23:18:17 2017 +0100

    Improve loplugin:salcall error reporting
    
    Change-Id: I214052491e90eb4147bf79d6fd3927266638c686
    Reviewed-on: https://gerrit.libreoffice.org/46203
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/compilerplugins/clang/salcall.cxx b/compilerplugins/clang/salcall.cxx
index 3b291cb79f56..250994c07f5e 100644
--- a/compilerplugins/clang/salcall.cxx
+++ b/compilerplugins/clang/salcall.cxx
@@ -191,11 +191,10 @@ bool SalCall::VisitFunctionDecl(FunctionDecl const* decl)
         else if (bDeclIsSalCall)
         {
             // not fine
-            report(DiagnosticsEngine::Warning, "SAL_CALL inconsistency",
-                   canonicalDecl->getLocation())
-                << canonicalDecl->getSourceRange();
-            report(DiagnosticsEngine::Note, "SAL_CALL inconsistency", decl->getLocation())
+            report(DiagnosticsEngine::Warning, "SAL_CALL inconsistency", decl->getLocation())
                 << decl->getSourceRange();
+            report(DiagnosticsEngine::Note, "SAL_CALL inconsistency", canonicalDecl->getLocation())
+                << canonicalDecl->getSourceRange();
             return true;
         }
     }
diff --git a/compilerplugins/clang/test/salcall.cxx b/compilerplugins/clang/test/salcall.cxx
index 736bb27a3b6a..99995a30fb0f 100644
--- a/compilerplugins/clang/test/salcall.cxx
+++ b/compilerplugins/clang/test/salcall.cxx
@@ -31,9 +31,9 @@ void SAL_CALL Class1::method1()
 
 class Class2
 {
-    void method1(); // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
+    void method1(); // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
 };
-void SAL_CALL Class2::method1() {} // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
+void SAL_CALL Class2::method1() {} // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
 
 // comment this out because it seems to generate a warning in some internal buffer of clang that I can't annotate
 #if 0
@@ -120,12 +120,12 @@ class Class8_3 : public Class8_1, public Class8_2
 #define M1(m) void m
 class Class9
 {
-    M1(method1)(); // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
-    void method2(); // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
+    M1(method1)(); // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
+    void method2(); // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
 };
-void SAL_CALL Class9::method1() {} // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
+void SAL_CALL Class9::method1() {} // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
 #define M2(T) T SAL_CALL
-M2(void) Class9::method2() {} // expected-note {{SAL_CALL inconsistency [loplugin:salcall]}}
+M2(void) Class9::method2() {} // expected-error {{SAL_CALL inconsistency [loplugin:salcall]}}
 
 #if 0 // see TODO in SalCall::isSalCallFunction
 class Class10


More information about the Libreoffice-commits mailing list