Skip to content

Commit 5a0cf2d

Browse files
efriedma-quicxgupta
authored andcommitted
[clang codegen] Fix MS ABI detection of user-provided constructors. (llvm#90151)
In the context of determining whether a class counts as an "aggregate", a constructor template counts as a user-provided constructor. Fixes llvm#86384 (cherry picked from commit 3ab4ae9)
1 parent 2f7c618 commit 5a0cf2d

File tree

1 file changed

+6
-0
lines changed

1 file changed

+6
-0
lines changed

clang/docs/ReleaseNotes.rst

Lines changed: 6 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -118,6 +118,12 @@ ABI Changes in This Version
118118
`-fms-compatibility-version=19.14` to imitate the MSVC 1914 mangling behavior.
119119
(GH#70899).
120120

121+
- Fixed Microsoft calling convention for returning certain classes with a
122+
templated constructor. If a class has a templated constructor, it should
123+
be returned indirectly even if it meets all the other requirements for
124+
returning a class in a register. This affects some uses of std::pair.
125+
(#GH86384).
126+
121127
AST Dumping Potentially Breaking Changes
122128
----------------------------------------
123129

0 commit comments

Comments
 (0)