Build broken on MSVC2013.

classic Classic list List threaded Threaded
5 messages Options
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Build broken on MSVC2013.

James Crook
Paul, your use of default in commit

https://github.com/audacity/audacity/commi/7eafbf6dd61f08bf38d0c25e5b2c56ae7b829a15

breaks the build on MSVC2013.



c:\opensourcegit\audacity\src\tracks\ui\timeshifthandle.h(54): error
C2610: 'TimeShiftHandle &TimeShiftHandle::operator =(TimeShiftHandle
&&)' : is not a special member function which can be defaulted

This line (and similar lines for other handles) causes the problem:

TimeShiftHandle &operator=(TimeShiftHandle&&) = default;


Please fix.

--James.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Build broken on MSVC2013.

Paul Licameli
Done, at dc864f3

PRL


On Sun, Jul 9, 2017 at 10:04 AM, James Crook <[hidden email]> wrote:
Paul, your use of default in commit

https://github.com/audacity/audacity/commi/7eafbf6dd61f08bf38d0c25e5b2c56ae7b829a15

breaks the build on MSVC2013.



c:\opensourcegit\audacity\src\tracks\ui\timeshifthandle.h(54): error C2610: 'TimeShiftHandle &TimeShiftHandle::operator =(TimeShiftHandle &&)' : is not a special member function which can be defaulted

This line (and similar lines for other handles) causes the problem:

TimeShiftHandle &operator=(TimeShiftHandle&&) = default;


Please fix.

--James.


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Build broken on MSVC2013.

James Crook
On 7/9/2017 5:30 PM, Paul Licameli wrote:
> Done, at dc864f3

Not quite, as there are also:

LabelDefaultClickHandle
LabelGlyphHandle
LabelTextHandle

to fix.

I tried just putting const and removing one level of indirection, but
I'd have to change a bit more than that...

c:\opensourcegit\audacity\src\uihandle.h(149): error C2280:
'LabelTextHandle &LabelTextHandle::operator =(const LabelTextHandle &)'
: attempting to reference a deleted function
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.h(34)
: see declaration of 'LabelTextHandle::operator ='
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.cpp(46)
: see reference to function template instantiation 'std::shared_ptr<_Ty>
AssignUIHandlePtr<LabelTextHandle>(std::weak_ptr<_Ty> &,const
std::shared_ptr<_Ty> &)' being compiled
           with
           [
               _Ty=LabelTextHandle
           ]


--James.




>
> PRL
>
>
> On Sun, Jul 9, 2017 at 10:04 AM, James Crook <[hidden email]> wrote:
>
>> Paul, your use of default in commit
>>
>> https://github.com/audacity/audacity/commi/7eafbf6dd61f08bf3
>> 8d0c25e5b2c56ae7b829a15
>>
>> breaks the build on MSVC2013.
>>
>>
>>
>> c:\opensourcegit\audacity\src\tracks\ui\timeshifthandle.h(54): error
>> C2610: 'TimeShiftHandle &TimeShiftHandle::operator =(TimeShiftHandle &&)' :
>> is not a special member function which can be defaulted
>>
>> This line (and similar lines for other handles) causes the problem:
>>
>> TimeShiftHandle &operator=(TimeShiftHandle&&) = default;
>>
>>
>> Please fix.
>>
>> --James.
>>
>>


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Build broken on MSVC2013.

Paul Licameli
More fix at
ef9745b9

PRL


On Sun, Jul 9, 2017 at 12:50 PM, James Crook <[hidden email]> wrote:
On 7/9/2017 5:30 PM, Paul Licameli wrote:
Done, at dc864f3

Not quite, as there are also:

LabelDefaultClickHandle
LabelGlyphHandle
LabelTextHandle

to fix.

I tried just putting const and removing one level of indirection, but I'd have to change a bit more than that...

c:\opensourcegit\audacity\src\uihandle.h(149): error C2280: 'LabelTextHandle &LabelTextHandle::operator =(const LabelTextHandle &)' : attempting to reference a deleted function
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.h(34) : see declaration of 'LabelTextHandle::operator ='
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.cpp(46) : see reference to function template instantiation 'std::shared_ptr<_Ty> AssignUIHandlePtr<LabelTextHandle>(std::weak_ptr<_Ty> &,const std::shared_ptr<_Ty> &)' being compiled
          with
          [
              _Ty=LabelTextHandle
          ]


--James.






PRL


On Sun, Jul 9, 2017 at 10:04 AM, James Crook <[hidden email]> wrote:

Paul, your use of default in commit

https://github.com/audacity/audacity/commi/7eafbf6dd61f08bf3
8d0c25e5b2c56ae7b829a15

breaks the build on MSVC2013.



c:\opensourcegit\audacity\src\tracks\ui\timeshifthandle.h(54): error
C2610: 'TimeShiftHandle &TimeShiftHandle::operator =(TimeShiftHandle &&)' :
is not a special member function which can be defaulted

This line (and similar lines for other handles) causes the problem:

TimeShiftHandle &operator=(TimeShiftHandle&&) = default;


Please fix.

--James.




------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel


------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Reply | Threaded
Open this post in threaded view
|  
Report Content as Inappropriate

Re: Build broken on MSVC2013.

Paul Licameli


On Sun, Jul 9, 2017 at 1:05 PM, Paul Licameli <[hidden email]> wrote:
More fix at
ef9745b9

PRL

Wait... no.

Arrr, I am discovering that the three compilers have different interpretations of the rules for generating the move constructor and assignment.

PRL

 


On Sun, Jul 9, 2017 at 12:50 PM, James Crook <[hidden email]> wrote:
On 7/9/2017 5:30 PM, Paul Licameli wrote:
Done, at dc864f3

Not quite, as there are also:

LabelDefaultClickHandle
LabelGlyphHandle
LabelTextHandle

to fix.

I tried just putting const and removing one level of indirection, but I'd have to change a bit more than that...

c:\opensourcegit\audacity\src\uihandle.h(149): error C2280: 'LabelTextHandle &LabelTextHandle::operator =(const LabelTextHandle &)' : attempting to reference a deleted function
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.h(34) : see declaration of 'LabelTextHandle::operator ='
c:\opensourcegit\audacity\src\tracks\labeltrack\ui\labeltexthandle.cpp(46) : see reference to function template instantiation 'std::shared_ptr<_Ty> AssignUIHandlePtr<LabelTextHandle>(std::weak_ptr<_Ty> &,const std::shared_ptr<_Ty> &)' being compiled
          with
          [
              _Ty=LabelTextHandle
          ]


--James.






PRL


On Sun, Jul 9, 2017 at 10:04 AM, James Crook <[hidden email]> wrote:

Paul, your use of default in commit

https://github.com/audacity/audacity/commi/7eafbf6dd61f08bf3
8d0c25e5b2c56ae7b829a15

breaks the build on MSVC2013.



c:\opensourcegit\audacity\src\tracks\ui\timeshifthandle.h(54): error
C2610: 'TimeShiftHandle &TimeShiftHandle::operator =(TimeShiftHandle &&)' :
is not a special member function which can be defaulted

This line (and similar lines for other handles) causes the problem:

TimeShiftHandle &operator=(TimeShiftHandle&&) = default;


Please fix.

--James.




------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel



------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, Slashdot.org! http://sdm.link/slashdot
_______________________________________________
audacity-devel mailing list
[hidden email]
https://lists.sourceforge.net/lists/listinfo/audacity-devel
Loading...