[clang] [Clang][ASTMatchers] Add visibility macros to variables declared by macros (PR #110206)
Vassil Vassilev via cfe-commits
cfe-commits at lists.llvm.org
Mon Oct 14 09:30:00 PDT 2024
https://github.com/vgvassilev updated https://github.com/llvm/llvm-project/pull/110206
>From bf2a9fe2d755adc8dfdd43418e15c35cf912edca Mon Sep 17 00:00:00 2001
From: Thomas Fransham <tfransham at gmail.com>
Date: Thu, 26 Sep 2024 21:23:50 +0100
Subject: [PATCH] [Clang][ASTMatchers] Add visibility macros to variables
declared by macros
This will fix missing symbols for ASTMatchersTests on windows when building with
CLANG_LINK_CLANG and explicit visibility macros are used.
This is part of the work to enable LLVM_BUILD_LLVM_DYLIB and
LLVM\Clang plugins on window.
---
clang/include/clang/ASTMatchers/ASTMatchersMacros.h | 6 ++++--
1 file changed, 4 insertions(+), 2 deletions(-)
diff --git a/clang/include/clang/ASTMatchers/ASTMatchersMacros.h b/clang/include/clang/ASTMatchers/ASTMatchersMacros.h
index 592a3898a29591..f781e0a565eb36 100644
--- a/clang/include/clang/ASTMatchers/ASTMatchersMacros.h
+++ b/clang/include/clang/ASTMatchers/ASTMatchersMacros.h
@@ -49,6 +49,8 @@
#ifndef LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H
#define LLVM_CLANG_ASTMATCHERS_ASTMATCHERSMACROS_H
+#include "clang/Support/Compiler.h"
+
/// AST_MATCHER_FUNCTION(ReturnType, DefineMatcher) { ... }
/// defines a zero parameter function named DefineMatcher() that returns a
/// ReturnType object.
@@ -367,7 +369,7 @@
static QualType (T::*value())() const { return &T::FunctionName; } \
}; \
} \
- extern const ::clang::ast_matchers::internal:: \
+ CLANG_ABI extern const ::clang::ast_matchers::internal:: \
TypeTraversePolymorphicMatcher< \
QualType, \
::clang::ast_matchers::internal::TypeMatcher##MatcherName##Getter, \
@@ -407,7 +409,7 @@
static TypeLoc (T::*value())() const { return &T::FunctionName##Loc; } \
}; \
} \
- extern const ::clang::ast_matchers::internal:: \
+ CLANG_ABI extern const ::clang::ast_matchers::internal:: \
TypeTraversePolymorphicMatcher< \
TypeLoc, \
::clang::ast_matchers::internal:: \
More information about the cfe-commits
mailing list