Important changes to repositories hosted on mbed.com
Mbed hosted mercurial repositories are deprecated and are due to be permanently deleted in July 2026.
To keep a copy of this software download the repository Zip archive or clone locally using Mercurial.
It is also possible to export all your personal repositories from the account settings page.
Dependents: Seeed_Barometer_Sensor_Example
Fork of mbed-src by
Diff: common/retarget.cpp
- Revision:
- 83:5a6f638110fe
- Parent:
- 24:75304dd5f5fb
- Child:
- 221:8276e3a4886f
--- a/common/retarget.cpp Fri Jan 31 10:00:06 2014 +0000
+++ b/common/retarget.cpp Fri Jan 31 10:15:06 2014 +0000
@@ -398,15 +398,23 @@
// ****************************************************************************
// mbed_main is a function that is called before main()
+// mbed_sdk_init() is also a function that is called before main(), but unlike
+// mbed_main(), it is not meant for user code, but for the SDK itself to perform
+// initializations before main() is called.
extern "C" WEAK void mbed_main(void);
extern "C" WEAK void mbed_main(void) {
}
+extern "C" WEAK void mbed_sdk_init(void);
+extern "C" WEAK void mbed_sdk_init(void) {
+}
+
#if defined(TOOLCHAIN_ARM)
extern "C" int $Super$$main(void);
extern "C" int $Sub$$main(void) {
+ mbed_sdk_init();
mbed_main();
return $Super$$main();
}
@@ -414,6 +422,7 @@
extern "C" int __real_main(void);
extern "C" int __wrap_main(void) {
+ mbed_sdk_init();
mbed_main();
return __real_main();
}
@@ -424,6 +433,7 @@
// code will call a function to setup argc and argv (__iar_argc_argv) if it is defined.
// Since mbed doesn't use argc/argv, we use this function to call our mbed_main.
extern "C" void __iar_argc_argv() {
+ mbed_sdk_init();
mbed_main();
}
#endif
