hfinkel added a comment. In D71179#1775687 <https://reviews.llvm.org/D71179#1775687>, @jdoerfert wrote:
> ... > > >>> We restricted it for now to function definitions so we don't need to define >>> the mangling as you cannot expect linking. (I did this to get it in TR8 >>> while I figured it will solve all our math.h problems already). >>> However, we need to avoid collisions with user code, e.g., through the use >>> of symbols in the name that are not allowed to be used by the user (I >>> thought "." is one of them). >> >> Okay, but how to we distinguish functions for which there is a declaration >> and we need the mangling because the user has provided a definition >> elsewhere, from those for which there is a declaration, and we don't want >> mangling because we need to link to some system library? > > The idea is, declarations inside begin/end declare variant are supposed to be > not affected by the begin/end declare variant. That is, if you have > declarations you cannot expect variant multi-versioning to happen. Having > declarations inside or outside the begin/end declare variant is still fine if > they all denote the same function. Thanks, now I understand. This seems like it will work. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D71179/new/ https://reviews.llvm.org/D71179 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits