Skip to content

Commit 74228b5

Browse files
committed
chore: bump LLVM commit hash to 6f5e5b6
1 parent 6156756 commit 74228b5

File tree

7 files changed

+254
-72
lines changed

7 files changed

+254
-72
lines changed

.github/workflows/ci.yml

Lines changed: 1 addition & 23 deletions
Original file line numberDiff line numberDiff line change
@@ -63,7 +63,7 @@ jobs:
6363
clang: git build-essential pkg-config python3 curl openjdk-11-jdk pkg-config libncurses-dev libxml2-utils libxml2-dev
6464
msvc: ''
6565
extra-values: |
66-
llvm-hash: e1065370aaacb1b1cb48e77d37d376bf024f4a39
66+
llvm-hash: 6f5e5b630559f2d17bdccfab5dff3a97ac0f8c66
6767
llvm-id: {{ substr llvm-hash 0 7 }}
6868
llvm-build-preset-prefix: {{#if optimized-debug}}debwithopt{{else}}{{lowercase build-type}}{{/if}}
6969
llvm-build-preset-suffix: {{#if (ieq os 'windows') }}win{{else}}unix{{/if}}
@@ -74,10 +74,6 @@ jobs:
7474
llvm-archive-basename: llvm-{{ os }}-{{ llvm-build-preset-prefix }}-{{ llvm-id }}
7575
llvm-archive-extension: {{#if (ieq os 'windows') }}7z{{else}}tar.bz2{{/if}}
7676
llvm-archive-filename: {{ llvm-archive-basename }}.{{ llvm-archive-extension }}
77-
libcxx-runtimes: libcxx;libcxxabi{{#if (ine os 'windows') }};libunwind{{/if}}
78-
libcxx-targets: cxx {{#if (ine os 'windows') }}cxxabi unwind{{/if}} install-cxx {{#if (ine os 'windows') }}install-cxxabi install-unwind{{/if}}
79-
libcxx-cxxflags: {{#if (ieq os 'windows') }}-D__ORDER_LITTLE_ENDIAN__=1234 -D__ORDER_BIG_ENDIAN__=4321 -D__BYTE_ORDER__=__ORDER_LITTLE_ENDIAN__{{/if}}
80-
libcxx-cmake-args: -D LLVM_ENABLE_RUNTIMES="{{ libcxx-runtimes }}" {{#if (ieq os 'windows') }}-D LIBCXXABI_USE_LLVM_UNWINDER=OFF -D LIBCXXABI_ENABLE_SHARED=OFF -D LIBCXXABI_ENABLE_STATIC=ON -D LIBCXX_ENABLE_SHARED=OFF -D LIBCXX_NO_VCRUNTIME=ON{{/if}} {{#if (ieq os 'macos') }}-D CMAKE_OSX_ARCHITECTURES=""{{/if}}
8177
mrdocs-ccflags: {{ ccflags }} {{#if (eq compiler 'gcc') }}-static{{/if}} {{#if asan }}-static-libasan{{/if}} {{#if tsan }}-static-libtsan{{/if}}
8278
mrdocs-cxxflags: {{ cxxflags }} {{#if (eq compiler 'gcc') }}-static{{/if}} {{#if asan }}-static-libasan{{/if}} {{#if tsan }}-static-libtsan{{/if}}
8379
mrdocs-package-generators: {{#if (ieq os 'windows') }}7Z ZIP WIX{{else}}TGZ TXZ{{/if}}
@@ -337,25 +333,7 @@ jobs:
337333
build-type: ${{ matrix.build-type }}
338334
cc: ${{ steps.setup-cpp.outputs.cc }}
339335
cxx: ${{ steps.setup-cpp.outputs.cxx }}
340-
install: true
341-
install-prefix: ${sourceDir}/../install
342-
run-tests: false
343-
trace-commands: true
344-
345-
- name: Install LibC++
346-
uses: alandefreitas/cpp-actions/[email protected]
347-
if: steps.llvm-cache.outputs.cache-hit != 'true' && steps.llvm-download.outputs.found != 'true'
348-
with:
349-
cmake-version: '>=3.26'
350-
source-dir: ../third-party/llvm-project/runtimes
351-
build-dir: ${sourceDir}/build-libcxx
352-
build-target: ${{ matrix.libcxx-targets }}
353-
# MrDocs will only use the LibC++ headers: any compiler that works in this workflow will do
354-
cc: ${{ runner.os == 'macOS' && steps.setup-cpp.outputs.cc || '../third-party/llvm-project/install/bin/clang' }}
355-
cxx: ${{ runner.os == 'macOS' && steps.setup-cpp.outputs.cxx || '../third-party/llvm-project/install/bin/clang++' }}
356-
cxxflags: ${{ matrix.libcxx-cxxflags }}
357336
generator: Ninja
358-
extra-args: ${{ matrix.libcxx-cmake-args }}
359337
install: true
360338
install-prefix: ${sourceDir}/../install
361339
run-tests: false

docs/modules/ROOT/pages/install.adoc

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -297,7 +297,7 @@ NOTE: These examples assume VcPkg is already installed in the `third-party/vcpkg
297297
=== LLVM
298298

299299
MrDocs uses LLVM to parse C++ code and extract documentation from it.
300-
It depends on a recent version of LLVM: https://github.com/llvm/llvm-project/tree/e1065370aaacb1b1cb48e77d37d376bf024f4a39[e1065370]
300+
It depends on a recent version of LLVM: https://github.com/llvm/llvm-project/tree/6f5e5b630559f2d17bdccfab5dff3a97ac0f8c66[6f5e5b6]
301301

302302
**Download**:
303303

@@ -310,7 +310,7 @@ mkdir -p llvm-project <.>
310310
cd llvm-project
311311
git init <.>
312312
git remote add origin https://github.com/llvm/llvm-project.git <.>
313-
git fetch --depth 1 origin e1065370aaacb1b1cb48e77d37d376bf024f4a39 <.>
313+
git fetch --depth 1 origin 6f5e5b630559f2d17bdccfab5dff3a97ac0f8c66 <.>
314314
git checkout FETCH_HEAD <.>
315315
----
316316

src/lib/AST/ASTVisitor.cpp

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -1697,15 +1697,15 @@ class ASTVisitor
16971697
template_params, sfinae_info->Arguments, param_idx);
16981698
if(! param_arg)
16991699
return std::nullopt;
1700-
unsigned ParamIdx = FindParam(ATD->getInjectedTemplateArgs(), *param_arg);
1700+
unsigned ParamIdx = FindParam(ATD->getInjectedTemplateArgs(context_), *param_arg);
17011701
return std::make_tuple(ATD->getTemplateParameters(), std::move(controlling_params), ParamIdx);
17021702
}
17031703

17041704
auto* CTD = dyn_cast<ClassTemplateDecl>(TD);
17051705
if(! CTD)
17061706
return std::nullopt;
17071707

1708-
auto PrimaryArgs = CTD->getInjectedTemplateArgs();
1708+
auto PrimaryArgs = CTD->getInjectedTemplateArgs(context_);
17091709
llvm::SmallBitVector ControllingParams(PrimaryArgs.size());
17101710

17111711
QualType MemberType;

test-files/golden-tests/requires-clause.adoc

Lines changed: 94 additions & 13 deletions
Original file line numberDiff line numberDiff line change
@@ -8,7 +8,10 @@
88
|===
99
| Name | Description
1010

11-
| <<#A,`A`>>
11+
| <<#A-09,`A`>>
12+
|
13+
14+
| <<#A-05,`A`>>
1215
|
1316

1417
|===
@@ -35,14 +38,21 @@
3538
----
3639
template<typename T>
3740
void
38-
<<#f-05,f>>() requires pass:[(sizeof(T) == 4)];
41+
<<#f-04,f>>() requires pass:[(sizeof(T) == 4)];
3942
----
4043

4144
[source,cpp,subs="verbatim,macros,-callouts"]
4245
----
4346
template<typename T>
4447
void
45-
<<#f-08,f>>() requires pass:[(sizeof(T) == 2)];
48+
<<#f-0b,f>>() requires pass:[(sizeof(T) == 2)];
49+
----
50+
51+
[source,cpp,subs="verbatim,macros,-callouts"]
52+
----
53+
template<typename U>
54+
void
55+
<<#f-02,f>>() requires pass:[(sizeof(U) == 2)];
4656
----
4757

4858

@@ -52,7 +62,7 @@ void
5262

5363

5464

55-
[#f-05]
65+
[#f-04]
5666
== f
5767

5868

@@ -75,7 +85,7 @@ f() requires pass:[(sizeof(T) == 4)];
7585

7686

7787

78-
[#f-08]
88+
[#f-0b]
7989
== f
8090

8191

@@ -98,6 +108,29 @@ f() requires pass:[(sizeof(T) == 2)];
98108

99109

100110

111+
[#f-02]
112+
== f
113+
114+
115+
116+
=== Synopsis
117+
118+
Declared in `<pass:[requires-clause.cpp]>`
119+
120+
[source,cpp,subs="verbatim,macros,-callouts"]
121+
----
122+
template<typename U>
123+
void
124+
f() requires pass:[(sizeof(U) == 2)];
125+
----
126+
127+
128+
129+
130+
131+
132+
133+
101134
[#g]
102135
== g
103136

@@ -110,14 +143,21 @@ f() requires pass:[(sizeof(T) == 2)];
110143
----
111144
template<typename T> requires pass:[(sizeof(T) == 4)]
112145
void
113-
<<#g-0a,g>>();
146+
<<#g-00,g>>();
114147
----
115148

116149
[source,cpp,subs="verbatim,macros,-callouts"]
117150
----
118-
template<typename T> requires pass:[(sizeof(U) == 2)]
151+
template<typename T> requires pass:[(sizeof(T) == 2)]
119152
void
120-
<<#g-0c,g>>();
153+
<<#g-04,g>>();
154+
----
155+
156+
[source,cpp,subs="verbatim,macros,-callouts"]
157+
----
158+
template<typename U> requires pass:[(sizeof(U) == 2)]
159+
void
160+
<<#g-03,g>>();
121161
----
122162

123163

@@ -127,7 +167,7 @@ void
127167

128168

129169

130-
[#g-0a]
170+
[#g-00]
131171
== g
132172

133173

@@ -150,7 +190,7 @@ g();
150190

151191

152192

153-
[#g-0c]
193+
[#g-04]
154194
== g
155195

156196

@@ -161,7 +201,7 @@ Declared in `<pass:[requires-clause.cpp]>`
161201

162202
[source,cpp,subs="verbatim,macros,-callouts"]
163203
----
164-
template<typename T> requires pass:[(sizeof(U) == 2)]
204+
template<typename T> requires pass:[(sizeof(T) == 2)]
165205
void
166206
g();
167207
----
@@ -173,7 +213,48 @@ g();
173213

174214

175215

176-
[#A]
216+
[#g-03]
217+
== g
218+
219+
220+
221+
=== Synopsis
222+
223+
Declared in `<pass:[requires-clause.cpp]>`
224+
225+
[source,cpp,subs="verbatim,macros,-callouts"]
226+
----
227+
template<typename U> requires pass:[(sizeof(U) == 2)]
228+
void
229+
g();
230+
----
231+
232+
233+
234+
235+
236+
237+
238+
239+
[#A-09]
240+
== A
241+
242+
243+
244+
=== Synopsis
245+
246+
Declared in `<pass:[requires-clause.cpp]>`
247+
248+
[source,cpp,subs="verbatim,macros,-callouts"]
249+
----
250+
template<typename T> requires pass:[(sizeof(T) == 2)]
251+
struct A;
252+
----
253+
254+
255+
256+
257+
[#A-05]
177258
== A
178259

179260

@@ -184,7 +265,7 @@ Declared in `<pass:[requires-clause.cpp]>`
184265

185266
[source,cpp,subs="verbatim,macros,-callouts"]
186267
----
187-
template<typename T> requires pass:[(sizeof(U) == 2)]
268+
template<typename U> requires pass:[(sizeof(U) == 2)]
188269
struct A;
189270
----
190271

0 commit comments

Comments
 (0)