I also use Archlinux, I have tested your code.
Indeed, with all the flags you are trying, gcc can't compile.
To me, the problem is the flag "-O3", removing it gcc can compile the code, no problem.
Note that "-O3" are very wild optimizations, it can makes the code slower some times and it can even break the code.
Careful when using it.

HTH,
Angelo


2014-07-15 12:09 GMT-03:00 Philipp Schoppe <philipp.schoppe@cern.ch>:
Hello,

I try to benchmark different queue implementations. I have a test program
which includes the boost lockfree queue and some custom implementations
where one is using gcc's STM. In order to compile it, I need to add the -fgnu-tm
flag. I am using an up-to-date arch linux system with gcc 4.9.0 and boost 1.55.0
When adding this flag, I get a compilation error. This is a small example that
illustrates the problem:

errtest.cpp:

#include <boost/lockfree/queue.hpp>

int main () {

    boost::lockfree::queue<int> lfqueue;
    lfqueue.push(234);

    return 0;
}

Compiling it using

g++ -std=c++11 -lboost_system -g -O3 -Wall -Werror -Wswitch-enum
  -fgnu-tm errtest.cpp -o test

leads to an error.

_______________________________________________
Boost-users mailing list
Boost-users@lists.boost.org
http://lists.boost.org/mailman/listinfo.cgi/boost-users