[cfe-commits] r107264 - in /cfe/trunk: lib/CodeGen/MicrosoftCXXABI.cpp test/CodeGenCXX/mangle-ms.cpp

Douglas Gregor dgregor at apple.com
Wed Jun 30 08:42:48 PDT 2010

On Jun 30, 2010, at 1:09 AM, Charles Davis wrote:

> Author: cdavis
> Date: Wed Jun 30 03:09:57 2010
> New Revision: 107264
> URL: http://llvm.org/viewvc/llvm-project?rev=107264&view=rev
> Log:
> Mangle arrays in the Microsoft C++ Mangler. It's not quite finished (it
> doesn't mangle array parameters right), but I think that should be fixed
> in Sema (Doug, John, what do you think?).

I assume that you're referring to this example...

> +// Array mangling. (It should be mangled as a const pointer, but that needs
> +// to be fixed in Sema.)
> +void epsilon(int a[][10][20]) {}
> +// CHECK: @"\01?epsilon@@YAXPAY19BD at H@Z"

But I'm not quite certain what that mangled name means for MSVC. From the language perspective, epsilon's parameter is of type int (*)[10][20], because the array parameter decays to a pointer. Does MSVC perform some other transformation on the parameter type? Is that something we have to model under -fms-extensions?

	- Doug

More information about the cfe-commits mailing list