diff --git a/gcc/ChangeLog b/gcc/ChangeLog
index b8a49a4c1d318e76032cf22cdfe96f82a6c26446..4af751eab9f8bb96f679456ed4253e758fe57e25 100644
--- a/gcc/ChangeLog
+++ b/gcc/ChangeLog
@@ -1,3 +1,8 @@
+2006-06-13  Fariborz Jahanian <fjahanian@apple.com>
+
+	* fold-const.c (fold_cond_expr_with_comparison): Check for 
+	Objective-C++ as language in deciding COND_EXPR transformation.
+
 2006-06-06  J"orn Rennecke <joern.rennecke@st.com>
 
 	PR target/28014:
diff --git a/gcc/fold-const.c b/gcc/fold-const.c
index 3e9ccbe4f66bc893699f63ecf9a260a5003c7647..5bf3ade27d88235242d462fb751154c0266debdb 100644
--- a/gcc/fold-const.c
+++ b/gcc/fold-const.c
@@ -4531,7 +4531,8 @@ fold_cond_expr_with_comparison (tree type, tree arg0, tree arg1, tree arg2)
       /* Avoid these transformations if the COND_EXPR may be used
 	 as an lvalue in the C++ front-end.  PR c++/19199.  */
       && (in_gimple_form
-	  || strcmp (lang_hooks.name, "GNU C++") != 0
+	  || (strcmp (lang_hooks.name, "GNU C++") != 0
+	      && strcmp (lang_hooks.name, "GNU Objective-C++") != 0)
 	  || ! maybe_lvalue_p (arg1)
 	  || ! maybe_lvalue_p (arg2)))
     {