class G4VMPLData
{
public:
using G4PhysConstVectorData = std::vector<G4VPhysicsConstructor*>;
void initialize() { physicsVector = new G4PhysConstVectorData; }
G4PhysConstVectorData* physicsVector = nullptr;
};
generates accessors for physicsVector that fail compilation:
libTestUsingType/src/jlTestUsingType.cxx:67:58: error: unknown type name 'G4PhysConstVectorData'; did you mean 'G4VMPLData::G4PhysConstVectorData'?
t.method("physicsVector", [](const G4VMPLData& a) -> G4PhysConstVectorData * { return a.physicsVector; });
^~~~~~~~~~~~~~~~~~~~~
G4VMPLData::G4PhysConstVectorData
./A.h:19:11: note: 'G4VMPLData::G4PhysConstVectorData' declared here
using G4PhysConstVectorData = std::vector<G4VPhysicsConstructor*>;
^
libTestUsingType/src/jlTestUsingType.cxx:68:52: error: unknown type name 'G4PhysConstVectorData'; did you mean 'G4VMPLData::G4PhysConstVectorData'?
t.method("physicsVector", [](G4VMPLData& a) -> G4PhysConstVectorData * { return a.physicsVector; });
^~~~~~~~~~~~~~~~~~~~~
G4VMPLData::G4PhysConstVectorData
./A.h:19:11: note: 'G4VMPLData::G4PhysConstVectorData' declared here
using G4PhysConstVectorData = std::vector<G4VPhysicsConstructor*>;
^
The following class
generates accessors for
physicsVector
that fail compilation:I am attaching a reproducer: TestUsingType.zip