summaryrefslogtreecommitdiffstatshomepage
diff options
context:
space:
mode:
authorDamien George <damien.p.george@gmail.com>2014-06-30 09:09:24 +0100
committerDamien George <damien.p.george@gmail.com>2014-06-30 09:09:24 +0100
commit4039a266793f8bb3af24482b3d08b2dcef51e268 (patch)
tree5f5f3c9b59d7cfc7ef42e812f060de4c00bb6fe8
parentb601d9574ad03a18d3eb476d631f547c7ea28243 (diff)
parent89b38d96c9e1dc45d6648268db28aec6e4d1fd8e (diff)
downloadmicropython-4039a266793f8bb3af24482b3d08b2dcef51e268.tar.gz
micropython-4039a266793f8bb3af24482b3d08b2dcef51e268.zip
Merge pull request #710 from iabdalkader/assert
Fix assert_func warning/error
-rw-r--r--py/mpconfig.h5
-rw-r--r--stmhal/main.c5
2 files changed, 7 insertions, 3 deletions
diff --git a/py/mpconfig.h b/py/mpconfig.h
index 0dd84d1f81..3a9d342ea3 100644
--- a/py/mpconfig.h
+++ b/py/mpconfig.h
@@ -404,3 +404,8 @@ typedef double mp_float_t;
#ifndef NORETURN
#define NORETURN __attribute__((noreturn))
#endif
+
+// Modifier for weak functions
+#ifndef MP_WEAK
+#define MP_WEAK __attribute__((weak))
+#endif
diff --git a/stmhal/main.c b/stmhal/main.c
index d6c12602e0..0cad768adb 100644
--- a/stmhal/main.c
+++ b/stmhal/main.c
@@ -86,7 +86,7 @@ void flash_error(int n) {
led_state(PYB_LED_R2, 0);
}
-void __fatal_error(const char *msg) {
+void NORETURN __fatal_error(const char *msg) {
for (volatile uint delay = 0; delay < 10000000; delay++) {
}
led_state(1, 1);
@@ -112,8 +112,7 @@ void nlr_jump_fail(void *val) {
}
#ifndef NDEBUG
-void __attribute__((weak))
- __assert_func(const char *file, int line, const char *func, const char *expr) {
+void MP_WEAK __assert_func(const char *file, int line, const char *func, const char *expr) {
(void)func;
printf("Assertion '%s' failed, at file %s:%d\n", expr, file, line);
__fatal_error("");