dblaikie added a comment. In D138247#4217189 <https://reviews.llvm.org/D138247#4217189>, @efriedma wrote:
> The relevant text of the current Itanium ABI (which was updated in > https://github.com/itanium-cxx-abi/cxx-abi/commit/d8e9d102c83f177970f0db6cc8bee170f2779bc1) > >> In the following contexts, however, the one-definition rule requires closure >> types in different translation units to "correspond": >> >> - default arguments appearing in class definitions >> - default member initializers >> - the bodies of inline or templated functions >> - the initializers of inline or templated variables > > Could you update the references to the ABI document to use the new text? Oh, yeah - good call. Done. > Given the new rules, I think ContextKind::StaticDataMember shouldn't exist? > It's not one of the given categories; should be subsumed by the existing > categories. Fair - I assume the "initializers of inline or templated variables" is intended to cover the case of static member variables of class templates, though they aren't technically variable templates presumably they are "templated variables". So I renamed the `VariableTemplate` kind to `TemplatedVariable` to match the ABI wording/semantics a bit better. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D138247/new/ https://reviews.llvm.org/D138247 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits