When the compiler configured to support C++11 (e.g. CXXFLAG contains -std=c++11 is given),
those files are used.
Decoupled unpacker and msgpack_unpacker.
This modification introduced C++11 dependency such as nullptr and unique_ptr.
I will support C++11 and C++03, finally.
Decoupled msgpack.hpp and msgpack.h.
Decoupled sbuffer from msgpack_sbuffer.
Decoupled vrefbuffer from msgpack_vrefbuffer.
Decoupled zbuffer from msgpack_zbuffer.
Added some z_stream initialization.
Removed unpack macros.
Removed CTX_CAST and CTX_REFERENCED.
Embed ctx_ as a member variable (not a pointer).
Modified zone free using C++ way.
Set compile settiong on MSVC. ".c" files are compliled as C, not C++. (msgpack_vc8.vcproj, CMakeLists.txt)
Fixed msgpack root object initialization problem on MSVC. {} initialization is not supported on MSVC.
For a pure C compilation with MSVC type bool is not available. Not tested with other targets (Mingw, cygwin). Thats why only active of ```_MSC_VER``` is defined. So not sure if the bool fix should be also applied to other targets.
For MSVC the inline specifier is not valid and must be named __inline (or _inline).
https://github.com/msgpack/msgpack-c/pull/20
Removed 'preprocess' from original CMakeLists.txt.
Removed file copy from original CMakeLists.txt.
Removed 'preprocess' from bootstrap.
Removed file copy from bootstrap.
Added erb generated files. Ruby is no longer required.
Moved cases.mpac, cases_compact.mpa, pack_define.h,
pack_template.h, unpack_define.h, unpack_template.h,
and sysdep.h to apropriate location.
If you want to re-generate zone.hpp, define.hpp, and tuple.hpp,
then you execute preprocess.
Projects that use -Wconversion don't compile due to errors in msgpack header
files. This commit fixes all the errors in msgpack-c for when -Wconversion is
enabled.
Now I can even compile msgpack-c itself with -Wconversion and all my projects:
CFLAGS=-Wconversion ./configure
make