8.73 --exceptions, --no_exceptions

Enables and disables exception handling.

In C++, the --exceptions option enables the use of throw and try/catch, causes function exception specifications to be respected, and causes the compiler to emit unwinding tables to support exception propagation at runtime.

In C++, when the --no_exceptions option is specified, throw and try/catch are not permitted in source code. However, function exception specifications are still parsed, but most of their meaning is ignored.

In C, the behavior of code compiled with --no_exceptions is undefined if an exception is thrown through the compiled functions. You must use --exceptions, if you want exceptions to propagate correctly though C functions.


The default is --no_exceptions. However, if you specify an ARM Linux configuration file on the command line and you use --translate_g++, the default changes to --exceptions.

Related reference
11.11 C++ exception handling in ARM C++
8.74 --exceptions_unwind, --no_exceptions_unwind
10.83 #pragma exceptions_unwind, #pragma no_exceptions_unwind
8.9 --arm_linux_config_file=path
8.10 --arm_linux_configure
Non-ConfidentialPDF file icon PDF versionARM DUI0472J
Copyright © 2010-2013 ARM. All rights reserved.