At present assert() is not supported with tiny-printf, so when DEBUG is
enabled a build error is generated for each assert().

Add an __assert_fail() function to correct this. It prints a message and
then hangs.

Signed-off-by: Simon Glass <s...@chromium.org>
---

Changes in v3: None
Changes in v2: None

 lib/tiny-printf.c | 9 +++++++++
 1 file changed, 9 insertions(+)

diff --git a/lib/tiny-printf.c b/lib/tiny-printf.c
index 451f4f7..2f32950 100644
--- a/lib/tiny-printf.c
+++ b/lib/tiny-printf.c
@@ -180,3 +180,12 @@ int snprintf(char *buf, size_t size, const char *fmt, ...)
 
        return ret;
 }
+
+void __assert_fail(const char *assertion, const char *file, unsigned line,
+                  const char *function)
+{
+       /* This will not return */
+       printf("%s:%u: %s: Assertion `%s' failed.", file, line, function,
+              assertion);
+       hang();
+}
-- 
2.8.0.rc3.226.g39d4020

_______________________________________________
U-Boot mailing list
U-Boot@lists.denx.de
http://lists.denx.de/mailman/listinfo/u-boot

Reply via email to