jamulus icon indicating copy to clipboard operation
jamulus copied to clipboard

Build: Compiler warnings on Xcode 13.4 (definition of implicit copy assignment operator)

Open hoffie opened this issue 2 years ago • 1 comments

Describe the bug

To Reproduce

Current Mac builds show compiler warnings. I suspect that those are newly introduced by newer compiler versions in Xcode (#2672).

Expected behavior No warnings.

Screenshots https://github.com/jamulussoftware/jamulus/runs/7109253970?check_suite_focus=true#step:9:1299

...
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<unsigned char>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/protocol.h:182:24: note: in implicit copy assignment operator for 'CVector<unsigned char>' first required here
            vecMessage = NewSendMess.vecMessage;
                       ^
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<unsigned char>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/protocol.h:182:24: note: in implicit copy assignment operator for 'CVector<unsigned char>' first required here
            vecMessage = NewSendMess.vecMessage;
                       ^
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<unsigned char>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/protocol.h:182:24: note: in implicit copy assignment operator for 'CVector<unsigned char>' first required here
            vecMessage = NewSendMess.vecMessage;
                       ^
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/sound/coreaudio-mac/../../util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<short>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/client.cpp:1241:36: note: in implicit copy assignment operator for 'CVector<short>' first required here
        vecsStereoSndCrdMuteStream = vecsStereoSndCrd;
                                   ^
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/sound/coreaudio-mac/../../util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<short>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/client.cpp:1241:36: note: in implicit copy assignment operator for 'CVector<short>' first required here
        vecsStereoSndCrdMuteStream = vecsStereoSndCrd;
                                   ^
In file included from ../src/client.cpp:25:
In file included from ../src/client.h:38:
In file included from ../src/socket.h:32:
In file included from ../src/protocol.h:33:
../src/sound/coreaudio-mac/../../util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<short>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/client.cpp:1241:36: note: in implicit copy assignment operator for 'CVector<short>' first required here
        vecsStereoSndCrdMuteStream = vecsStereoSndCrd;
                                   ^
In file included from ../src/audiomixerboard.cpp:25:
In file included from ../src/audiomixerboard.h:43:
../src/util.h:125:5: warning: definition of implicit copy assignment operator for 'CVector<unsigned char>' is deprecated because it has a user-declared copy constructor [-Wdeprecated-copy]
    CVector ( CVector const& ) = default;
    ^
../src/protocol.h:182:24: note: in implicit copy assignment operator for 'CVector<unsigned char>' first required here
            vecMessage = NewSendMess.vecMessage;
                       ^

Operating system macOS 12, Xcode 13.4

Version of Jamulus

~master (#2640)

Additional context

hoffie avatar Jun 29 '22 09:06 hoffie

Bumping to 3.10.0 as not seen as urgent enough for 3.9.1.

pljones avatar Sep 17 '22 11:09 pljones