diff options
author | cdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-04-20 23:25:20 +0000 |
---|---|---|
committer | cdgill <cdgill@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-04-20 23:25:20 +0000 |
commit | 249860b2bfef3f0207e8f8de9a32352be0620da2 (patch) | |
tree | f80d38eee195dcdbf5291e01e4948e767b947b42 | |
parent | 0b7e0519e868d45bf4da884b6741bfc20652ed3b (diff) | |
download | ATCD-249860b2bfef3f0207e8f8de9a32352be0620da2.tar.gz |
fixed remaining tests with fixable diab compiler workarounds
-rw-r--r-- | ChangeLog-99b | 15 | ||||
-rw-r--r-- | README | 1 | ||||
-rw-r--r-- | ace/Map_T.i | 42 | ||||
-rw-r--r-- | ace/config-psos-diab-mips.h | 2 | ||||
-rw-r--r-- | ace/config-psos-diab-ppc.h | 7 | ||||
-rw-r--r-- | ace/config-psos-diab.h | 6 | ||||
-rw-r--r-- | include/makeinclude/platform_psos_diab_ppc.GNU | 11 | ||||
-rw-r--r-- | tests/Handle_Set_Test.cpp | 12 | ||||
-rw-r--r-- | tests/Process_Strategy_Test.cpp | 8 |
9 files changed, 71 insertions, 33 deletions
diff --git a/ChangeLog-99b b/ChangeLog-99b index ff9f45b4e40..ef772de3f71 100644 --- a/ChangeLog-99b +++ b/ChangeLog-99b @@ -1,3 +1,15 @@ +Tue Apr 20 18:22:00 1999 Chris Gill <cdgill@cs.wustl.edu> + + * ace/Map_T.i + ace/config-psos-diab-mips.h + ace/config-psos-diab-ppc.h + ace/config-psos-diab.h + include/makeinclude/platform_psos_deab_ppc.GNU + tests/Handle_Set_Test.cpp + tests/Process_Strategy_Test.cpp: fixed the remaining tests + for which compiler bug workarounds were available for pSOS + PPC with the Diab 4.2b compiler. + Tue Apr 20 16:41:39 1999 Nanbor Wang <nanbor@cs.wustl.edu> * ace/Thread_Manager.cpp (num_tasks_in_group): Make sure we are @@ -222,7 +234,8 @@ Wed Apr 14 18:56:00 1999 Chris Gill <cdgill@cs.wustl.edu> ace/config-psos-diab-ppc.h include/makeinclude/platform_psos_diab_ppc.GNU: changes to adapt the pSOS Diab 68k/MIPS port to PPC. Many thanks to Sarmeesha - Reddy <sreddy@tr.comm.mot.com> for contributing these changes. + Reddy <sreddy@tr.comm.mot.com> and Steven Tine + <stevent@tr.comm.mot.com> for contributing these changes. Wed Apr 14 17:06:22 1999 David L. Levine <levine@cs.wustl.edu> @@ -807,6 +807,7 @@ Margaret Reitz <margaret@veritas.com> Thomas Mehrkam <Thomas_Mehrkam@i-o.com> Erik Ivanenko <erik.ivanenko@utoronto.ca> Sarmeesha Reddy <sreddy@tr.comm.mot.com> +Steven Tine <stevent@tr.comm.mot.com> Dave Steele <Dave_Steele@Mitel.COM> Simeon Simeonov <simeons@allaire.com> David H. Whittington <david.h.whittington@boeing.com> diff --git a/ace/Map_T.i b/ace/Map_T.i index ffbcac60397..ed64cf6d6a7 100644 --- a/ace/Map_T.i +++ b/ace/Map_T.i @@ -572,9 +572,10 @@ ACE_Active_Map_Manager_Iterator_Adapter<T, VALUE>::compare (const ACE_Iterator_I template <class T, class VALUE> ACE_INLINE T ACE_Active_Map_Manager_Iterator_Adapter<T, VALUE>::dereference () const { - ACE_TYPENAME ACE_Active_Map_Manager<VALUE>::ENTRY &entry = *this->implementation_; - return T (entry.int_id_.first (), - entry.int_id_.second ()); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).int_id_.first (), + (*implementation_).int_id_.second ()); } template <class T, class VALUE> ACE_INLINE void @@ -627,9 +628,10 @@ ACE_Active_Map_Manager_Reverse_Iterator_Adapter<T, VALUE>::compare (const ACE_Re template <class T, class VALUE> ACE_INLINE T ACE_Active_Map_Manager_Reverse_Iterator_Adapter<T, VALUE>::dereference () const { - ACE_TYPENAME ACE_Active_Map_Manager<VALUE>::ENTRY &entry = *this->implementation_; - return T (entry.int_id_.first (), - entry.int_id_.second ()); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).int_id_.first (), + (*implementation_).int_id_.second ()); } template <class T, class VALUE> ACE_INLINE void @@ -1036,9 +1038,10 @@ ACE_Hash_Map_Manager_Ex_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>: template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE T ACE_Hash_Map_Manager_Ex_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::dereference () const { - ACE_TYPENAME ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>::ENTRY &entry = *this->implementation_; - return T (entry.ext_id_, - entry.int_id_); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).ext_id_, + (*implementation_).int_id_); } template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE void @@ -1091,9 +1094,10 @@ ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPAR template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE T ACE_Hash_Map_Manager_Ex_Reverse_Iterator_Adapter<T, KEY, VALUE, HASH_KEY, COMPARE_KEYS>::dereference () const { - ACE_TYPENAME ACE_Hash_Map_Manager_Ex<KEY, VALUE, HASH_KEY, COMPARE_KEYS, ACE_Null_Mutex>::ENTRY &entry = *this->implementation_; - return T (entry.ext_id_, - entry.int_id_); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).ext_id_, + (*implementation_).int_id_); } template <class T, class KEY, class VALUE, class HASH_KEY, class COMPARE_KEYS> ACE_INLINE void @@ -1350,9 +1354,10 @@ ACE_Map_Manager_Iterator_Adapter<T, KEY, VALUE>::compare (const ACE_Iterator_Imp template <class T, class KEY, class VALUE> ACE_INLINE T ACE_Map_Manager_Iterator_Adapter<T, KEY, VALUE>::dereference () const { - ACE_TYPENAME ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex>::ENTRY &entry = *this->implementation_; - return T (entry.ext_id_, - entry.int_id_); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).ext_id_, + (*implementation_).int_id_); } template <class T, class KEY, class VALUE> ACE_INLINE void @@ -1405,9 +1410,10 @@ ACE_Map_Manager_Reverse_Iterator_Adapter<T, KEY, VALUE>::compare (const ACE_Reve template <class T, class KEY, class VALUE> ACE_INLINE T ACE_Map_Manager_Reverse_Iterator_Adapter<T, KEY, VALUE>::dereference () const { - ACE_TYPENAME ACE_Map_Manager<KEY, VALUE, ACE_Null_Mutex>::ENTRY &entry = *this->implementation_; - return T (entry.ext_id_, - entry.int_id_); + // The following syntax is necessary to work around certain broken compilers. + // In particular, please do not prefix implementation_ with this-> + return T ((*implementation_).ext_id_, + (*implementation_).int_id_); } template <class T, class KEY, class VALUE> ACE_INLINE void diff --git a/ace/config-psos-diab-mips.h b/ace/config-psos-diab-mips.h index 471057cb665..77aa346c9b7 100644 --- a/ace/config-psos-diab-mips.h +++ b/ace/config-psos-diab-mips.h @@ -238,6 +238,8 @@ #define ACE_LACKS_MALLOC_H +#define ACE_PSOS_DIAB + #define ACE_PSOS_DIAB_MIPS #endif /* ACE_CONFIG_H */ diff --git a/ace/config-psos-diab-ppc.h b/ace/config-psos-diab-ppc.h index 3fa446b5094..551d99cbda5 100644 --- a/ace/config-psos-diab-ppc.h +++ b/ace/config-psos-diab-ppc.h @@ -140,8 +140,8 @@ #define ACE_LACKS_SIGINFO_H #define ACE_SIGINFO_IS_SIGINFO_T #define ACE_LACKS_SIGSET_DEFINITIONS -#define ACE_LACKS_SIGSET //sandass -#define ACE_LACKS_SIGACTION //sandass +#define ACE_LACKS_SIGSET +#define ACE_LACKS_SIGACTION #define ACE_HAS_SIGWAIT @@ -238,7 +238,8 @@ #define ACE_LACKS_MKFIFO -//sandass +#define ACE_PSOS_DIAB + #define ACE_PSOS_DIAB_PPC #endif /* ACE_CONFIG_H */ diff --git a/ace/config-psos-diab.h b/ace/config-psos-diab.h index c4cc6d9a04e..5e9c62c163b 100644 --- a/ace/config-psos-diab.h +++ b/ace/config-psos-diab.h @@ -227,8 +227,8 @@ #define ACE_PSOS #endif /* ACE_PSOS */ -#if !defined (ACE_PSOS_TBD) -#define ACE_PSOS_TBD -#endif /* ACE_PSOS_TBD */ +#if !defined (ACE_PSOS_DIAB) +#define ACE_PSOS_DIAB +#endif /* ACE_PSOS_DIAB */ #define ACE_LACKS_MKFIFO #endif /* ACE_CONFIG_H */ diff --git a/include/makeinclude/platform_psos_diab_ppc.GNU b/include/makeinclude/platform_psos_diab_ppc.GNU index e4d53c4510e..0216a4bbc80 100644 --- a/include/makeinclude/platform_psos_diab_ppc.GNU +++ b/include/makeinclude/platform_psos_diab_ppc.GNU @@ -8,8 +8,11 @@ PSS_LIBC_DIR = $(PSS_ROOT)/sys/libc PSS_SYS_DIR = $(PSS_ROOT)/sys/os +# PSOS_LIBS = -L $(PSS_LIBC_DIR) -lprepcH -lcxxsp \ +# -L $(PSS_SYS_DIR) -lsysxx -lsys + PSOS_LIBS = -L $(PSS_LIBC_DIR) -lprepcH -lcxxsp \ - -L $(PSS_SYS_DIR) -lsysxx -lsys + -L $(PSS_SYS_DIR) -lsys PSS_BSP_LIB = -L $(PSS_BSP) -lbsp @@ -57,7 +60,7 @@ static_libs = 1 # C Compiler -CC = dcc -tMC68060FS:psos +CC = dcc -tPPC860ES:psos # -WDCDCONFIG=psos.conf # C Debug Compiler Flags @@ -140,11 +143,11 @@ DCCFLAGS += $(DCFLAGS) # Dynamic Linker # DLD = dld -DLD = dplus -tMC68060FS:psos -Wm$(PSS_BSP)/ram.lnk +DLD = dplus -tPPC860ES:psos -Wm$(PSS_BSP)/ram.lnk # Static Linker # LD = dld -LD = dplus -tMC68060FS:psos -Wm$(PSS_BSP)/ram.lnk +LD = dplus -tPPC860ES:psos -Wm$(PSS_BSP)/ram.lnk # Static Linker Flags # -L<path> adds a directory path to the linker search path diff --git a/tests/Handle_Set_Test.cpp b/tests/Handle_Set_Test.cpp index cb8a58942af..0fbf86f8da0 100644 --- a/tests/Handle_Set_Test.cpp +++ b/tests/Handle_Set_Test.cpp @@ -99,7 +99,14 @@ test_boundaries (void) while ((handle = i1 ()) != ACE_INVALID_HANDLE) { - ACE_ASSERT (ASYS_TEXT ("this shouldn't get called since the set is empty!\n") == 0); +#if defined (ACE_PSOS_DIAB) + // workaround for some compiler confusion with strings in assertions + const int SET_IS_EMPTY_SO_SHOULD_NOT_SEE_THIS = 1; + ACE_ASSERT (0 == SET_IS_EMPTY_SO_SHOULD_NOT_SEE_THIS); +#else /* ! defined (ACE_PSOS_DIAB) */ + ACE_ASSERT (0 == ASYS_TEXT ("this shouldn't get called since " + "the set is empty!\n")); +#endif /* defined (ACE_PSOS_DIAB) */ } // Insert the vector of HANDLEs into the set. @@ -118,7 +125,7 @@ test_boundaries (void) while ((handle = i2 ()) != ACE_INVALID_HANDLE) { int done = set.remove(handle); - ACE_ASSERT(done == 0); + ACE_ASSERT (done == 0); count++; } @@ -211,4 +218,3 @@ template class ACE_Unbounded_Set_Iterator<ACE_HANDLE>; #pragma instantiate ACE_Node<ACE_HANDLE> # endif #endif /* ACE_HAS_EXPLICIT_TEMPLATE_INSTANTIATION */ - diff --git a/tests/Process_Strategy_Test.cpp b/tests/Process_Strategy_Test.cpp index ca939ea2fec..11ec1c318c5 100644 --- a/tests/Process_Strategy_Test.cpp +++ b/tests/Process_Strategy_Test.cpp @@ -236,7 +236,13 @@ Options::parse_args (int argc, char *argv[]) -1); break; #else +# if defined (ACE_PSOS_DIAB) + // Workaround for compiler confusion with strings in assertions. + const int PROCESS_INVALID_ON_THIS_PLATFORM = 1; + ACE_ASSERT (PROCESS_INVALID_ON_THIS_PLATFORM == 0); +# else /* ! defined (ACE_PSOS_DIAB) */ ACE_ASSERT ("PROCESS invalid on this platform" == 0); +# endif /* defined (ACE_PSOS_DIAB) */ #endif /* !defined (ACE_LACKS_FORK) */ case Options::THREAD: #if defined (ACE_HAS_THREADS) @@ -618,7 +624,7 @@ main (int argc, char *argv[]) #if !defined (ACE_LACKS_FORK) // We're running the client and serve as separate processes. - pid_t pid = ACE::fork ("child", + pid_t pid = ACE::fork ("child", 1); // Avoid zombies. switch (pid) |