================ @@ -268,17 +268,34 @@ class alignas(8) Decl { /// } /// void A::f(); // SemanticDC == namespace 'A' /// // LexicalDC == global namespace - llvm::PointerUnion<DeclContext*, MultipleDC*> DeclCtx; + llvm::PointerIntPair< ---------------- erichkeane wrote:
I don't think it ends up being 'manual bit twiddling' so much as 3 values in an enum, and I also found the `getPointer().getPointer()` pretty mind-bending, but at least it is somewhat well hidden in stuff we won't touch for a while, so I won't insist. https://github.com/llvm/llvm-project/pull/87361 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits