linux 2.6.16.38 w/ vs2.0.3-rc1
[linux-2.6.git] / include / asm-m68knommu / uaccess.h
index 62b29b1..05be951 100644 (file)
@@ -93,7 +93,7 @@ extern int __put_user_bad(void);
 #define get_user(x, ptr)                                       \
 ({                                                             \
     int __gu_err = 0;                                          \
-    typeof(x) __gu_val = 0;                                    \
+    typeof(*(ptr)) __gu_val = 0;                               \
     switch (sizeof(*(ptr))) {                                  \
     case 1:                                                    \
        __get_user_asm(__gu_err, __gu_val, ptr, b, "=d");       \
@@ -105,23 +105,23 @@ extern int __put_user_bad(void);
        __get_user_asm(__gu_err, __gu_val, ptr, l, "=r");       \
        break;                                                  \
     case 8:                                                    \
-       memcpy((void *) &__gu_val, ptr, sizeof (*(ptr)));       \
+       memcpy(&__gu_val, ptr, sizeof (*(ptr))); \
        break;                                                  \
     default:                                                   \
        __gu_val = 0;                                           \
        __gu_err = __get_user_bad();                            \
        break;                                                  \
     }                                                          \
-    (x) = (typeof(*(ptr))) __gu_val;                           \
+    (x) = __gu_val;                                            \
     __gu_err;                                                  \
 })
 #define __get_user(x, ptr) get_user(x, ptr)
 
 extern int __get_user_bad(void);
 
-#define __get_user_asm(err,x,ptr,bwl,reg)                      \
-       __asm__ ("move" #bwl " %1,%0"                           \
-                : "=d" (x)                                     \
+#define __get_user_asm(err,x,ptr,bwl,reg)      \
+       __asm__ ("move" #bwl " %1,%0"                   \
+                : "=d" (x)                                                     \
                 : "m" (*__ptr(ptr)))
 
 #define copy_from_user(to, from, n)            (memcpy(to, from, n), 0)