zeromq / zmqpp

0mq 'highlevel' C++ bindings
http://zeromq.github.io/zmqpp
Mozilla Public License 2.0
438 stars 197 forks source link

requirement of C++0x compliant compiler is not quite accurate? #105

Closed jeffdaily closed 9 years ago

jeffdaily commented 9 years ago

Using gcc 4.4.7 (yes, I know it's old) and -std=c++0x is not sufficient to build zmqpp. The README.md states minimum requirements as ZeroMQ 2.2.x or later and C++0x compliant compiler.

I see the following error:

In file included from src/zmqpp/socket.cpp:22:
src/zmqpp/message.hpp: In constructor ‘zmqpp::message::message(const T&, Args&& ...) [with T = zmqpp::signal, Args = ]’:
src/zmqpp/socket.cpp:132:   instantiated from here
src/zmqpp/message.hpp:63: error: type ‘zmqpp::message’ is not a direct base of ‘zmqpp::message’
make: *** [build/max-g++44/obj/zmqpp/socket.o] Error 1

Explained here: http://stackoverflow.com/questions/11391108/c-class-is-not-base-of-itself One of the answers points out: According to C++0x/C++11 Support in GCC , delegating constructors were implemented in GCC v4.7.

I'm guessing you're going to update the documentation to require a C++11 compiler rather than test for supported C++11 features?

xaqq commented 9 years ago

Hello,

Yes I would rather update the docs and require a c++11 compliant compiler than test for features. However, this is similar to #93 so it seems to negatively affect users.

Do you plan to add to those kind of tests ? If yes, we welcome pull request. If no, I believe I will update the readme so at least this wont confuse people.