Code Monkey home page Code Monkey logo

vamp-plugins's People

Contributors

dfloer avatar jbrzusto avatar

Watchers

 avatar  avatar

Forkers

tve

vamp-plugins's Issues

Compilation note in SNRZFindPulse

The was a small ABI change in GCC 7.1.

Compiling on GCC 8.3.0 (and later, probably) gives the two notes.

/usr/include/c++/8.3.0/bits/vector.tcc: In member function 'void std::vector<_Tp, _Alloc>::_M_realloc_insert(std::vector<_Tp, _Alloc>::iterator, _Args&& ...) [with _Args = {FixedPulseDetector<float>}; _Tp = FixedPulseDetector<float>; _Alloc = std::allocator<FixedPulseDetector<float> >]':
/usr/include/c++/8.3.0/bits/vector.tcc:413:7: note: parameter passing for argument of type 'std::vector<FixedPulseDetector<float> >::iterator' {aka '__gnu_cxx::__normal_iterator<FixedPulseDetector<float>*, std::vector<FixedPulseDetector<float> > >'} changed in GCC 7.1
       vector<_Tp, _Alloc>::
       ^~~~~~~~~~~~~~~~~~~

and

/usr/include/c++/8.3.0/bits/vector.tcc: In constructor 'SpectralPulseFinder::SpectralPulseFinder(int, int, int, int, int, int, int, double, double, double)':
/usr/include/c++/8.3.0/bits/vector.tcc:109:4: note: parameter passing for argument of type '__gnu_cxx::__normal_iterator<FixedPulseDetector<float>*, std::vector<FixedPulseDetector<float> > >' changed in GCC 7.1
    _M_realloc_insert(end(), std::forward<_Args>(__args)...);
    ^~~~~~~~~~~~~~~~~

Currently, as everything should be compiled with GCC 7.1 or later, we can safely ignore this note by passing g++ -Wno-psabi.

Compilation Warning clearing non-trivial object.

When compiling, we get a warning of:

FreqEstimator.cpp: In constructor ‘FreqEstimator::FreqEstimator(int)’:
FreqEstimator.cpp:44:66: warning: ‘void* memset(void*, int, size_t)’ clearing an object of non-trivial type ‘struct std::complex<float>’; use assignment or value-initialization instead [-Wclass-memaccess]
   44 |     memset(m_input, 0, sizeof(std::complex < float > ) * m_frames);
      |                                                                  ^
In file included from FreqEstimator.h:19,
                 from FreqEstimator.cpp:19:
/usr/include/c++/9.2.0/complex:1076:12: note: ‘struct std::complex<float>’ declared here
 1076 |     struct complex<float>
      |            ^~~~~~~~~~~~~~

This could lead to unexpected behaviour, and causes compilation issues. The warning can be suppressed with -Wno-class-memaccess.

Recommend Projects

  • React photo React

    A declarative, efficient, and flexible JavaScript library for building user interfaces.

  • Vue.js photo Vue.js

    🖖 Vue.js is a progressive, incrementally-adoptable JavaScript framework for building UI on the web.

  • Typescript photo Typescript

    TypeScript is a superset of JavaScript that compiles to clean JavaScript output.

  • TensorFlow photo TensorFlow

    An Open Source Machine Learning Framework for Everyone

  • Django photo Django

    The Web framework for perfectionists with deadlines.

  • D3 photo D3

    Bring data to life with SVG, Canvas and HTML. 📊📈🎉

Recommend Topics

  • javascript

    JavaScript (JS) is a lightweight interpreted programming language with first-class functions.

  • web

    Some thing interesting about web. New door for the world.

  • server

    A server is a program made to process requests and deliver data to clients.

  • Machine learning

    Machine learning is a way of modeling and interpreting data that allows a piece of software to respond intelligently.

  • Game

    Some thing interesting about game, make everyone happy.

Recommend Org

  • Facebook photo Facebook

    We are working to build community through open source technology. NB: members must have two-factor auth.

  • Microsoft photo Microsoft

    Open source projects and samples from Microsoft.

  • Google photo Google

    Google ❤️ Open Source for everyone.

  • D3 photo D3

    Data-Driven Documents codes.