jive-vlbi / jive5ab

The JIVE VLBI data recording and transport utility
9 stars 5 forks source link

OSX Compile Issue #1

Closed XhrisPhillips closed 4 years ago

XhrisPhillips commented 4 years ago

Latest git pull does compile (after make clean. Did not re-run cmake)

$ uname -a
Darwin BACCHUS 18.7.0 Darwin Kernel Version 18.7.0: Thu Jan 23 06:52:12 PST 2020; root:xnu-4903.278.25~1/RELEASE_X86_64 x86_64

$ git branch
  master
* v3.0.0-rc1-hotfix

$ g++ -v
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Library/Developer/CommandLineTools/SDKs/MacOSX.sdk/usr/include/c++/4.2.1
Apple clang version 11.0.0 (clang-1100.0.33.17)
Target: x86_64-apple-darwin18.7.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
Found CUDA installation: /usr/local/cuda, version 9.2

The current file is spill2net.cc:

In file included from /Users/phi196/code/jive5ab/src/mk5command/spill2net.cc:1:
In file included from /Users/phi196/code/jive5ab/src/mk5command/spill2net.h:23:
/Users/phi196/code/jive5ab/src/tthreadfns.h:1247:9: error: '~dst_state_type' has a non-throwing exception
      specification but can still throw [-Werror,-Wexceptions]
        PTHREAD_CALL( ::pthread_mutex_destroy(&mtx) );
        ^
/Users/phi196/code/jive5ab/src/pthreadcall.h:83:5: note: expanded from macro 'PTHREAD_CALL'
    PTHREAD2_CALL( a, ; )
    ^
/Users/phi196/code/jive5ab/src/pthreadcall.h:78:13: note: expanded from macro 'PTHREAD2_CALL'
            throw pthreadexception(lclStreAmvar_q8.str());\
            ^
/Users/phi196/code/jive5ab/src/tthreadfns.h:1481:13: note: in instantiation of member function
      'dst_state_type<miniblocklist_type>::~dst_state_type' requested here
            delete cd->second;
            ^
/Users/phi196/co/Users/phi196/code/jive5ab/src/mk5command/spill2net.h:637:44: note: in instantiation of function template
      specialization 'multiwriter<miniblocklist_type, fdwriterfunctor>' requested here
                c.register_cancel( c.add( &multiwriter<miniblocklist_type, fdwriterfunctor>,
                                           ^
/Users/phi196/code/jive5ab/src/mk5command/spill2net.cc:24:75: note: in instantiation of function template
      specialization 'spill2net_fn<666>' requested here
std::string  (*s2n5a)(bool, const std::vector<std::string>&, runtime&) = &spill2net_fn<mark5a>;
                                                                          ^
/Users/phi196/code/jive5ab/src/tthreadfns.h:1241:5: note: function declared non-throwing here
    ~dst_state_type() throw () {
    ^                 ~~~~~~~~
/Users/phi196/code/jive5ab/src/tthreadfns.h:1246:9: error: '~dst_state_type' has a non-throwing exception
      specification but can still throw [-Werror,-Wexceptions]
        PTHREAD_CALL( ::pthread_cond_destroy(&cond) );
        ^
/Users/phi196/code/jive5ab/src/pthreadcall.h:83:5: note: expanded from macro 'PTHREAD_CALL'
    PTHREAD2_CALL( a, ; )
    ^
/Users/phi196/code/jive5ab/src/pthreadcall.h:78:13: note: expanded from macro 'PTHREAD2_CALL'
            throw pthreadexception(lclStreAmvar_q8.str());\
            ^
/Users/phi196/code/jive5ab/src/tthreadfns.h:1241:5: note: function declared non-throwing here
    ~dst_state_type() throw () {
    ^                 ~~~~~~~~
[ 78%] Building CXX object src/CMakeFiles/jive5ab-3.1.0-64bit-Debug.dir/mk5command/transfermode.cc.o
2 errors generated.
make[2]: *** [src/CMakeFiles/jive5ab-3.1.0-64bit-Debug.dir/mk5command/spill2net.cc.o] Error 1
make[2]: *** Waiting for unfinished jobs....
make[1]: *** [src/CMakeFiles/jive5ab-3.1.0-64bit-Debug.dir/all] Error 2
make: *** [all] Error 2
haavee commented 4 years ago

Fixed - same as with previous erroneous throw specification, only missed this one because in the code it was spelled as 'throw ()' in stead of 'throw()' ...