Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
167 commits
Select commit Hold shift + click to select a range
360a03c
[mlir][tosa] Add acc_type to Tosa-v1.0 Conv Ops (#121466)
FranklandJack Jan 8, 2025
30b7da7
[lldb][OpenBSD][NFC] Replace tab with spaces (#122041)
brad0 Jan 8, 2025
20d7fa1
[TySan] Added a 'print_stacktrace' flag for more detailed errors (#12…
gbMattN Jan 8, 2025
bfa711a
[InstCombine] Use combineMetadataForCSE in phi of loads fold
nikic Jan 8, 2025
edf14ed
[Clang] Don't form a type constraint if the concept is invalid (#122065)
zyn0217 Jan 8, 2025
9fc152d
[TBAA] Add Clang pointer TBAA test with void *.
fhahn Jan 8, 2025
03e7862
[ValueTracking] Move `getFlippedStrictnessPredicateAndConstant` into …
dtcxzyw Jan 8, 2025
7060d2a
[CodeGenPrepare] Regenerate test `X86/codegen-prepare-addrmode-sext.l…
dtcxzyw Jan 8, 2025
1c067a5
[MLIR] Enable import of non self referential alias scopes (#121987)
wsmoses Jan 8, 2025
51d7605
Fix macho-merged-funcs-dwarf.yaml test on Windows
zmodem Jan 8, 2025
72b6a57
[clang-tidy] fix false positives when using name-independent variable…
HerrCai0907 Jan 8, 2025
645c1ee
[flang][driver] add option to make all main program variable static (…
jeanPerier Jan 8, 2025
7004d68
[compiler-rt][rtsan] adding setlinebuf/setbuffer interception. (#122018)
devnexen Jan 8, 2025
d07762e
[UpdateTestChecks][NFC] - Fix typos (#121964)
OutOfCache Jan 8, 2025
72a28a3
[clang][dataflow] Use smart pointer caching in unchecked optional acc…
jvoung Jan 8, 2025
81fc3ad
[clang] Avoid re-evaluating field bitwidth (#117732)
tbaederr Jan 8, 2025
35c5e56
Clean up -Wdangling-assignment-gsl in clang and mlir
d0k Jan 8, 2025
1411a9a
[libc++][NFC] Add missing includes in tzdb.cpp
ldionne Jan 8, 2025
346fad5
[TBAA] Simplify checks for unnamed struct case, where anyptr is used.
fhahn Jan 8, 2025
59bdea2
Revert "[clang] Avoid re-evaluating field bitwidth (#117732)"
tbaederr Jan 8, 2025
0d7022e
[MLIR][GPU] Fix gpu.printf test syntax after f50f9698ad012882df8dd605…
d0k Jan 8, 2025
fdd7caf
[z/OS][SystemZ] Clang dependency files are text files (#121849)
redstar Jan 8, 2025
1160994
[SLP]Fix a crash for very long GEP chains
alexey-bataev Jan 8, 2025
81898ac
Revert "[lldb-dap] Ensure the IO forwarding threads are managed by th…
d0k Jan 8, 2025
b66f6b2
Revert #116331 & #121852 (#122105)
llvm-beanz Jan 8, 2025
f37bee1
[ReachingDefAnalysis][NFC] Rename `PhysReg` to `Reg`. (#122112)
mgudim Jan 8, 2025
322ff42
[PhaseOrdering][AArch64] block_scaling_decompr_8bit.ll - use -passes=…
RKSimon Jan 8, 2025
fe162be
Make test more lenient for custom clang version strings
d0k Jan 8, 2025
a3b4d91
Fix -Wdangling-assignment-gsl in ClangdLSPServerTests
d0k Jan 8, 2025
b054289
[libc++] Add missing hardening checks and tests for vector<bool> (#12…
winner245 Jan 8, 2025
6376418
AMDGPU: Add baseline test for add64 with constant test (#122048)
arsenm Jan 8, 2025
09583de
AMDGPU: Reduce 64-bit add width if low bits are known 0 (#122049)
arsenm Jan 8, 2025
a5c3cbf
[Loads] Drop dead Offset argument (NFC)
nikic Jan 8, 2025
92e575d
[HLSL] Add SPIR-V version of getPointer. (#121963)
s-perron Jan 8, 2025
f993a8b
[Lint] Lint mismatch in ABI attributes (#121929)
nikic Jan 8, 2025
4751f47
[mlir][Transforms] Dialect conversion: Turn LLVM_DEPRECATED into comm…
matthias-springer Jan 8, 2025
f695852
[libc++] Put _LIBCPP_NODEBUG on all internal aliases (#118710)
philnik777 Jan 8, 2025
e540546
[OptTable] Fix typo VALUE => VALUES (NFCI) (#121523)
AlexMaclean Jan 8, 2025
1a830aa
[ObjCopy] Respect requirements of LC_ENCRYPTION_INFO commands (#120995)
drodriguez Jan 8, 2025
d4182f1
[InstCombine] move foldAndOrOfICmpsOfAndWithPow2 into foldLogOpOfMask…
andjo403 Jan 8, 2025
570f030
Revert "Reapply "[libc++] Explicitly convert to masks in SIMD code (#…
vitalybuka Jan 8, 2025
3972ed5
Revert "[Clang] Implement CWG2369 "Ordering between constraints and s…
zyn0217 Jan 8, 2025
b05be2a
[AArch64] Use GenericTable PrimaryKey to remove one of the SearchInde…
topperc Jan 8, 2025
29ed600
[AArch64] Simplify ExactFPImm GenericTable. NFC (#121827)
topperc Jan 8, 2025
b3ce6dc
[mlir][licm] Make scf.if recursively speculatable (#122031)
ardaunal Jan 8, 2025
ae6a780
[HLSL] [DirectX] translate llvm fast math flags to llvm 3.7 fast math…
spall Jan 8, 2025
911880e
[gn] port 71ddde8ba52a (LLVMExegesisRISCVTests)
nico Jan 8, 2025
d6ae3d3
[gn] port afa8aeeeec (RISCVGenExegesis.inc)
nico Jan 8, 2025
e93181b
[RISCV][VLOPT] Add vector fp-conversion instruction to isSupportedIns…
michaelmaitland Jan 8, 2025
0b722de
[gn build] Port 30ba8be22eb0
llvmgnsyncbot Jan 8, 2025
983a957
[RISCV][VLOpt] Consolidate EMUL=SEW/EEW*LMUL logic [NFC] (#122021)
preames Jan 8, 2025
8e65940
[FMV][AArch64] Simplify version selection according to ACLE. (#121921)
labrinea Jan 8, 2025
cdbba15
[libc] Add --write-if-changed switch to hdrgen/main.py (#122037)
frobtech Jan 8, 2025
878a574
[flang][cuda] Add c_devloc as intrinsic and inline it during lowering…
clementval Jan 8, 2025
bb9785a
[Driver][UEFI] Enable Microsoft extensions (#121875)
Prabhuk Jan 8, 2025
75781fa
Hexagon loop idiom pass segfaults when -debug present (#121828)
swalk-qualcomm Jan 8, 2025
f9c2377
[libc][NFC] Cleanup time.h (#122027)
michaelrj-google Jan 8, 2025
0b4fca5
[RISCV][VLOpt] Remove State field from OperandInfo [nfc] (#122160)
preames Jan 8, 2025
676c641
[VectorCombine] Use getInstructionCost to cost Shuffle. (#122068)
davemgreen Jan 8, 2025
f35b9ad
[clang] Propagate -ftime-report to offload lto (#122143)
macurtis-amd Jan 8, 2025
5083980
[libc] Add hardening for FixedVector data structure and fix exposed b…
vonosmas Jan 8, 2025
7453d76
[flang] Silence inappropriate error message (#120614)
klausler Jan 8, 2025
b8513e4
[flang] Better handling of weird pointer assignment case (#120628)
klausler Jan 8, 2025
7463b46
[flang][runtime] Fix use of empty optional in BOZ input (#120789)
klausler Jan 8, 2025
d1ea605
[flang] Detect and report parsing failure (#121349)
klausler Jan 8, 2025
9496391
[flang] Fold LCOBOUND & UCOBOUND (#121411)
klausler Jan 8, 2025
07b3bba
[flang] Allow LOCK_TYPE & al. to associate with INTENT(IN OUT) (#121413)
klausler Jan 8, 2025
b53bdc6
[flang] Add default component initialization to some built-in types (…
klausler Jan 8, 2025
510285c
[flang] Fix allocatable coarray INTENT(OUT) check (#121528)
klausler Jan 8, 2025
9462ce8
[flang] Fix crash when handling benign USE conflict (#121977)
klausler Jan 8, 2025
eb77f44
[flang] Accept L0 (#121998)
klausler Jan 8, 2025
3a8a52f
[flang] Make IsCoarray() more accurate (#121415)
klausler Jan 8, 2025
3c2fc7a
[flang] Refine tokenization trick that hid macro name (#121990)
klausler Jan 8, 2025
647e8d8
[lldb][OpenBSD] Make use of Environment class (#122040)
brad0 Jan 8, 2025
ac08f0d
[bazel] Port 8e65940161cd5a7dea5896fe4ae057d4cc07c703
alinas Jan 8, 2025
2c2accb
[OpenACC] Enable 'self' sema for 'update' construct
erichkeane Jan 8, 2025
3b92cf2
[libc++] Add _LIBCPP_NODEBUG to __unwrap_ref_decay_t
philnik777 Jan 8, 2025
5e9e1ff
[clang] Infer capture_by for insert_or_assign (#122109)
usx95 Jan 8, 2025
891481e
[OpenACC] Add missing 'check' line to update-construct-ast test.
erichkeane Jan 8, 2025
8948340
[AArch64] Add additional div and rem test coverage. NFC
davemgreen Jan 8, 2025
560b72c
[NVPTX] Support address offsets added with disjoint or (#122042)
AlexMaclean Jan 8, 2025
0d921f9
[SLP][NFC]Introduce and use createInsertVector helper function, NFC
alexey-bataev Jan 8, 2025
2b26ee6
[libcxx] Handle windows system error code mapping in std::error_code.…
jyknight Jan 8, 2025
b9c932e
[test][Driver][clang] Fix darwin-embedded-search-paths.c when CLANG_D…
ian-twilightcoder Jan 8, 2025
5b76a2e
[SLP]Correctly calculate mask for the inserted vector
alexey-bataev Jan 8, 2025
b48b99f
[hwasan] Add test case for null pointer dereference (#122186)
thurstond Jan 8, 2025
b0f11df
[RISCV] Add call preserved regmask to tail calls. (#122181)
topperc Jan 9, 2025
3cb9648
[llvm-jitlink] Shut down the session on an error return path.
lhames Jan 8, 2025
8312876
[ORC] Fix Task cleanup during DynamicThreadPoolTaskDispatcher::shutdown.
lhames Jan 8, 2025
cba9bd5
[DirectX] Implement the resource.load.rawbuffer intrinsic (#121012)
bogner Jan 9, 2025
160a408
[ORC] Remove an unused typedef.
lhames Jan 9, 2025
fce0314
[LLVM][DWARF] Create debug names entry for non-tu top level DIE (#121…
ayermolo Jan 9, 2025
5ae44bf
[LoongArch] Add debug location for register reload
wangleiat Jan 9, 2025
91ab10e
[Github] Add sudo to CI container (#122036)
boomanaiden154 Jan 9, 2025
783dc59
[compiler-rt] Check codesign in path before using (#99837)
RossComputerGuy Jan 9, 2025
c6b7bd4
[libc] Support _IONBF buffering for read_unlocked (#120677)
jackhong12 Jan 9, 2025
e438513
[AIX][AsmPrinter] Fix unsigned subtraction wrap-around (#122214)
hubert-reinterpretcast Jan 9, 2025
18de1db
[lldb][AIX] Some base #if _AIX changes of a minimal lldb build (#120979)
DhruvSrivastavaX Jan 9, 2025
f6c76d5
[PM] Remove is_analysis label for LoopSimplify (#121433)
optimisan Jan 9, 2025
5fdcea2
[clang] Simplify BackendConsumer. NFC
MaskRay Jan 9, 2025
929b90b
[Github] Add sccache to CI container (#122063)
boomanaiden154 Jan 9, 2025
5d03235
[RISCV] Add -mcpu=sifive-p550. (#122164)
topperc Jan 9, 2025
459d413
[CI][Github] Do not fail premerge job
boomanaiden154 Jan 9, 2025
b30f9d7
[libc] Fix return value of __cxa_thread_atexit_impl function. (#122171)
vonosmas Jan 9, 2025
6dd1315
[clang] Simplify BackendConsumer after #69371
MaskRay Jan 9, 2025
1a7e7ef
Format BackendUtil.h. NFC
MaskRay Jan 9, 2025
9ba6e8d
[Clang][ASTMatcher] Extend `hasDependentName` to match DependentNameT…
AmrDeveloper Jan 9, 2025
b8337dc
[InstCombine] Handle commuted patterns in `foldBinOpShiftWithShift` (…
dtcxzyw Jan 9, 2025
d80bdf7
[IRBuilder] Add a helper function to intersect FMFs from two instruct…
dtcxzyw Jan 9, 2025
42b2325
[ORC] Fail materialization in tasks that are destroyed before running.
lhames Jan 6, 2025
24a92f5
DependencyScanningTool.h: Use more robust `std::function` (fixup for …
chapuni Jan 9, 2025
61b294a
Introduce CounterExpressionBuilder::subst(C, Map) (#112698)
chapuni Jan 9, 2025
f5cd181
[Coverage] Introduce `getBranchCounterPair()`. NFC. (#112702)
chapuni Jan 9, 2025
d30a5fc
[NFC][AArch64] Explicitly define undefined bits for instructions (#12…
jthackray Jan 9, 2025
397ac44
[Coverage] Introduce the type `CounterPair` for RegionCounterMap. NFC…
chapuni Jan 9, 2025
4847395
[Clang] Adjust pointer-overflow sanitizer for N3322 (#120719)
nikic Jan 9, 2025
1b29435
[llvm] Fix crash caused by reprocessing complex reductions (#122077)
NickGuy-Arm Jan 9, 2025
71f7b97
[Local] Make combineAAMetadata() more principled (#122091)
nikic Jan 9, 2025
38565da
[LangRef] Add some documentation for ABI / call-site attributes (#121…
nikic Jan 9, 2025
f22441c
[AArch64] Add sve div and rem tests. NFC
davemgreen Jan 9, 2025
f07b10b
[Support] Recycler: Match dealloc size and enforce min size (#121889)
optimisan Jan 9, 2025
f88ef1b
[LV] Teach LoopVectorizationLegality about struct vector calls (#119221)
MacDue Jan 9, 2025
06673a9
[libc++] Uglify non-standard member typedef const_reference in bitset…
winner245 Jan 9, 2025
6c06253
[libc++] Fix erroneous internal capacity evaluation in vector<bool> (…
winner245 Jan 9, 2025
a261eee
[lldb] Store *signed* ranges in lldb_private::Block (#120224)
labath Jan 9, 2025
659cd2a
[NFC][AMDGPU] Pre-commit tests for IR variant - isFMAFasterThanFMulAd…
chinmaydd Jan 9, 2025
b79ed87
[OpenMP][OMPIRBuilder] Handle non-failing calls properly (#115863)
skatrak Jan 9, 2025
fd6baa4
[clang][ExprConst] Add diagnostics for invalid binary arithmetic (#11…
tbaederr Jan 9, 2025
d3f1b86
[lldb][NFC] clang-format MemoryRegionInfo.h
DavidSpickett Jan 9, 2025
703e2d5
[X86] Add test coverage for #116815
RKSimon Jan 9, 2025
aedb30f
[OpenMP] codegen support for masked combined construct parallel maske…
chandraghale Jan 9, 2025
f1d5efe
[AArch64] Combine and lsl into ubfiz (#118974)
c-rhodes Jan 9, 2025
dcdf44a
[InstCombine] Remove foldSelectICmpEq() fold (#122098)
nikic Jan 9, 2025
c8ee116
[RISCV] Fix masked->unmasked peephole handling masked pseudos with no…
lukel97 Jan 9, 2025
b0697dc
[LV] Only check isVectorizableEarlyExitLoop with multiple exits. (#12…
fhahn Jan 9, 2025
c05fc9b
[AArch64] Fix sebvector -> subvector typo. NFC
davemgreen Jan 9, 2025
cdd652e
[MLIR][GPU] Support bf16 and i1 gpu::shuffles to LLVMSPIRV conversion…
PietroGhg Jan 9, 2025
86440cb
[SPIR-V] Prefer SPV_INTEL_optnone over SPV_EXT_optnone when both exte…
VyacheslavLevytskyy Jan 9, 2025
e41f96a
[clang-tidy][NFC] clean `LangOpts` parameter in `explicitMarkUnused` …
HerrCai0907 Jan 9, 2025
c3d1a50
[bazel] Add missing dependency for b79ed8729b3d6d5482481c41a7de2cd75b…
d0k Jan 9, 2025
52c338d
[llvm][NFC] Rework Timer.cpp globals to ensure valid lifetimes (#121663)
macurtis-amd Jan 9, 2025
e3e26dc
[llvm] Remove extra ';' outside of a function (NFC)
DamonFool Jan 9, 2025
b4e17d4
[MachineLICM] Use `RegisterClassInfo::getRegPressureSetLimit` (#119826)
wangpc-pp Jan 9, 2025
5ff7f47
[C++20] Destroying delete and deleted destructors (#118800)
AaronBallman Jan 9, 2025
a0d7749
[M68k] implement move to and from sr (#111145)
TechnoElf Jan 9, 2025
81ae668
[libc++] Add __iswctype to the locale base API since it's required by…
ldionne Jan 9, 2025
c85d516
[Clang][OpenMP][Doc] Update OpenMPSupport.rst (#122174)
CatherineMoore Jan 9, 2025
f77a7dd
[RISCV][VLOPT] Add getOperandInfo for integer and floating point wide…
michaelmaitland Jan 9, 2025
d2b78c6
AMDGPU: Custom lower bf16 shuffles (#122252)
arsenm Jan 9, 2025
d723587
[HLSL] Explicitly set the SPIR-V version with spv-target-env (#121961)
s-perron Jan 9, 2025
c57810a
[LLD][COFF] Sort base relocations (#121699)
cjacek Jan 9, 2025
cb04bc0
[lldb] Move GetEnvironment function into common code (#122173)
brad0 Jan 9, 2025
550841f
[RISCV][VLOPT] Add fp-reductions to getOperandInfo (#122151)
michaelmaitland Jan 9, 2025
aa0191e
[analyzer][NFC] Update stale test after #97265 (#122272)
steakhal Jan 9, 2025
1a73654
[Clang] disallow attributes after namespace identifier (#121614)
a-tarasyuk Jan 9, 2025
de12836
[AMDGPU] Rework getDivNumBits API (#119768)
choikwa Jan 9, 2025
6f9e688
[flang][OpenMP] Fix reduction init region block management (#122079)
ergawy Jan 9, 2025
21ba7ae
[mlir][vector][nfc] Update `alignedConversionPrecondition` (#122136)
banach-space Jan 9, 2025
644de6a
Revert "[NVPTX] designate fabs and fneg as free (#121513)"
d0k Jan 9, 2025
c01ffab
[clang-tidy][doc] reorder release note
HerrCai0907 Jan 9, 2025
1374aa3
[clang] Don't infer lifetime_capture-by for reference of raw pointer …
hokein Jan 9, 2025
2420361
[llvm][Docs] add discord bot calendar capability notes (#122140)
gburgessiv Jan 9, 2025
dfa5ee2
[mlir][tensor] Add e2e test for tensor.unpack with dynamic tile sizes…
banach-space Jan 9, 2025
465a3ce
[CUDA][HIP] improve error message for missing cmath (#122155)
yxsamliu Jan 9, 2025
e04ed7e
[AutoBump] Merge with fixes of 360a03c9 (Jan 08)
jorickert Mar 18, 2025
ee87c02
[AutoBump] Merge with 465a3ce9 (Jan 09)
jorickert Mar 18, 2025
5546d0e
Merge pull request #503 from Xilinx/bump_to_465a3ce9
jorickert Apr 14, 2025
File filter

Filter by extension

Filter by extension


Conversations
Failed to load comments.
Loading
Jump to
The table of contents is too big for display.
Diff view
Diff view
  •  
  •  
  •  
17 changes: 17 additions & 0 deletions .github/workflows/containers/github-action-ci/Dockerfile
Original file line number Diff line number Diff line change
Expand Up @@ -57,6 +57,7 @@ RUN apt-get update && \
nodejs \
perl-modules \
python3-psutil \
sudo \

# These are needed by the premerge pipeline. Pip is used to install
# dependent python packages and ccache is used for build caching. File and
Expand All @@ -66,12 +67,28 @@ RUN apt-get update && \
file \
tzdata

# Install sccache as it is needed by most of the project test workflows and
# cannot be installed by the ccache action when executing as a non-root user.
# TODO(boomanaiden154): This should be switched to being installed with apt
# once we bump to Ubuntu 24.04.
RUN curl -L 'https://github.com/mozilla/sccache/releases/download/v0.7.6/sccache-v0.7.6-x86_64-unknown-linux-musl.tar.gz' > /tmp/sccache.tar.gz && \
echo "2902a5e44c3342132f07b62e70cca75d9b23252922faf3b924f449808cc1ae58 /tmp/sccache.tar.gz" | sha256sum -c && \
tar xzf /tmp/sccache.tar.gz -O --wildcards '*/sccache' > '/usr/local/bin/sccache' && \
rm /tmp/sccache.tar.gz && \
chmod +x /usr/local/bin/sccache

ENV LLVM_SYSROOT=$LLVM_SYSROOT
ENV PATH=${LLVM_SYSROOT}/bin:${PATH}

# Create a new user to avoid test failures related to a lack of expected
# permissions issues in some tests. Set the user id to 1001 as that is the
# user id that Github Actions uses to perform the checkout action.
RUN useradd gha -u 1001 -m -s /bin/bash

# Also add the user to passwordless sudoers so that we can install software
# later on without having to rebuild the container.
RUN adduser gha sudo
RUN echo '%sudo ALL=(ALL) NOPASSWD:ALL' >> /etc/sudoers

USER gha

6 changes: 6 additions & 0 deletions .github/workflows/premerge.yaml
Original file line number Diff line number Diff line change
Expand Up @@ -31,6 +31,12 @@ jobs:
- name: Setup ccache
uses: hendrikmuhs/ccache-action@v1.2.14
- name: Build and Test
# Mark the job as a success even if the step fails so that people do
# not get notified while the new premerge pipeline is in an
# experimental state.
# TODO(boomanaiden154): Remove this once the pipeline is stable and we
# are ready for people to start recieving notifications.
continue-on-error: true
run: |
git config --global --add safe.directory '*'

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -15,6 +15,7 @@
#include "clang/ASTMatchers/ASTMatchFinder.h"
#include "clang/ASTMatchers/ASTMatchers.h"
#include "clang/ASTMatchers/ASTMatchersMacros.h"
#include "clang/Basic/LangOptions.h"

using namespace clang::ast_matchers;
using namespace clang::tidy::matchers;
Expand All @@ -29,6 +30,13 @@ static constexpr StringRef DefaultIncludeTypeRegex =

AST_MATCHER(VarDecl, isLocalVarDecl) { return Node.isLocalVarDecl(); }
AST_MATCHER(VarDecl, isReferenced) { return Node.isReferenced(); }
AST_MATCHER(VarDecl, explicitMarkUnused) {
// Implementations should not emit a warning that a name-independent
// declaration is used or unused.
LangOptions const &LangOpts = Finder->getASTContext().getLangOpts();
return Node.hasAttr<UnusedAttr>() ||
(LangOpts.CPlusPlus26 && Node.isPlaceholderVar(LangOpts));
}
AST_MATCHER(Type, isReferenceType) { return Node.isReferenceType(); }
AST_MATCHER(QualType, isTrivial) {
return Node.isTrivialType(Finder->getASTContext()) ||
Expand Down Expand Up @@ -60,7 +68,7 @@ void UnusedLocalNonTrivialVariableCheck::registerMatchers(MatchFinder *Finder) {
varDecl(isLocalVarDecl(), unless(isReferenced()),
unless(isExceptionVariable()), hasLocalStorage(), isDefinition(),
unless(hasType(isReferenceType())), unless(hasType(isTrivial())),
unless(hasAttr(attr::Kind::Unused)),
unless(explicitMarkUnused()),
hasType(hasUnqualifiedDesugaredType(
anyOf(recordType(hasDeclaration(namedDecl(
matchesAnyListedName(IncludeTypes),
Expand Down
10 changes: 6 additions & 4 deletions clang-tools-extra/clangd/unittests/ClangdLSPServerTests.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -208,12 +208,13 @@ TEST_F(LSPTest, ClangTidyRename) {
Annotations Source(R"cpp(
void [[foo]]() {}
)cpp");
Opts.ClangTidyProvider = [](tidy::ClangTidyOptions &ClangTidyOpts,
llvm::StringRef) {
constexpr auto ClangTidyProvider = [](tidy::ClangTidyOptions &ClangTidyOpts,
llvm::StringRef) {
ClangTidyOpts.Checks = {"-*,readability-identifier-naming"};
ClangTidyOpts.CheckOptions["readability-identifier-naming.FunctionCase"] =
"CamelCase";
};
Opts.ClangTidyProvider = ClangTidyProvider;
auto &Client = start();
Client.didOpen("foo.hpp", Header.code());
Client.didOpen("foo.cpp", Source.code());
Expand Down Expand Up @@ -266,10 +267,11 @@ TEST_F(LSPTest, ClangTidyCrash_Issue109367) {
// This test requires clang-tidy checks to be linked in.
if (!CLANGD_TIDY_CHECKS)
return;
Opts.ClangTidyProvider = [](tidy::ClangTidyOptions &ClangTidyOpts,
llvm::StringRef) {
constexpr auto ClangTidyProvider = [](tidy::ClangTidyOptions &ClangTidyOpts,
llvm::StringRef) {
ClangTidyOpts.Checks = {"-*,boost-use-ranges"};
};
Opts.ClangTidyProvider = ClangTidyProvider;
// Check that registering the boost-use-ranges checker's matchers
// on two different threads does not cause a crash.
auto &Client = start();
Expand Down
12 changes: 8 additions & 4 deletions clang-tools-extra/docs/ReleaseNotes.rst
Original file line number Diff line number Diff line change
Expand Up @@ -241,6 +241,10 @@ Changes in existing checks
<clang-tidy/checks/bugprone/unsafe-functions>` check to allow specifying
additional functions to match.

- Improved :doc:`bugprone-unused-local-non-trivial-variable
<clang-tidy/checks/bugprone/unused-local-non-trivial-variable>` check to avoid
false positives when using name-independent variables after C++26.

- Improved :doc:`bugprone-use-after-move
<clang-tidy/checks/bugprone/use-after-move>` to avoid triggering on
``reset()`` calls on moved-from ``std::optional`` and ``std::any`` objects,
Expand Down Expand Up @@ -346,6 +350,10 @@ Changes in existing checks
file path for anonymous enums in the diagnostic, and by fixing a typo in the
diagnostic.

- Improved :doc:`readability-identifier-naming
<clang-tidy/checks/readability/identifier-naming>` check to
validate ``namespace`` aliases.

- Improved :doc:`readability-implicit-bool-conversion
<clang-tidy/checks/readability/implicit-bool-conversion>` check
by adding the option `UseUpperCaseLiteralSuffix` to select the
Expand All @@ -356,10 +364,6 @@ Changes in existing checks
<clang-tidy/checks/readability/redundant-smartptr-get>` check to
remove `->`, when redundant `get()` is removed.

- Improved :doc:`readability-identifier-naming
<clang-tidy/checks/readability/identifier-naming>` check to
validate ``namespace`` aliases.

Removed checks
^^^^^^^^^^^^^^

Expand Down
Original file line number Diff line number Diff line change
Expand Up @@ -12,6 +12,7 @@ The following types of variables are excluded from this check:
* static or thread local
* structured bindings
* variables with ``[[maybe_unused]]`` attribute
* name-independent variables

This check can be configured to warn on all non-trivial variables by setting
`IncludeTypes` to `.*`, and excluding specific types using `ExcludeTypes`.
Expand Down
3 changes: 2 additions & 1 deletion clang-tools-extra/include-cleaner/lib/Analysis.cpp
Original file line number Diff line number Diff line change
Expand Up @@ -85,8 +85,9 @@ analyze(llvm::ArrayRef<Decl *> ASTRoots,
const auto MainFile = *SM.getFileEntryRefForID(SM.getMainFileID());
llvm::DenseSet<const Include *> Used;
llvm::StringMap<Header> Missing;
constexpr auto DefaultHeaderFilter = [](llvm::StringRef) { return false; };
if (!HeaderFilter)
HeaderFilter = [](llvm::StringRef) { return false; };
HeaderFilter = DefaultHeaderFilter;
OptionalDirectoryEntryRef ResourceDir =
PP.getHeaderSearchInfo().getModuleMap().getBuiltinDir();
walkUsed(ASTRoots, MacroRefs, PI, PP,
Expand Down
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// RUN: %check_clang_tidy -std=c++23 -check-suffixes=,CXX23 %s bugprone-unused-local-non-trivial-variable %t -- \
// RUN: -config="{CheckOptions: {bugprone-unused-local-non-trivial-variable.IncludeTypes: '::async::Foo'}}" \
// RUN: --
// RUN: %check_clang_tidy -std=c++26 %s bugprone-unused-local-non-trivial-variable %t -- \
// RUN: -config="{CheckOptions: {bugprone-unused-local-non-trivial-variable.IncludeTypes: '::async::Foo'}}" \
// RUN: --

namespace async {
class Foo {
public:
~Foo();
private:
};
} // namespace async

void check() {
async::Foo C;
// CHECK-MESSAGES: :[[@LINE-1]]:14: warning: unused local variable 'C' of type 'async::Foo' [bugprone-unused-local-non-trivial-variable]
async::Foo _;
// CHECK-MESSAGES-CXX23: :[[@LINE-1]]:14: warning: unused local variable '_' of type 'async::Foo' [bugprone-unused-local-non-trivial-variable]
}
15 changes: 15 additions & 0 deletions clang/docs/LibASTMatchersReference.html
Original file line number Diff line number Diff line change
Expand Up @@ -3462,6 +3462,21 @@ <h2 id="narrowing-matchers">Narrowing Matchers</h2>
</pre></td></tr>


<tr><td>Matcher&lt;<a href="https://clang.llvm.org/doxygen/classclang_1_1DependentNameType.html">DependentNameType</a>&gt;</td><td class="name" onclick="toggle('hasDependentName1')"><a name="hasDependentName1Anchor">hasDependentName</a></td><td>std::string N</td></tr>
<tr><td colspan="4" class="doc" id="hasDependentName1"><pre>Matches the dependent name of a DependentNameType.

Matches the dependent name of a DependentNameType

Given:

template &lt;typename T&lt; struct declToImport {
typedef typename T::type dependent_name;
};

dependentNameType(hasDependentName("type")) matches `T::type`
</pre></td></tr>


<tr><td>Matcher&lt;<a href="https://clang.llvm.org/doxygen/classclang_1_1CXXDependentScopeMemberExpr.html">CXXDependentScopeMemberExpr</a>&gt;</td><td class="name" onclick="toggle('memberHasSameNameAsBoundNode0')"><a name="memberHasSameNameAsBoundNode0Anchor">memberHasSameNameAsBoundNode</a></td><td>std::string BindingID</td></tr>
<tr><td colspan="4" class="doc" id="memberHasSameNameAsBoundNode0"><pre>Matches template-dependent, but known, member names against an already-bound
node
Expand Down
Loading