diff options
-rw-r--r-- | ACE/ChangeLog | 8 | ||||
-rw-r--r-- | ACE/tests/CDR_Array_Test.cpp | 6 |
2 files changed, 14 insertions, 0 deletions
diff --git a/ACE/ChangeLog b/ACE/ChangeLog index 861aa3abd2c..fde9cdd72c1 100644 --- a/ACE/ChangeLog +++ b/ACE/ChangeLog @@ -1,3 +1,11 @@ +Wed Jan 10 16:08:32 UTC 2007 Chad Elliott <elliott_c@ociweb.com> + + * tests/CDR_Array_Test.cpp: + + Added a work-around for an issue with gcc 4.1.1 (and possibly + later versions) where certain variables are optimized away while + they are still needed. + Wed Jan 10 15:19:02 UTC 2007 Steve Huston <shuston@riverace.com> * NEWS: Noted that Windows 95, 98, Me, etc. prior to NT4 SP2 are diff --git a/ACE/tests/CDR_Array_Test.cpp b/ACE/tests/CDR_Array_Test.cpp index 5bb5a01c3eb..f6aa7d02e0e 100644 --- a/ACE/tests/CDR_Array_Test.cpp +++ b/ACE/tests/CDR_Array_Test.cpp @@ -610,6 +610,12 @@ CDR_Test<T, H>::do_test (int total, int niter, int use_array, H::swap(src, dst); + // Due to a "feature" of the gcc 4.1.1 optimizer, we need to do + // something with the src pointer so that it doesn't optimize it + // away. Calling tellalign() is benign, but the optimizer + // doesn't know/care. -- Chad Elliott 1/10/2007 + tellalign (src); + T cv = CDR_Test<T, H>::checkval (i); if (rv != cv) { |