libsemigroups / HPCombi

Fast combinatorics in C++ using SSE/AVX instruction sets
https://libsemigroups.github.io/HPCombi/
GNU General Public License v3.0
15 stars 7 forks source link

Warning messages when compiling libsemigroups with clang #30

Closed Joseph-Edwards closed 1 year ago

Joseph-Edwards commented 1 year ago

When compiling libsemigroups on @james-d-mitchell's refactor-todd-coxeter branch with clang I came across the following warnings.

On a clean distribution, running

./autogen.sh && ./configure CXX=clang++ && make 

yields the following warnings:

In file included from src/sims1.cpp:22:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/sims1.hpp:61:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/transf.hpp:49:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/hpcombi.hpp:35:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/hpcombi.hpp:20:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/perm16.hpp:28:
/home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/vect16.hpp:37:13: warning: definition of implicit copy constructor for 'Vect16' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
    Vect16 &operator=(const Vect16 &) = default;
            ^
/home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/perm16.hpp:49:62: note: in implicit copy constructor for 'HPCombi::Vect16' first required here
    HPCOMBI_CONSTEXPR_CONSTRUCTOR PTransf16(const vect vv) : Vect16(vv) {}
                                                             ^

In file included from src/sims1.cpp:22:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/sims1.hpp:61:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/transf.hpp:49:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/include/libsemigroups/hpcombi.hpp:35:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/hpcombi.hpp:19:
In file included from /home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/epu.hpp:35:
/home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/vect_generic.hpp:50:18: warning: definition of implicit copy constructor for 'VectGeneric<16>' is deprecated because it has a user-declared copy assignment operator [-Wdeprecated-copy]
    VectGeneric &operator=(const VectGeneric &) = default;
                 ^
/home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/vect_generic.hpp:207:16: note: in implicit copy constructor for 'HPCombi::VectGeneric<16>' first required here
        return res;
               ^
/home/joseph/Dev/Comp_Maths/libsemigroups/extern/HPCombi/include/epu_impl.hpp:394:41: note: in instantiation of member function 'HPCombi::VectGeneric<16>::eval' requested here
    return from_array(as_VectGeneric(v).eval().v);
                                        ^

Config settings can be found here.

hivert commented 1 year ago

Those should now be fixed in the simde branch. I'll close this issue when merged in main.