g++ code/main.cpp -o Simpler-98B681A1 -O3 -std=c++2a -mcpu=native -pthread -flto -fno-exceptions -fno-rtti -DNDEBUG -ffast-math -funroll-loops
In file included from code/board.h:43,
                 from code/moveGeneration.h:8,
                 from code/moveListGeneration.h:22,
                 from code/searcher.h:8,
                 from code/main.cpp:4:
code/nnue.h: In member function ‘int8x8_t NNUEevaluator::pack(int16x8_t)’:
code/nnue.h:584:39: note: use ‘-flax-vector-conversions’ to permit conversions between vectors with differing element types or numbers of subparts
  584 |         return vqmovun_s16(activations);
      |                                       ^
code/nnue.h:584:27: error: cannot convert ‘uint8x8_t’ to ‘int8x8_t’ in return
  584 |         return vqmovun_s16(activations);
      |                ~~~~~~~~~~~^~~~~~~~~~~~~
      |                           |
      |                           uint8x8_t
code/nnue.h: In member function ‘void NNUEevaluator::activateAcc(const __int16_t*, uint8_t*)’:
code/nnue.h:622:40: error: cannot convert ‘int8x8_t’ to ‘uint8x8_t’
  622 |                 vst1_u8((out + i), pack(ac));
      |                                    ~~~~^~~~
      |                                        |
      |                                        int8x8_t
In file included from code/declars.h:21,
                 from code/move.h:8,
                 from code/moveListGeneration.h:8:
/usr/lib/gcc/aarch64-linux-gnu/12/include/arm_neon.h:24669:34: note:   initializing argument 2 of ‘void vst1_u8(uint8_t*, uint8x8_t)’
24669 | vst1_u8 (uint8_t *__a, uint8x8_t __b)
      |                        ~~~~~~~~~~^~~
code/nnue.h: In member function ‘int32x4_t NNUEevaluator::dpbusdx2(int32x4_t, uint32_t, int8x16_t, uint32_t, int8x16_t)’:
code/nnue.h:659:66: error: cannot convert ‘uint32x4_t’ to ‘int8x16_t’
  659 |         vec32 partial0 = dpbusd(sum, vreinterpretq_u8_s8(set1u_32(packed0)), weights0);
/usr/lib/gcc/aarch64-linux-gnu/12/include/arm_neon.h:5096:32: note:   initializing argument 1 of ‘uint8x16_t vreinterpretq_u8_s8(int8x16_t)’
 5096 | vreinterpretq_u8_s8 (int8x16_t __a)
      |                      ~~~~~~~~~~^~~
code/nnue.h:660:72: error: cannot convert ‘uint32x4_t’ to ‘int8x16_t’
  660 |         vec32 partial1 = dpbusd(setzero32, vreinterpretq_u8_s8(set1u_32(packed1)), weights1);
/usr/lib/gcc/aarch64-linux-gnu/12/include/arm_neon.h:5096:32: note:   initializing argument 1 of ‘uint8x16_t vreinterpretq_u8_s8(int8x16_t)’
 5096 | vreinterpretq_u8_s8 (int8x16_t __a)
      |                      ~~~~~~~~~~^~~
code/nnue.h: In member function ‘int NNUEevaluator::findNonZeroIndices(const uint32_t*, uint16_t*)’:
code/nnue.h:691:30: error: cannot convert ‘uint32x4_t’ to ‘int32x4_t’ in initialization
  691 |         vec32 vmask = loadu32(kMask);
code/nnue.h:694:30: error: cannot convert ‘uint32x4_t’ to ‘int32x4_t’ in initialization
  694 |             vec32 v = loadu32(packedFt + i);
code/nnue.h:695:59: error: cannot convert ‘int32x4_t’ to ‘uint32x4_t’
  695 |             uint8_t byte = vaddvq_u32(vandq_u32(vtstq_u32(v, v), vmask));
      |                                                           ^
      |                                                           |
      |                                                           int32x4_t
/usr/lib/gcc/aarch64-linux-gnu/12/include/arm_neon.h:27086:23: note:   initializing argument 1 of ‘uint32x4_t vtstq_u32(uint32x4_t, uint32x4_t)’
27086 | vtstq_u32 (uint32x4_t __a, uint32x4_t __b)
      |            ~~~~~~~~~~~^~~
code/nnue.h:696:33: error: cannot convert ‘uint16x8_t’ to ‘int16x8_t’ in initialization
  696 |             vec16 lut  = loadu16(NZ_TABLE[byte].data());
code/nnue.h:698:46: error: cannot convert ‘int16x8_t’ to ‘uint16x8_t’
  698 |             storeu16((indices + count), add16(lut, base));
/usr/lib/gcc/aarch64-linux-gnu/12/include/arm_neon.h:24776:38: note:   initializing argument 2 of ‘void vst1q_u16(uint16_t*, uint16x8_t)’
24776 | vst1q_u16 (uint16_t *__a, uint16x8_t __b)
      |                           ~~~~~~~~~~~^~~
code/nnue.h: In member function ‘int NNUEevaluator::evaluate(int, int)’:
code/nnue.h:914:71: error: cannot convert ‘uint8x16_t’ to ‘int8x16_t’
  914 |                 accum[v][0] = dpbusd(accum[v][0], vreinterpretq_u8_u32(set1u_32(ft)), w_v);
      |                                                   ~~~~~~~~~~~~~~~~~~~~^~~~~~~~~~~~~~
      |                                                                       |
      |                                                                       uint8x16_t
code/nnue.h:647:43: note:   initializing argument 2 of ‘int32x4_t NNUEevaluator::dpbusd(int32x4_t, int8x16_t, int8x16_t)’
  647 |     inline vec32 dpbusd(vec32 accum, vec8 a, vec8 b) {
In file included from code/evaluation.h:36,
                 from code/searcher.h:22:
code/transpositionTable.h: At global scope:
code/transpositionTable.h:35:10: warning: ignoring packed attribute because of unpacked non-POD field ‘Flag TableEntry::flag’
   35 |     Flag flag;
      |          ^~~~
make: *** [Makefile:19: all] Error 1