Logo Questions Linux Laravel Mysql Ubuntu Git Menu
 

Enable exceptions in the Arduino environment

According to an answer to a question about whether the arduino environment supports exceptions, it is theoretically possible to run "exceptional" binaries on an Arduino board.

How would I alter my Arduino IDE to allow this? Specifically, how do I prevent the IDE from including the -fno-exceptions flag when invoking the compiler?

like image 372
aaaidan Avatar asked Oct 20 '25 16:10

aaaidan


1 Answers

The Arduino IDE passes -fno-exceptions to the compiler it uses (avr-gcc). It does this because the compiler's documentation specifies that it is required (see http://www.nongnu.org/avr-libc/user-manual/FAQ.html#faq_cplusplus).

Since this parameter is required (rightly or wrongly) for correct functioning of the compiler the Arduino IDE does not provide a way to change this.

Nevertheless, if you want to try removing this parameter to see what effect it has you'll need to edit the Arduino source code (currently line 589 in https://github.com/arduino/Arduino/blob/master/app/src/processing/app/debug/Compiler.java) and rebuild the IDE yourself.

like image 69
Matthew Murdoch Avatar answered Oct 23 '25 08:10

Matthew Murdoch