Use -Wextra and -Wpedantic and remove assert usage (was ACTS-427)
Original author Paul Gessinger-Befurt @pagessin
I think it would be a good idea to enable -Wextra and -Wpedantic. This can give a lot of useful warnings. I sifted through the code to make it compile without warnings with these flags on.
I encountered several uses of assert, which when not compiling with Debug, doesn't do anything. I introduced a macro throw_assert which works almost identically but throws an exception on assertion failure.
Edited by Moritz Kiehn