Skip to content

Commit 224c047

Browse files
authored
Merge branch 'llvm:main' into llvm#101903
2 parents 318c3b4 + 421c3fe commit 224c047

File tree

671 files changed

+37052
-5244
lines changed

Some content is hidden

Large Commits have some content hidden by default. Use the searchbox below for content that may be hidden.

671 files changed

+37052
-5244
lines changed

.github/workflows/release-binaries-all.yml

Lines changed: 5 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -91,4 +91,8 @@ jobs:
9191
release-version: "${{ needs.setup-variables.outputs.release-version }}"
9292
upload: ${{ needs.setup-variables.outputs.upload == 'true'}}
9393
runs-on: "${{ matrix.runs-on }}"
94-
94+
secrets:
95+
# This will be empty for pull_request events, but that's fine, because
96+
# the release-binaries workflow does not use this secret for the
97+
# pull_request event.
98+
RELEASE_TASKS_USER_TOKEN: ${{ secrets.RELEASE_TASKS_USER_TOKEN }}

.github/workflows/release-binaries.yml

Lines changed: 6 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -37,6 +37,11 @@ on:
3737
description: "Runner to use for the build"
3838
required: true
3939
type: string
40+
secrets:
41+
RELEASE_TASKS_USER_TOKEN:
42+
description: "Secret used to check user permissions."
43+
required: false
44+
4045

4146
permissions:
4247
contents: read # Default everything to read-only
@@ -442,7 +447,7 @@ jobs:
442447
- name: Upload Build Provenance
443448
uses: actions/upload-artifact@65462800fd760344b1a7b4382951275a0abb4808 #v4.3.3
444449
with:
445-
name: ${{ runner.os }}-${{ runner.arch }}-release-binary-attestation
450+
name: ${{ needs.prepare.outputs.release-binary-filename }}-attestation
446451
path: ${{ needs.prepare.outputs.release-binary-filename }}.jsonl
447452

448453
- name: Upload Release

.github/workflows/release-tasks.yml

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -78,6 +78,8 @@ jobs:
7878
name: Build Release Binaries
7979
permissions:
8080
contents: write
81+
id-token: write
82+
attestations: write
8183
needs:
8284
- validate-tag
8385
- release-create

clang-tools-extra/clang-tidy/tool/CMakeLists.txt

Lines changed: 2 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -33,6 +33,7 @@ clang_target_link_libraries(clangTidyMain
3333
# Support plugins.
3434
if(CLANG_PLUGIN_SUPPORT)
3535
set(support_plugins SUPPORT_PLUGINS)
36+
set(export_symbols EXPORT_SYMBOLS_FOR_PLUGINS)
3637
endif()
3738

3839
add_clang_tool(clang-tidy
@@ -41,6 +42,7 @@ add_clang_tool(clang-tidy
4142
DEPENDS
4243
clang-resource-headers
4344
${support_plugins}
45+
${export_symbols}
4446
)
4547
clang_target_link_libraries(clang-tidy
4648
PRIVATE
@@ -57,10 +59,6 @@ target_link_libraries(clang-tidy
5759
${ALL_CLANG_TIDY_CHECKS}
5860
)
5961

60-
if(CLANG_PLUGIN_SUPPORT)
61-
export_executable_symbols_for_plugins(clang-tidy)
62-
endif()
63-
6462
install(PROGRAMS clang-tidy-diff.py
6563
DESTINATION "${CMAKE_INSTALL_DATADIR}/clang"
6664
COMPONENT clang-tidy)

clang/docs/LanguageExtensions.rst

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1503,6 +1503,7 @@ Conditional ``explicit`` __cpp_conditional_explicit C+
15031503
``static operator()`` __cpp_static_call_operator C++23 C++03
15041504
Attributes on Lambda-Expressions C++23 C++11
15051505
Attributes on Structured Bindings __cpp_structured_bindings C++26 C++03
1506+
Pack Indexing __cpp_pack_indexing C++26 C++03
15061507
``= delete ("should have a reason");`` __cpp_deleted_function C++26 C++03
15071508
-------------------------------------------- -------------------------------- ------------- -------------
15081509
Designated initializers (N494) C99 C89

clang/docs/OpenMPSupport.rst

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -314,7 +314,7 @@ implementation.
314314
+------------------------------+--------------------------------------------------------------+--------------------------+-----------------------------------------------------------------------+
315315
| misc | assumes directives | :part:`worked on` | |
316316
+------------------------------+--------------------------------------------------------------+--------------------------+-----------------------------------------------------------------------+
317-
| misc | assume directive | :part:`worked on` | |
317+
| misc | assume directive | :good:`done` | |
318318
+------------------------------+--------------------------------------------------------------+--------------------------+-----------------------------------------------------------------------+
319319
| misc | nothing directive | :good:`done` | D123286 |
320320
+------------------------------+--------------------------------------------------------------+--------------------------+-----------------------------------------------------------------------+

clang/docs/ReleaseNotes.rst

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -185,6 +185,9 @@ Bug Fixes to C++ Support
185185
- Clang now correctly recognizes the correct context for parameter
186186
substitutions in concepts, so it doesn't incorrectly complain of missing
187187
module imports in those situations. (#GH60336)
188+
- Fix init-capture packs having a size of one before being instantiated. (#GH63677)
189+
- Clang now preserves the unexpanded flag in a lambda transform used for pack expansion. (#GH56852), (#GH85667),
190+
(#GH99877).
188191

189192
Bug Fixes to AST Handling
190193
^^^^^^^^^^^^^^^^^^^^^^^^^
@@ -322,6 +325,7 @@ Python Binding Changes
322325

323326
OpenMP Support
324327
--------------
328+
- Added support for 'omp assume' directive.
325329

326330
Improvements
327331
^^^^^^^^^^^^

clang/include/clang-c/Index.h

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -2154,6 +2154,10 @@ enum CXCursorKind {
21542154
*/
21552155
CXCursor_OMPInterchangeDirective = 308,
21562156

2157+
/** OpenMP assume directive.
2158+
*/
2159+
CXCursor_OMPAssumeDirective = 309,
2160+
21572161
/** OpenACC Compute Construct.
21582162
*/
21592163
CXCursor_OpenACCComputeConstruct = 320,
@@ -2974,7 +2978,10 @@ enum CXTypeKind {
29742978

29752979
CXType_ExtVector = 176,
29762980
CXType_Atomic = 177,
2977-
CXType_BTFTagAttributed = 178
2981+
CXType_BTFTagAttributed = 178,
2982+
2983+
// HLSL Intangible Types
2984+
CXType_HLSLResource = 179
29782985
};
29792986

29802987
/**

clang/include/clang/AST/ASTConcept.h

Lines changed: 2 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -43,9 +43,8 @@ class ConstraintSatisfaction : public llvm::FoldingSetNode {
4343
ConstraintSatisfaction() = default;
4444

4545
ConstraintSatisfaction(const NamedDecl *ConstraintOwner,
46-
ArrayRef<TemplateArgument> TemplateArgs) :
47-
ConstraintOwner(ConstraintOwner), TemplateArgs(TemplateArgs.begin(),
48-
TemplateArgs.end()) { }
46+
ArrayRef<TemplateArgument> TemplateArgs)
47+
: ConstraintOwner(ConstraintOwner), TemplateArgs(TemplateArgs) {}
4948

5049
using SubstitutionDiagnostic = std::pair<SourceLocation, StringRef>;
5150
using Detail = llvm::PointerUnion<Expr *, SubstitutionDiagnostic *>;

clang/include/clang/AST/ASTContext.h

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -1173,6 +1173,8 @@ class ASTContext : public RefCountedBase<ASTContext> {
11731173
#include "clang/Basic/WebAssemblyReferenceTypes.def"
11741174
#define AMDGPU_TYPE(Name, Id, SingletonId) CanQualType SingletonId;
11751175
#include "clang/Basic/AMDGPUTypes.def"
1176+
#define HLSL_INTANGIBLE_TYPE(Name, Id, SingletonId) CanQualType SingletonId;
1177+
#include "clang/Basic/HLSLIntangibleTypes.def"
11761178

11771179
// Types for deductions in C++0x [stmt.ranged]'s desugaring. Built on demand.
11781180
mutable QualType AutoDeductTy; // Deduction against 'auto'.

clang/include/clang/AST/DeclBase.h

Lines changed: 3 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -673,6 +673,9 @@ class alignas(8) Decl {
673673
/// Whether this declaration comes from explicit global module.
674674
bool isFromExplicitGlobalModule() const;
675675

676+
/// Whether this declaration comes from global module.
677+
bool isFromGlobalModule() const;
678+
676679
/// Whether this declaration comes from a named module.
677680
bool isInNamedModule() const;
678681

0 commit comments

Comments
 (0)