Fix clang tidy warnings
This fixes a few clang-tidy warnings:
- The use of #pragma GCC that is supposed to inhibit a warning, actually causes a warning (already by the compiler, not just clang-tidy), so removed.
- Setting str_max_length=0 could cause a zero sized VLA
- Use of abs instead of std::abs for a floating point value would cause truncation
- Remove two unused expressions