[PATCH] [ADT][CMake][AutoConf] fail-fast iterators for DenseMap

Reid Kleckner rnk at google.com
Mon Mar 16 11:04:27 PDT 2015


This seems like a reasonably good compromise. I'd really like to have this iterator invalidation enabled when assertions are enabled, but we have the ability to flip it off when ABI compatibility is important. Being ABI incompatible by default is really just acknowledging that LLVM's ABI isn't very stable.

Are there any more places we should be documenting this check? http://llvm.org/docs/ReleaseProcess.html or http://lldb.llvm.org/build.html? I know that Chromium for example uses a Release+Asserts build of Clang. This might be too much overhead for them.

LLDB for example might want to have a check like:

  if (NOT LLVM_FAIL_FAST_ITERATORS STREQUAL "FORCE_OFF")
    message(FATAL_ERROR "LLDB requires a stable LLVM ABI, set LLVM_FAIL_FAST_ITERATORS to FORCE_OFF")
  endif()


http://reviews.llvm.org/D8351

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/






More information about the llvm-commits mailing list