diff --git a/mysql-test/r/user_var.result b/mysql-test/r/user_var.result
index 15a9fe2ecda956cbcb8fc3d87a4b7a9864a4d71d..80b5dccc198f2905f92925a1fd0401f14203fd24 100644
--- a/mysql-test/r/user_var.result
+++ b/mysql-test/r/user_var.result
@@ -336,16 +336,16 @@ select @a:=f1, count(f1) from t1 group by 1 asc;
 4	1
 select @a:=f2, count(f2) from t1 group by 1 desc;
 @a:=f2	count(f2)
-a	4
-b	1
-c	2
 d	1
+c	2
+b	1
+a	4
 select @a:=f3, count(f3) from t1 group by 1 desc;
 @a:=f3	count(f3)
-1.5	4
-2.5	1
-3.5	2
 4.5	1
+3.5	2
+2.5	1
+1.5	4
 select @a:=f4, count(f4) from t1 group by 1 desc;
 @a:=f4	count(f4)
 4.6	1
diff --git a/sql/item_func.cc b/sql/item_func.cc
index ca8b0af865d6d7eafb85eeaac25515390c9a6180..580d19fbd4ef062be3712dba282c242fcbc082b9 100644
--- a/sql/item_func.cc
+++ b/sql/item_func.cc
@@ -4208,7 +4208,7 @@ my_decimal *Item_func_set_user_var::val_decimal(my_decimal *val)
 }
 
 
-double Item_func_set_user_var::val_real_result()
+double Item_func_set_user_var::val_result()
 {
   DBUG_ASSERT(fixed == 1);
   check(TRUE);
@@ -4224,7 +4224,7 @@ longlong Item_func_set_user_var::val_int_result()
   return entry->val_int(&null_value);
 }
 
-String *Item_func_set_user_var::val_str_result(String *str)
+String *Item_func_set_user_var::str_result(String *str)
 {
   DBUG_ASSERT(fixed == 1);
   check(TRUE);
diff --git a/sql/item_func.h b/sql/item_func.h
index c8ea79b9747852306594201c50b0ddb52b6ae175..9a0201cb28b5b3fad944f42d08cde82e8e0802c0 100644
--- a/sql/item_func.h
+++ b/sql/item_func.h
@@ -1208,9 +1208,9 @@ class Item_func_set_user_var :public Item_func
   longlong val_int();
   String *val_str(String *str);
   my_decimal *val_decimal(my_decimal *);
-  double val_real_result();
+  double val_result();
   longlong val_int_result();
-  String *val_str_result(String *str);
+  String *str_result(String *str);
   my_decimal *val_decimal_result(my_decimal *);
   bool update_hash(void *ptr, uint length, enum Item_result type,
   		   CHARSET_INFO *cs, Derivation dv, bool unsigned_arg);