glandium added a comment.

Reduced testcase:
cc1 command line: `clang-16 -cc1 -triple x86_64-unknown-linux-gnu -emit-obj -o 
Unified_cpp_editor_txmgr0.o -x c++-cpp-output Unified_cpp_editor_txmgr0.ii`
source file content:

  class nsCycleCollectionParticipant;
  class nsCycleCollectingAutoRefCnt;
  extern "C" void NS_CycleCollectorSuspect3(void *,
                                            nsCycleCollectionParticipant *,
                                            nsCycleCollectingAutoRefCnt *,
                                            bool *);
  class nsCycleCollectingAutoRefCnt {
  public:
    typedef void Suspect(void *, nsCycleCollectionParticipant *,
                         nsCycleCollectingAutoRefCnt *, bool *);
    template <Suspect suspect = NS_CycleCollectorSuspect3>
    void incr(int *aOwner) {
      incr<suspect>(aOwner, nullptr);
    }
    template <Suspect = NS_CycleCollectorSuspect3>
    unsigned long incr(void *, nsCycleCollectionParticipant *) {}
  };
  class TransactionItem {
    int Release();
    nsCycleCollectingAutoRefCnt mRefCnt;
  };
  int TransactionItem::Release() {
    mRefCnt.incr(this, 0);
    mRefCnt.incr(0);
  }


Repository:
  rG LLVM Github Monorepo

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

https://reviews.llvm.org/D133874

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to