tree 99702cbe3705fd3ecc6de8ce0937cde3411020c6
parent 422fecc85da4786a0980d48bf89de5641c2ee743
author Ferenc Gerlits <fgerlits@gmail.com> 1594378461 +0200
committer Arpad Boda <aboda@apache.org> 1596965907 +0200
gpgsig -----BEGIN PGP SIGNATURE-----
 
 iQFFBAABCgAvFiEE7ni7ioKnhRR3qq0KOQwbWt6XiDUFAl8vxCsRHGFib2RhQGFw
 YWNoZS5vcmcACgkQOQwbWt6XiDVjTggAsbVUAUWr924XVgDs8htT9dLGsGsW8dI9
 wQ9n+hmbKpngXOZ3CQ8g6grSnbs7ucDbZALwyhMXUoqm0UPO7OKSOdnenufXzwFj
 1iJdUI7bSQgxlmIv6QHz5k/G3cEXiPQuHluP+sAhTGZTvNnJwEnDS6Ah3DbDtXur
 rOp1O2b0cW6OUj1PbJPximuNN0ip8Jk7Xj69CSeK4JVFrwEUyvv7q5yxJqXEjtqJ
 nT+RdTHl2K+EGKJQ6wZXx3BoV4KdF91ElG440mn9gmMOuaP0u+M17qdfYX4ZkLFR
 wNBVdOp9Q+ysjZvyfJ8KFJzOKqKxpLKMn1FijUaEIO/YIm5DQ6lgXQ==
 =f+UW
 -----END PGP SIGNATURE-----

MINIFICPP-1268 Change the warning level flag to /W3

Also simplify the syntax of these declarations.

Fix byteSwap and unit test it
Use the function wrapper in C++ code; fix the macro in C code.
Fix unreferenced variable warnings
Fix possible loss of data warnings
Fix 'The POSIX name for this item is deprecated' warnings
Set the character encoding to utf-8
Set the source and executable character encoding to utf-8; this gets rid of
many 'character X cannot be represented in the current code page' warnings
in Expression.cpp.

Fix signed/unsigned mismatch warnings

Disable deprecated function warnings
These are deprecated functions delegating to or overriding other
deprecated functions.  They will be removed together, there is no
need for a warning until then.

Replace bitwise | with logical ||
Add missing #includes
Mark the narrowing conversion as narrowing
Change the type of crc_ to uLong

Signed-off-by: Arpad Boda <aboda@apache.org>

This closes #848
