The memmove call is redundant since begin() is always the same as
_buffer.begin().
And since the call to begin() is removed, this function will not move
the data to the start of the buffer.
* PocoDoc: support generation on Windows
* Replace hard code path with variables:
VC should be set to the path of the C++ compiler (cl.exe)
WDK should be set to the Windows Development Kit
* Update CHANGELOG with the latest 1.7.8p4 one
* Use appveyor.yaml from c++11 branch so that CI run ok.
* Use .travis.yml from the c++ branch so that Travis CI jobs run ok.
* Add c++11 scripts and Linux config so that Travis CI jobs are ok.
* Use mkdocumentation & mkrelease from c++11 branch.
* Use PocoDoc config files from c++11 branch.
* define POCO_ENABLE_C11 as the default
* CMake: ignore Crypto for now. To be fixed since it fails.
* Backport c++11 changes from the c++11 branch
* Add Cygwin config with c++11 setup.
* Update appveyor.yml from c++11 branch.
* The destructor of BasicBufferedStreamBuf() calls Allocator::deallocate which can throw exceptions. In particular it throws Poco::SystemException when can't lock mutex.
* Added poco_unexpected(); into exception handler
A user of a prepackaged release versio of poco would have to add the constant POCO_DEBUG_LOG in order to get non empty poco_trace and poco_debug macros. There is nothing removed or added to poco itself if those macros are published even in a release build. Publishing those macros by default make life easier for the poco's users.
| cd <build>/Foundation && \
| mipsel-poky-linux-musl-g++ -DFoundation_EXPORTS -DHAVE_PTHREAD_SETAFFINITY_NP -DHAVE_THREE_PARAM_SCHED_SETAFFINITY \
| -DPCRE_STATIC -DPOCO_HAVE_FD_EPOLL -DPOCO_NO_AUTOMATIC_LIBS -DPOCO_OS_FAMILY_UNIX -DPOCO_UNBUNDLED \
| -D_FILE_OFFSET_BITS=64 -D_LARGEFILE64_SOURCE -D_REENTRANT -D_THREAD_SAFE -D_XOPEN_SOURCE=500 \
| -I<sysroot>/usr/include -I<poco>/Foundation/include -I<poco>/Foundation/src \
| -mel -mabi=32 -msoft-float -march=mips32r2 -mno-mips16 -minterlink-compressed -mtune=24kec -mdsp \
| --sysroot=<sysroot> -O2 -pipe -g -feliminate-unused-debug-types \
| -fstack-protector-strong -pie -fpie -D_FORTIFY_SOURCE=2 -Wformat -Wformat-security -Werror=format-security \
| -fvisibility-inlines-hidden -mel -mabi=32 -msoft-float -march=mips32r2 -mno-mips16 -minterlink-compressed \
| -mtune=24kec -mdsp --sysroot=<sysroot> -O2 -g -DNDEBUG -fPIC \
| -o CMakeFiles/Foundation.dir/src/ArchiveStrategy.cpp.o \
| -c <poco>/Foundation/src/ArchiveStrategy.cpp
| In file included from <poco>/Foundation/include/Poco/FPEnvironment.h:33:0,
| from <poco>/Foundation/include/Poco/NumericString.h:25,
| from <poco>/Foundation/include/Poco/NumberFormatter.h:24,
| from <poco>/Foundation/include/Poco/ArchiveStrategy.h:27,
| from <poco>/Foundation/src/ArchiveStrategy.cpp:17:
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:36:30: error: 'FE_DOWNWARD' was not declared in this scope
| FP_ROUND_DOWNWARD_IMPL = FE_DOWNWARD,
| ^~~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:37:30: error: 'FE_UPWARD' was not declared in this scope
| FP_ROUND_UPWARD_IMPL = FE_UPWARD,
| ^~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:39:30: error: 'FE_TOWARDZERO' was not declared in this scope
| FP_ROUND_TOWARDZERO_IMPL = FE_TOWARDZERO
| ^~~~~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:43:28: error: 'FE_DIVBYZERO' was not declared in this scope
| FP_DIVIDE_BY_ZERO_IMPL = FE_DIVBYZERO,
| ^~~~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:44:28: error: 'FE_INEXACT' was not declared in this scope
| FP_INEXACT_IMPL = FE_INEXACT,
| ^~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:45:28: error: 'FE_OVERFLOW' was not declared in this scope
| FP_OVERFLOW_IMPL = FE_OVERFLOW,
| ^~~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:46:28: error: 'FE_UNDERFLOW' was not declared in this scope
| FP_UNDERFLOW_IMPL = FE_UNDERFLOW,
| ^~~~~~~~~~~~
| <poco>/Foundation/include/Poco/FPEnvironment_C99.h:47:28: error: 'FE_INVALID' was not declared in this scope
| FP_INVALID_IMPL = FE_INVALID
| ^~~~~~~~~~
The reason is that some (notably FPU-less) architectures,
including mips*-nf, don't define/implement some of the
floating point constants, even though fenv.h is
available.
The key point is:
A fully standards conforming fenv.h does not have to
define any FE_* macros, and if it does define them,
then it defines macros only for the FP exceptions it
actually supports.
See similar issue in boost:
https://svn.boost.org/trac/boost/ticket/11756