diff --git a/.travis.yml b/.travis.yml index 0b70b485c53..a9ba4f98517 100644 --- a/.travis.yml +++ b/.travis.yml @@ -66,6 +66,32 @@ jobs: # env: COMPILER=g++-5 SAN_FLAGS="-fsanitize=undefined -fno-sanitize-recover -fno-omit-frame-pointer" env: COMPILER="ccache g++-5" + # OS X using g++ + - stage: Test different OS/CXX/Flags + os: osx + sudo: false + compiler: gcc + cache: ccache + before_install: + #we create symlink to non-ccache gcc, to be used in tests + - mkdir bin ; ln -s /usr/bin/gcc bin/gcc + - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache + - export PATH=/usr/local/opt/ccache/libexec:$PATH + env: COMPILER="ccache g++" + + # OS X using clang++ + - stage: Test different OS/CXX/Flags + os: osx + sudo: false + compiler: clang + cache: ccache + before_install: + - HOMEBREW_NO_AUTO_UPDATE=1 brew install ccache + - export PATH=/usr/local/opt/ccache/libexec:$PATH + env: + - COMPILER="ccache clang++ -Qunused-arguments -fcolor-diagnostics" + - CCACHE_CPP2=yes + # Ubuntu Linux with glibc using g++-5, debug mode - stage: Test different OS/CXX/Flags os: linux @@ -154,6 +180,18 @@ jobs: - cmake --build build -- -j4 script: (cd build; ctest -V -L CORE) + - stage: Test different OS/CXX/Flags + os: osx + cache: ccache + env: + - BUILD_SYSTEM=cmake + - CCACHE_CPP2=yes + install: + - cmake -H. -Bbuild '-DCMAKE_BUILD_TYPE=Release' '-DCMAKE_OSX_ARCHITECTURES=x86_64' + - cmake --build build -- -j4 + script: (cd build; ctest -V -L CORE) + + # Run Coverity - stage: Test different OS/CXX/Flags os: linux diff --git a/src/util/symbol_table_writer.h b/src/util/symbol_table_writer.h index 7f130ec66a0..4dd62a5e2dd 100644 --- a/src/util/symbol_table_writer.h +++ b/src/util/symbol_table_writer.h @@ -129,8 +129,9 @@ class journalling_symbol_table_writert void erase(const symbol_tablet::symbolst::const_iterator &entry) { + const irep_idt entry_name=entry->first; base_symbol_table.erase(entry); - on_remove(entry->first); + on_remove(entry_name); } void clear()