1) Fix for bug 3413 - [GCCE] Namespace 'abi' not declared in e32test build.
2) Revert fix for bug 3389; fix for 3431 replaces it.
3) Correct typo in fix for bug 3391.
--- a/kernel/eka/compsupp/gcce/gcce.h Mon Jul 26 18:22:55 2010 +0100
+++ b/kernel/eka/compsupp/gcce/gcce.h Tue Jul 27 07:53:26 2010 +0100
@@ -165,6 +165,9 @@
#endif
#ifdef __cplusplus
+
+// To compile rtti support
+#define __EDG_RUNTIME_USES_NAMESPACES
// Support for throwing exceptions through embedded assembler
// Should only be needed user side
--- a/kernel/eka/compsupp/rvct/drtaeabi.cpp Mon Jul 26 18:22:55 2010 +0100
+++ b/kernel/eka/compsupp/rvct/drtaeabi.cpp Tue Jul 27 07:53:26 2010 +0100
@@ -71,7 +71,7 @@
asm(".weak ZTVN10__cxxabiv123__fundamental_type_infoE");
asm(".extern _ZTSv");
asm(".global $Sub$$_ZTIv");
- asm("$Sub$$_ZTIv");
+ asm("$Sub$$_ZTIv:");
asm(".word _ZTVN10__cxxabiv123__fundamental_type_infoE");
asm(".word _ZTSv");
}
--- a/kernel/eka/compsupp/symaehabi/cxxabi.h Mon Jul 26 18:22:55 2010 +0100
+++ b/kernel/eka/compsupp/symaehabi/cxxabi.h Tue Jul 27 07:53:26 2010 +0100
@@ -78,36 +78,37 @@
#ifdef __EDG_RUNTIME_USES_NAMESPACES
namespace __cxxabiv1 {
+ using namespace std;
#endif /* ifdef __EDG_RUNTIME_USES_NAMESPACES */
/* type_info implementation classes */
#pragma define_type_info
- class __fundamental_type_info : public std::type_info {
+ class __fundamental_type_info : public type_info {
public:
virtual ~__fundamental_type_info();
};
#pragma define_type_info
- class __array_type_info : public std::type_info {
+ class __array_type_info : public type_info {
public:
virtual ~__array_type_info();
};
#pragma define_type_info
- class __function_type_info : public std::type_info {
+ class __function_type_info : public type_info {
public:
virtual ~__function_type_info();
};
#pragma define_type_info
- class __enum_type_info : public std::type_info {
+ class __enum_type_info : public type_info {
public:
virtual ~__enum_type_info();
};
#pragma define_type_info
- class __class_type_info : public std::type_info {
+ class __class_type_info : public type_info {
public:
virtual ~__class_type_info();
};
@@ -145,7 +146,7 @@
};
#pragma define_type_info
- class __pbase_type_info : public std::type_info {
+ class __pbase_type_info : public type_info {
public:
virtual ~__pbase_type_info();
unsigned int __flags;