diff options
-rw-r--r-- | gcc/config/avr/avr.cc | 12 |
1 files changed, 9 insertions, 3 deletions
diff --git a/gcc/config/avr/avr.cc b/gcc/config/avr/avr.cc index 12c5966..4a5a921 100644 --- a/gcc/config/avr/avr.cc +++ b/gcc/config/avr/avr.cc @@ -1495,14 +1495,20 @@ avr_set_current_function (tree decl) // Common problem is using "ISR" without first including avr/interrupt.h. const char *name = IDENTIFIER_POINTER (DECL_NAME (decl)); name = default_strip_name_encoding (name); - if (strcmp ("ISR", name) == 0 - || strcmp ("INTERRUPT", name) == 0 - || strcmp ("SIGNAL", name) == 0) + if (strcmp ("ISR", name) == 0) { warning_at (loc, OPT_Wmisspelled_isr, "%qs is a reserved identifier" " in AVR-LibC. Consider %<#include <avr/interrupt.h>%>" " before using the %qs macro", name, name); } + if (strcmp ("INTERRUPT", name) == 0 + || strcmp ("SIGNAL", name) == 0) + { + warning_at (loc, OPT_Wmisspelled_isr, "%qs is a deprecated identifier" + " in AVR-LibC. Consider %<#include <avr/interrupt.h>%>" + " or %<#include <compat/deprecated.h>%>" + " before using the %qs macro", name, name); + } #endif // AVR-LibC naming conventions /* Don't print the above diagnostics more than once. */ |