balazske added inline comments.
================ Comment at: clang/unittests/AST/ASTImporterTest.cpp:6180 + ASSERT_FALSE(FromCtor->getTypeSourceInfo()); + // Set a TypeSourceInfo for the function, this state may occur in reality. + TypeSourceInfo *FromTSI = FromTU->getASTContext().getTrivialTypeSourceInfo( ---------------- shafik wrote: > steakhal wrote: > > Perhaps, put here a `FIXME` to replace this with a real-world scenario. > I think it is useful to have cases that we run into in practice as a > regression test but it would be nice to see a more general test as well. What means a "more general test"? Code where the `setTypeSourceInfo` is not needed? I just could not find out why there is no TypeSourceInfo set. The involved code part looks like this (comes from Bitcoin): ``` void RegisterSharedValidationInterface(std::shared_ptr<CValidationInterface> pwalletIn) { // Each connection captures pwalletIn to ensure that each callback is // executed before pwalletIn is destroyed. For more details see #18338. g_signals.m_internals->Register(std::move(pwalletIn)); } void RegisterValidationInterface(CValidationInterface* callbacks) { // Create a shared_ptr with a no-op deleter - CValidationInterface lifecycle // is managed by the caller. RegisterSharedValidationInterface({callbacks, [](CValidationInterface*){}}); // ^ This is the lambda to be imported. } ``` If the same code is used in the test and a simple `CValidationInterface` and `std::shared_ptr` with appropriate constructor is added there is still no `TypeSourceInfo` in the needed place. Repository: rG LLVM Github Monorepo CHANGES SINCE LAST ACTION https://reviews.llvm.org/D112013/new/ https://reviews.llvm.org/D112013 _______________________________________________ cfe-commits mailing list cfe-commits@lists.llvm.org https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits