bolshakov-a added inline comments.

================
Comment at: clang/lib/AST/ItaniumMangle.cpp:4397
+    // argument.
+    // As proposed in https://github.com/itanium-cxx-abi/cxx-abi/issues/111.
+    auto *SNTTPE = cast<SubstNonTypeTemplateParmExpr>(E);
----------------
bolshakov-a wrote:
> efriedma wrote:
> > bolshakov-a wrote:
> > > erichkeane wrote:
> > > > erichkeane wrote:
> > > > > aaron.ballman wrote:
> > > > > > We should get this nailed down. It was proposed in Nov 2020 and the 
> > > > > > issue is still open. CC @rjmccall 
> > > > > This definitely needs to happen.  @rjmccall or @eli.friedman ^^ Any 
> > > > > idea what the actual mangling should be?
> > > > This is still an open, and we need @rjmccall @eli.friedman or @asl to 
> > > > help out here.
> > > Ping @efriedma, @rjmccall, @asl.
> > I'm not really familiar with the mangling implications for this particular 
> > construct, nor am I actively involved with the Itanium ABI specification, 
> > so I'm not sure how I can help you directly.
> > 
> > That said, as a general opinion, I don't think it's worth waiting for 
> > updates to the Itanuim ABI  document to be merged; such updates are 
> > happening slowly at the moment, and having a consistent mangling is clearly 
> > an improvement even if it's not specified.  My suggested plan of action:
> > 
> > - Make sure you're satisfied the proposed mangling doesn't have any holes 
> > you're concerned about (i.e. it produces a unique mangling for all the 
> > relevant cases).  If you're not sure, I can try to spend some time 
> > understanding this, but it doesn't sound like you have any concerns about 
> > this.
> > - Put a note on the issue in the Itanium ABI repo that you're planning to 
> > go ahead with using this mangling in clang.  Also send an email directly to 
> > @rjmccall and @rsmith in case they miss the notifications.
> > - Go ahead with this.
> > Put a note on the issue in the Itanium ABI repo that you're planning to go 
> > ahead with using this mangling in clang. Also send an email directly to 
> > @rjmccall and @rsmith in case they miss the notifications.
> 
> I'm sorry for noting one more time that Richard already pushed these changes 
> in clang upstream, but they had been just reverted.
> 
> Maybe, I should make a PR into Itanium API repository, but I probably need 
> some time to dig into the theory and all the discussions. But yes, even NTTP 
> argument mangling rules are not still merged: 
> https://github.com/itanium-cxx-abi/cxx-abi/pull/140
@aaron.ballman, @erichkeane, seems like it is already fixed in the ABI document:
> Typically, only references to function template parameters occurring within 
> the dependent signature of the template are mangled this way. In other 
> contexts, template instantiation replaces references to template parameters 
> with the actual template arguments, and mangling should mangle such 
> references exactly as if they were that template argument.

https://itanium-cxx-abi.github.io/cxx-abi/abi.html#mangle.template-param

See also [the discussion in the 
issue](https://github.com/itanium-cxx-abi/cxx-abi/issues/111#issuecomment-1567486892).


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D140996/new/

https://reviews.llvm.org/D140996

_______________________________________________
lldb-commits mailing list
lldb-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/lldb-commits
  • [Lldb-commits] ... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Eli Friedman via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Corentin Jabot via Phabricator via lldb-commits
    • [Lldb-comm... Aaron Ballman via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits
    • [Lldb-comm... Andrey Ali Khan Bolshakov via Phabricator via lldb-commits

Reply via email to