Add support for C++ static constructors (at least to a few platforms)

git-svn-id: svn://svn.code.sf.net/p/nuttx/code/trunk@4438 42af7a65-404d-4744-a932-0658087f49c3
This commit is contained in:
patacongo
2012-02-28 21:58:24 +00:00
parent ff6f30399f
commit d8085b89db
48 changed files with 595 additions and 21 deletions
+20
View File
@@ -500,6 +500,26 @@ EXTERN char up_romgetc(FAR const char *ptr);
EXTERN void up_mdelay(unsigned int milliseconds);
EXTERN void up_udelay(useconds_t microseconds);
/****************************************************************************
* Name: up_cxxinitialize
*
* Description:
* If C++ and C++ static constructors are supported, then this function
* must be provided by board-specific logic in order to perform
* initialization of the static C++ class instances.
*
* This function should then be called in the application-specific
* user_start logic in order to perform the C++ initialization. NOTE
* that no component of the core NuttX RTOS logic is involved; This
* function defintion only provides the 'contract' between application
* specific C++ code and platform-specific toolchain support
*
***************************************************************************/
#if defined(CONFIG_HAVE_CXX) && defined(CONFIG_HAVE_CXXINITIALIZE)
EXTERN void up_cxxinitialize(void);
#endif
/****************************************************************************
* These are standard interfaces that are exported by the OS
* for use by the architecture specific logic