@@ -569,6 +569,30 @@ Improvements to Clang's diagnostics
569
569
and template friend declarations with a constraint that depends on a template parameter from an
570
570
enclosing template must be a definition.
571
571
572
+ - Clang now emits more descriptive diagnostics for 'unusual' expressions (e.g. incomplete index
573
+ expressions on matrix types or builtin functions without an argument list) as placement-args
574
+ to new-expressions.
575
+
576
+ Before:
577
+
578
+ .. code-block :: text
579
+
580
+ error: no matching function for call to 'operator new'
581
+ 13 | new (__builtin_memset) S {};
582
+ | ^ ~~~~~~~~~~~~~~~~~~
583
+
584
+ note: candidate function not viable: no known conversion from '<builtin fn type>' to 'int' for 2nd argument
585
+ 5 | void* operator new(__SIZE_TYPE__, int);
586
+ | ^
587
+
588
+ After:
589
+
590
+ .. code-block :: text
591
+
592
+ error: builtin functions must be directly called
593
+ 13 | new (__builtin_memset) S {};
594
+ | ^
595
+
572
596
573
597
Improvements to Clang's time-trace
574
598
----------------------------------
@@ -765,6 +789,12 @@ Bug Fixes in This Version
765
789
Fixes (`#77583 <https://github.com/llvm/llvm-project/issues/77583 >`_)
766
790
- Fix an issue where CTAD fails for function-type/array-type arguments.
767
791
Fixes (`#51710 <https://github.com/llvm/llvm-project/issues/51710 >`_)
792
+ - The MS ``__noop `` builtin without an argument list is now accepted
793
+ in the placement-args of new-expressions, matching MSVC's behaviour.
794
+ - Fix an issue that caused MS ``__decspec(property) `` accesses as well as
795
+ Objective-C++ property accesses to not be converted to a function call
796
+ to the getter in the placement-args of new-expressions.
797
+ Fixes (`#65053 <https://github.com/llvm/llvm-project/issues/65053 >`_)
768
798
769
799
Bug Fixes to Compiler Builtins
770
800
^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
0 commit comments