rorth wrote:

Incorporate review comments.  However, I still have a mis-mangling of the code 
that triggered this patch.  I've now been able to create a reduced example:
```
namespace std {

  extern "C" {
    struct tm {
      int tm_sec;
    };
  }
}

using std::tm;

void
func (std::tm tm, const char *ccp, const char *ccp2)
{
}
```
On Linux/x86_64, `func` is mangled as `_Z4funcSt2tmPKcS1_` (`func(std::tm, char 
const*, char const*)`), as expected.  However, when targetting Solaris with 
this patch, I get instead `_Z4func2tmPKcS0_` (`func(tm, char const*, char 
const)`, i.e. the `*` has been dropped from the last arg; somehow the 
substitution is wrong) and I still haven't figured out what I'm doing wrong 
here.

Any suggestions?

https://github.com/llvm/llvm-project/pull/106353
_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to