@@ -520,6 +520,30 @@ Improvements to Clang's diagnostics
520
520
(`#63151: <https://github.com/llvm/llvm-project/issues/63151 >`_).
521
521
- Clang now diagnoses unexpanded packs within the template argument lists of function template specializations.
522
522
523
+ - Clang now emits more descriptive diagnostics for 'unusual' expressions (e.g. incomplete index
524
+ expressions on matrix types or builtin functions without an argument list) as placement-args
525
+ to new-expressions.
526
+
527
+ Before:
528
+
529
+ .. code-block :: text
530
+
531
+ error: no matching function for call to 'operator new'
532
+ 13 | new (__builtin_memset) S {};
533
+ | ^ ~~~~~~~~~~~~~~~~~~
534
+
535
+ note: candidate function not viable: no known conversion from '<builtin fn type>' to 'int' for 2nd argument
536
+ 5 | void* operator new(__SIZE_TYPE__, int);
537
+ | ^
538
+
539
+ After:
540
+
541
+ .. code-block :: text
542
+
543
+ error: builtin functions must be directly called
544
+ 13 | new (__builtin_memset) S {};
545
+ | ^
546
+
523
547
524
548
Improvements to Clang's time-trace
525
549
----------------------------------
@@ -686,10 +710,15 @@ Bug Fixes in This Version
686
710
(`#65568 <https://github.com/llvm/llvm-project/issues/65568 >`_)
687
711
- Fix an issue where clang doesn't respect detault template arguments that
688
712
are added in a later redeclaration for CTAD.
689
- Fixes (#69987 <https://github.com/llvm/llvm-project/issues/69987>`_)
713
+ Fixes (` #69987 <https://github.com/llvm/llvm-project/issues/69987 >`_)
690
714
- Fix an issue where CTAD fails for explicit type conversion.
691
- Fixes (#64347 <https://github.com/llvm/llvm-project/issues/64347>`_)
692
-
715
+ Fixes (`#64347 <https://github.com/llvm/llvm-project/issues/64347 >`_)
716
+ - The MS ``__noop `` builtin without an argument list is now accepted
717
+ in the placement-args of new-expressions, matching MSVC's behaviour.
718
+ - Fix an issue that caused MS ``__decspec(property) `` accesses as well as
719
+ Objective-C++ property accesses to not be converted to a function call
720
+ to the getter in the placement-args of new-expressions.
721
+ Fixes (`#65053 <https://github.com/llvm/llvm-project/issues/65053 >`_)
693
722
694
723
Bug Fixes to Compiler Builtins
695
724
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0 commit comments