[PATCH] D60349: [COFF, ARM64] Fix ABI implementation of struct returns
Richard Townsend (Arm) via Phabricator via cfe-commits
cfe-commits at lists.llvm.org
Mon Apr 29 07:09:56 PDT 2019
richard.townsend.arm added a comment.
The current diff (196894) seems to have the same `std::setw` issue as the previous one. Here's what it's trying to compile:
_MRTIMP2 _Smanip<streamsize> __cdecl setw(streamsize wide)
{ // manipulator to set width
return (_Smanip<streamsize>(&swfun, wide));
}
Here's the definition for `_Smanip`:
template<class _Arg>
struct _Smanip
{ // store function pointer and argument value
_Smanip(void (__cdecl *_Left)(ios_base&, _Arg), _Arg _Val)
: _Pfun(_Left), _Manarg(_Val)
{ // construct from function pointer and argument value
}
void (__cdecl *_Pfun)(ios_base&, _Arg); // the function pointer
_Arg _Manarg; // the argument value
};
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D60349/new/
https://reviews.llvm.org/D60349
More information about the cfe-commits
mailing list