Xcode documentation lists several runtime tools, including sanitizers.

Xcode provides several runtime tools to identify potential issues in your code:

  • Address Sanitizer—The ASan tool identifies potential memory-related corruption issues.
  • Thread Sanitizer—The TSan tool detects race conditions between threads.
  • Main Thread Checker—This tool verifies that system APIs that must run on the main thread actually do run on that thread.
  • Undefined Behavior Sanitizer—The UBSan tool detects divide-by-zero errors, attempts to access memory using a misaligned pointer, and other undefined behaviors.

Address Sanitizer runtime

On macOS and iOS, Address Sanitizer requires a dynamic library that contains the asan runtime to run.

If the compiler version that a dependency framework is compiled with and the compiler version of your Xcode mismatches, you may see errors like dyld[xxx]: missing symbol called when you have Address Sanitizer enabled across them.