summaryrefslogtreecommitdiff
path: root/compilerplugins
diff options
context:
space:
mode:
authorStephan Bergmann <sbergman@redhat.com>2019-11-12 11:03:36 +0100
committerStephan Bergmann <sbergman@redhat.com>2019-11-12 13:04:28 +0100
commitbc6e282bc2a43093c7a7b4d517c9e809c008298e (patch)
treec362df5d9a914c97b66e396ebdf9602c7966cd66 /compilerplugins
parent087a6b0cf34ab64801dba5aa7ff3d7ea53c2272b (diff)
Clarify loplugin:external behavior for const(expr) vars
Change-Id: I4a649f9c9ed2015ed9b32a153060df9770b20403 Reviewed-on: https://gerrit.libreoffice.org/82493 Tested-by: Jenkins Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
Diffstat (limited to 'compilerplugins')
-rw-r--r--compilerplugins/clang/test/external.cxx23
1 files changed, 23 insertions, 0 deletions
diff --git a/compilerplugins/clang/test/external.cxx b/compilerplugins/clang/test/external.cxx
new file mode 100644
index 000000000000..f4f3d770f09d
--- /dev/null
+++ b/compilerplugins/clang/test/external.cxx
@@ -0,0 +1,23 @@
+/* -*- Mode: C++; tab-width: 4; indent-tabs-mode: nil; c-basic-offset: 4; fill-column: 100 -*- */
+/*
+ * This file is part of the LibreOffice project.
+ *
+ * This Source Code Form is subject to the terms of the Mozilla Public
+ * License, v. 2.0. If a copy of the MPL was not distributed with this
+ * file, You can obtain one at http://mozilla.org/MPL/2.0/.
+ */
+
+// expected-error@+1 {{externally available entity 'n1' is not previously declared in an included file (if it is only used in this translation unit, make it static or put it in an unnamed namespace; otherwise, provide a declaration of it in an included file) [loplugin:external]}}
+int n1 = 0;
+
+int const n2 = 0; // no warning, internal linkage
+
+constexpr int n3 = 0; // no warning, internal linkage
+
+int main()
+{
+ (void)n2;
+ (void)n3;
+}
+
+/* vim:set shiftwidth=4 softtabstop=4 expandtab cinoptions=b1,g0,N-s cinkeys+=0=break: */