summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--py/nlrthumb.c3
1 files changed, 2 insertions, 1 deletions
diff --git a/py/nlrthumb.c b/py/nlrthumb.c
index 7dbeac1b6..c28302355 100644
--- a/py/nlrthumb.c
+++ b/py/nlrthumb.c
@@ -76,8 +76,9 @@ __attribute__((naked)) unsigned int nlr_push(nlr_buf_t *nlr) {
#endif
);
- #if defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8))
+ #if !defined(__clang__) && defined(__GNUC__) && (__GNUC__ < 4 || (__GNUC__ == 4 && __GNUC_MINOR__ < 8))
// Older versions of gcc give an error when naked functions don't return a value
+ // Additionally exclude Clang as it also defines __GNUC__ but doesn't need this statement
return 0;
#endif
}