Playing around with #error's I found out ATOMIC_INT_LOCK_FREE is set to 1 so this condition isn't fulfilled. The next thing i tried out is to comment that condition. The result was:
/cygdrive/d/Development/x-tools/arm-unknown-linux-gnueabihf/arm-unknown-linux-gnueabihf/include/c++/6.3.0/bits/nested_exception.h:43:4: error: #error This platform does not support exception propagation.
I checked then if this example compiles on Pi. It worked. So it seems I have to rebuild my cross-compiler. Do you maybe know which option should I pay attention to, to have this option set?
According to https://gcc.gnu.org/bugzilla/show_bug.cgi?id=58938, configure GCC with '-with-arch=armv7-a' should do the job (setting __GCC_ATOMIC_INT_LOCK_FREE / ATOMIC_INT_LOCK_FREE to 2), IIUC. FWIW, as pointed out by frankhb1989 in that post (#11), the behavior of GCC 6.3 should be a violation of the standard. Also, starting from GCC 7.1, ATOMIC_INT_LOCK_FREE is no longer tested for exception-related stuffs. You may give it a try as well. ps: It seems that in GCC 6.3, 'future' is also relying on ATOMIC_INT_LOCK_FREE to be 2. This restrictions is removed in GCC 7.1 as well.