diff --git a/core/metacling/src/TCling.cxx b/core/metacling/src/TCling.cxx index f9e8b1f9c1575..30d702fb4c602 100644 --- a/core/metacling/src/TCling.cxx +++ b/core/metacling/src/TCling.cxx @@ -2720,15 +2720,6 @@ void TCling::InspectMembers(TMemberInspector& insp, const void* obj, return; } - if (TClassEdit::IsUniquePtr(cl->GetName())) { - // Ignore error caused by the inside of std::unique_ptr - // This is needed solely because of rootclingIO's IsUnsupportedUniquePointer - // which checks the number of elements in the GetListOfRealData. - // If this usage is removed, this can be replaced with a return statement. - // See https://github.com/root-project/root/issues/13574 - isTransient = true; - } - const char* cobj = (const char*) obj; // for ptr arithmetics // Treat the case of std::complex in a special manner. We want to enforce diff --git a/io/rootpcm/src/rootclingIO.cxx b/io/rootpcm/src/rootclingIO.cxx index b10b466e18d82..f47afce365d56 100644 --- a/io/rootpcm/src/rootclingIO.cxx +++ b/io/rootpcm/src/rootclingIO.cxx @@ -76,26 +76,6 @@ static bool IsUnsupportedUniquePointer(const char *normName, TDataMember *dm) if (!isUniquePtrOffsetZero) return true; - auto clm = TClass::GetClass(dmTypeName); - if (!clm) { - Error("CloseStreamerInfoROOTFile", "Class %s is not available.", dmTypeName); - return true; - } - - // TODO: Is it not clear what situation we are checking for by checking if - // the unique_ptr class has any data members. - clm->BuildRealData(nullptr, /* istransient = */ true); - auto upDms = clm->GetListOfRealData(); - if (!upDms) { - Error("CloseStreamerInfoROOTFile", "Cannot determine unique pointer %s data members.", dmTypeName); - return true; - } - - if (0 == upDms->GetSize()) { - Error("CloseStreamerInfoROOTFile", "Unique pointer %s has zero data members.", dmTypeName); - return true; - } - // We check if the unique_ptr has a default deleter std::vector out; int i;