
Hi Wolfgang,
On Thu, Jun 23, 2011 at 10:33 PM, Wolfgang Denk wd@denx.de wrote:
Dear Simon Glass,
...
+#define assert(x) \
- ({ if (!(x) && _DEBUG) \
- printf("Assertion failure '%s' %s line %d\n", \
- #x, __FILE__, __LINE__); })
Can we please use the same message format as used by assert(3) ? Afaict they use "%s%s%s:%u: %s%sAssertion `%s' failed.".
Yes, will do.
Also, to save on memory footprint (frequent repetition of the common string "Assertion failed") we should probably provide a separate function for this (cf. /usr/include/assert.h).
Good idea will do.
Finally, should the assert() not result in some termination or hang of U-Boot, like assert(3) is doing?
I'm happy either way so long as it prints a message. A hang is better than a reboot for those with ICE units, etc. My intention was that it would simply print the message and try to continue (since we can't really 'terminate' U-Boot, and it continues with DEBUG not defined).
But I am happy either way, so let me know if you would like it to hang.
Regards, Simon
Best regards,
Wolfgang Denk
-- DENX Software Engineering GmbH, MD: Wolfgang Denk & Detlev Zundel HRB 165235 Munich, Office: Kirchenstr.5, D-82194 Groebenzell, Germany Phone: (+49)-8142-66989-10 Fax: (+49)-8142-66989-80 Email: wd@denx.de "What the scientists have in their briefcases is terrifying."
- Nikita Khrushchev