|
35 | 35 |
|
36 | 36 | namespace llvm_dialects {
|
37 | 37 |
|
| 38 | +namespace llvm_support_detail = |
| 39 | +#if !defined(LLVM_MAIN_REVISION) || LLVM_MAIN_REVISION >= 494496 |
| 40 | + llvm::support::detail; |
| 41 | +#else |
| 42 | + llvm::detail; |
| 43 | +#endif |
| 44 | + |
38 | 45 | /// Format context containing substitutions for special placeholders.
|
39 | 46 | ///
|
40 | 47 | /// This context divides special placeholders into two categories: builtin ones
|
@@ -185,14 +192,14 @@ class FmtObjectBase {
|
185 | 192 | // std::vector<Base*>.
|
186 | 193 | struct CreateAdapters {
|
187 | 194 | template <typename... Ts>
|
188 |
| - std::vector<llvm::detail::format_adapter *> operator()(Ts &...items) { |
189 |
| - return std::vector<llvm::detail::format_adapter *>{&items...}; |
| 195 | + std::vector<llvm_support_detail::format_adapter *> operator()(Ts &...items) { |
| 196 | + return std::vector<llvm_support_detail::format_adapter *>{&items...}; |
190 | 197 | }
|
191 | 198 | };
|
192 | 199 |
|
193 | 200 | llvm::StringRef fmt;
|
194 | 201 | const FmtContext *context;
|
195 |
| - std::vector<llvm::detail::format_adapter *> adapters; |
| 202 | + std::vector<llvm_support_detail::format_adapter *> adapters; |
196 | 203 | std::vector<FmtReplacement> replacements;
|
197 | 204 |
|
198 | 205 | public:
|
@@ -253,7 +260,7 @@ template <typename Tuple> class FmtObject : public FmtObjectBase {
|
253 | 260 | class FmtStrVecObject : public FmtObjectBase {
|
254 | 261 | public:
|
255 | 262 | using StrFormatAdapter =
|
256 |
| - decltype(llvm::detail::build_format_adapter(std::declval<std::string>())); |
| 263 | + decltype(llvm_support_detail::build_format_adapter(std::declval<std::string>())); |
257 | 264 |
|
258 | 265 | FmtStrVecObject(llvm::StringRef fmt, const FmtContext *ctx,
|
259 | 266 | llvm::ArrayRef<std::string> params);
|
@@ -313,13 +320,13 @@ class FmtStrVecObject : public FmtObjectBase {
|
313 | 320 | template <typename... Ts>
|
314 | 321 | inline auto tgfmt(llvm::StringRef fmt, const FmtContext *ctx, Ts &&...vals)
|
315 | 322 | -> FmtObject<decltype(std::make_tuple(
|
316 |
| - llvm::detail::build_format_adapter(std::forward<Ts>(vals))...))> { |
| 323 | + llvm_support_detail::build_format_adapter(std::forward<Ts>(vals))...))> { |
317 | 324 | using ParamTuple = decltype(std::make_tuple(
|
318 |
| - llvm::detail::build_format_adapter(std::forward<Ts>(vals))...)); |
| 325 | + llvm_support_detail::build_format_adapter(std::forward<Ts>(vals))...)); |
319 | 326 | return FmtObject<ParamTuple>(
|
320 | 327 | fmt, ctx,
|
321 | 328 | std::make_tuple(
|
322 |
| - llvm::detail::build_format_adapter(std::forward<Ts>(vals))...)); |
| 329 | + llvm_support_detail::build_format_adapter(std::forward<Ts>(vals))...)); |
323 | 330 | }
|
324 | 331 |
|
325 | 332 | inline FmtStrVecObject tgfmt(llvm::StringRef fmt, const FmtContext *ctx,
|
|
0 commit comments