[libc++][test] Test SFINAE for `optional`'s operators in C++17 (#221643)
We have been intentionally constraining `optional`'s comparison
operators since C++17, so it is probably better to test the constraints
in C++17 mode. Given the constraints are standardized only since C++26
(via P2944R3), `LIBCPP_STATIC_ASSERT` is used in old modes.
In order to do this, `test_comparisons.h` is reworked to expose
`NonComparable` and `EqualityComparable` in pre-C++20 modes, and a new
type `TotallyOrdered` is invented as a replacement of
`ThreeWayComparable` in old modes.
As drive-by, also switches to use `// REQUIRES: std-at-least-c++17` in
touched test files, and adds previously missed includes of
`<type_traits>`.
py-isort: updated to 9.0.1
9.0.0 August 26 2026
- Remove logic for deprecated options
- Sort lazy import statements
- Add initial support for Python 3.15
- Compile with `mypyc`
- Cache calls to `posixpath.abspath`
- Consider private `stdlib` modules to be `stdlib`
- Add CLI Flag for --forced-separate (https://github.com/PyCQA/isort/pull/2367) @hirak99
- Add separate_packages option
- Fix inline comment duplication across merged `from X import` lines
- Fix src glob patterns passed via CLI
- Fix opening-line comment moving to alias attribute line on wrapped imports
- Fix multi_line_output=3/5 ignored when wrapping single imports with inline comments
- Fix false positive in `check_code` when using `float_to_top` + `add_imports`
- Fix: preserve bare `#` inline comments on imports
- Fix grouping of non-aliased imports when mixed with aliased imports from the same module
[34 lines not shown]
[MLIR] AllocaOp canonicalization for array allocation in LLVM dialect (#221508)
Add the following canonicalization pattern to AllocaOp in MLIR's LLVM
dialect:
```
%n = constant(N)
%alloca = llvm.alloca %n x Ty
```
->
```
%one = constant(1)
%alloca = llvm.alloca %one x !llvm.array<N x Ty>
```
Here N is a constant representable with 64-bits. With this
canonicalization, the AllocaOp will be translated to `alloca [N x Ty]`
in LLVM IR. Without this canonicalization, the AllocaOp was translated
to `alloca Ty, N`. We prefer `alloca [N x Ty]` over `alloca Ty, N` for
[6 lines not shown]
py-djangorestframework: updated to 3.18.1
3.18.1
Bug fixes
Fix duplicate validation errors for GenericIPAddressField with protocol
Fix int64 format detection for negative IntegerField minimums in OpenAPI schema definition
Fix list serializer on unique constraint validator
Reject non-finite values (nan, inf) in FloatField
Other changes
Add a compatibility setting for ListSerializer error formats
Expand deprecation classes and review deprecation policy
py-numpy: updated to 2.5.3
2.5.3
MAINT: Prepare 2.5.x for further development
BUG: raise ValueError when reading into record array with references...
BUG: avoid uninitialized memory access / NULL-pointer deref in...
TYP: fix ``np.random.{get,set}_bit_generator`` implicit re-exports...
BUG: don't assume strides are a multiple of itemsize in stringdtype...
CI: fix ccache CC override, add CXX in mac Conda CI
BUG: Fix ref leak in _convert_from_type for custom scalar types...
BUG: fix a number of issues around iterators and StringDType...
TST: avoid allocating huge tuple of arrays in concatenate test...
BUG: avoid possible UB in 'safe' multiplication helpers
MAINT: use ``PyObject_`` functions instead of raw ``PyArray_ ones``
BUG: validate UTF-8 and harden StringDType bounds handling
BUG: fix two error handling mistakes in stringdtype replace loop...
BUG: fix visibility annotations for functions in StringDType...
MAINT: Update ml_dtypes pin to 8/21/2026.
[12 lines not shown]
[ADT] Document the UniquingSet contracts. NFC (#221860)
#220195 added an isEqual hook, so an Info can now override the
comparison as well as the key and the hash. Name the three hooks, and
correct the guidance on when to prefer UniquingSet over FoldingSet.
Cover getOrInsert, which UniquingSet had no test for: an absent key
inserts, an equal key returns the node already in the set.
Aided by Opus 5
Co-authored-by: Kazu Hirata <kazu at google.com>
[SLP][modularisation][NFC] Move createInsertVector, createExtractVector (#221785)
Move the following BoUpSLP-independent shuffle helpers out of
SLPVectorizer.cpp into SLPVectorizer/SLPUtils.{h,cpp}:
createInsertVector
createExtractVector
They sit with the existing shuffle helpers. Behavior is unchanged.
Part of the SLPVectorizer.cpp modularization effort:
https://discourse.llvm.org/t/modularizing-slpvectorizer-cpp/90922
Iterate DenseMaps with auto and structured bindings. NFC (#221869)
Avoid naming `std::pair` directly. The DenseMap bucket is subject to
change (#221853).
[clang] Unique the QualType-keyed type pools in a UniquingSet. NFC (#221850)
Eight of the ASTContext type pools key on a QualType, or on a QualType
and a bool. The `get*Type()` functions incur the FoldingSetNodeID
serialization overhead before probing the hash table.
Switch to UniquingSet. Define `QualTypeBoolInfo` for three pools that
key on a QualType and a bool, because DenseMapInfo has no bool
specialization.
After the canonical type is built, these getters re-probe to refresh the
insert token. A token is now a hash (#218190), not a bucket, so nothing
invalidates it; fold the re-probe into the assertion it feeds.
Aided by Opus 5
[clang] Reject __super when preceded by a scope specifier (#221492)
The `__super` keyword is an MSVC extension that refers to the base class
of the current class context. It is fundamentally invalid for `__super`
to be qualified by another scope specifier (e.g. `::__super` or
`N::__super`).
Fixes #212988
---------
Co-authored-by: Shengxin Pei <TPPPP72 at outlook.com>
Co-authored-by: Corentin Jabot <corentinjabot at gmail.com>
[GlobalISel] When folding to fma correctly find fpext(fmul) with fewer uses (#218013)
When folding: `(fadd (fpext (fmul x, y)), z) -> (fma (fpext x), (fpext
y), z)` and both addends are candidates, correctly pick the side with
fewer uses. Previously the code looked for a `fmul` with the fewest uses
rather than a `fpext(fmul)`.
---------
Signed-off-by: John Lu <John.Lu at amd.com>
[X86] Prefer carry to overflow flag when using multiplication (#221611)
For all possible MUL/IMUL it will always output CF==OF, and CF is better
folding, so there's absolutely no reason the x86 backend should be
checking OF instead of CF for any form of multiply.
Did the change in FastISel too for consistency.
drm/amd/display: Prune per-tile Timing from Apple Studio Display Primary Tile
From Fangzhi Zuo
4628e40c9ca79c7ca6d55ee0d5da1839c2d0b4c7 in linux-6.18.y/6.18.50
7a4dd08c3f921576c6a7524f60e4f0e4601835d2 in mainline linux
drm/amd/display: hide Apple Studio Display secondary tile
From Jerry Zuo
7d860bed133698eefa7f5f808c7dbce1c2738b96 in linux-6.18.y/6.18.50
49521be4809d63fe3efb6bc68ee11cb1e1ef3d63 in mainline linux