This is a test case to go with D44406 which added FlagNonTrivial to mark that a C++ record is non-trivial to support CodeView debug emission.
While it looks like FlagTypePassByValue can imply triviality and FlagTypePassByReference can imply non-triviality that is not true. Some non-trivial cases use a combination of FlagNonTrivial and FlagTypePassByValue instead of FlagTypePassByReference. See the test cases and D44406 for discussion.
Would it be sufficient for this function to just be:
Since C++ supports overloading, there shouldn't be a need to mangle the type name into the function name manually, and any reference to the type should be enough for it to be emitted.