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

git-svn-id: https://nuttx.svn.sourceforge.net/svnroot/nuttx/trunk@4438 7fd9a85b-ad96-42d3-883c-3090e2eb8679
This commit is contained in:
patacongo
2012-02-28 21:58:24 +00:00
parent d83d1596b0
commit 82da59c616
50 changed files with 667 additions and 37 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