summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--TAO/ChangeLog11
-rw-r--r--TAO/tao/Exception.cpp4
-rw-r--r--TAO/tao/Exception.h5
3 files changed, 18 insertions, 2 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 5ead578c2c2..2f362e4711e 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,14 @@
+Sun Jul 27 07:29:51 2003 Balachandran Natarajan <bala@dre.vanderbilt.edu>
+
+ * tao/Exception.h:
+ * tao/Exception.cpp: Fixed compiation errors and warnings in
+ SunC++ builds. These were caused due to the following
+
+ - string literal being converted to char *
+ - explicit template instantiations required that the
+ CORBA::SystemException not be an abstract base class. Hence
+ provided default implementations for them.
+
Sat Jul 26 19:03:36 2003 Jeff Parsons <j.parsons@vanderbilt.edu>
* orbsvcs/orbsvcs/IFRService/HomeDef_i.cpp:
diff --git a/TAO/tao/Exception.cpp b/TAO/tao/Exception.cpp
index 7577221b8c3..8d222762093 100644
--- a/TAO/tao/Exception.cpp
+++ b/TAO/tao/Exception.cpp
@@ -1077,7 +1077,7 @@ static CORBA::ULong array_sz =
static char *repo_id_array [] = {
#define TAO_SYSTEM_EXCEPTION(name) \
- "IDL:omg.org/CORBA/" #name ":1.0",
+ (char *) "IDL:omg.org/CORBA/" #name ":1.0",
STANDARD_EXCEPTION_LIST
#undef TAO_SYSTEM_EXCEPTION
0
@@ -1099,7 +1099,7 @@ TAO_Exceptions::init (ACE_ENV_SINGLE_ARG_DECL)
char *name_array [] = {
#define TAO_SYSTEM_EXCEPTION(name) \
- # name,
+ (char *) # name,
STANDARD_EXCEPTION_LIST
#undef TAO_SYSTEM_EXCEPTION
0
diff --git a/TAO/tao/Exception.h b/TAO/tao/Exception.h
index abb4596e016..7c0ef5677e3 100644
--- a/TAO/tao/Exception.h
+++ b/TAO/tao/Exception.h
@@ -255,6 +255,11 @@ namespace CORBA
/// value.
static CORBA::ULong _tao_errno (int errno_value);
+ /// Overridden base class method to help compilers that use
+ /// explicit template instantiations going
+ virtual CORBA::Exception *_tao_duplicate (void) const {return 0;}
+ virtual void _raise (void) {}
+
protected:
/// Constructor using a repository id.