Skip to content

Compiler problem with MSVC and std:c++20 #99

@dirk-zimoch

Description

@dirk-zimoch

When compiling with MSVC in c++20 mode (options -Zc:__cplusplus -std:c++20) building pvUnitTest.cpp fails:

pvData\src\misc\pv\sharedVector.h(294): error C2182: 'reference': illegal use of type 'void'
pvData\src\misc\pv\sharedVector.h(706): note: see reference to class template instantiation 'epics::pvData::shared_vector<void,void>' being compiled
pvData\src\misc\pv\sharedVector.h(749): note: see reference to class template instantiation 'epics::pvData::shared_vector<E,meta::is_void<E,void>::type>' being compiled
pvData\src\misc\pv\sharedVector.h(295): error C2182: 'const_reference': illegal use of type 'void'
pvData\src\misc\pv\sharedVector.h(334): error C2182: 'e': illegal use of type 'void'
pvData\src\misc\pv\sharedVector.h(498): error C2182: 'v': illegal use of type 'void'
pvData\src\misc\pv\sharedVector.h(602): error C2182: 'v': illegal use of type 'void'
pvData\src\misc\pv\sharedVector.h(708): error C2039: 'm_vtype': is not a member of 'epics::pvData::shared_vector<void,void>'
pvData\src\misc\pv\sharedVector.h(706): note: see declaration of 'epics::pvData::shared_vector<void,void>'
pvData\src\misc\pv\sharedVector.h(713): error C2039: 'm_vtype': is not a member of 'epics::pvData::shared_vector<const void,void>'
pvData\src\misc\pv\sharedVector.h(711): note: see declaration of 'epics::pvData::shared_vector<const void,void>'
pvData\src\pv\pvData.h(539): warning C4250: 'epics::pvData::PVString': inherits 'epics::pvData::PVScalarValue<std::string>::epics::pvData::PVScalarValue<std::string>::deserialize' via dominance
pvData\src\pv\pvData.h(440): note: see declaration of 'epics::pvData::PVScalarValue<std::string>::deserialize'

Metadata

Metadata

Assignees

No one assigned

    Type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions