Index: c/src/exec/rtems/headers/status.h
===================================================================
--- c/src/exec/rtems/headers/status.h	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/headers/status.h	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -53,9 +53,10 @@
   RTEMS_NOT_IMPLEMENTED          = 24, /* directive not implemented */
   RTEMS_INTERNAL_ERROR           = 25, /* RTEMS inconsistency detected */
-  RTEMS_NO_MEMORY                = 26  /* could not get enough memory */
+  RTEMS_NO_MEMORY                = 26, /* could not get enough memory */
+  RTEMS_PROXY_BLOCKING           = 27  /* internal error only */
 } rtems_status_code;
 
 #define RTEMS_STATUS_CODES_FIRST RTEMS_SUCCESSFUL
-#define RTEMS_STATUS_CODES_LAST  RTEMS_NO_MEMORY
+#define RTEMS_STATUS_CODES_LAST  RTEMS_PROXY_BLOCKING
 
 extern rtems_status_code _Status_Object_name_errors_to_status[];
Index: c/src/exec/rtems/include/rtems/rtems/status.h
===================================================================
--- c/src/exec/rtems/include/rtems/rtems/status.h	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/include/rtems/rtems/status.h	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -53,9 +53,10 @@
   RTEMS_NOT_IMPLEMENTED          = 24, /* directive not implemented */
   RTEMS_INTERNAL_ERROR           = 25, /* RTEMS inconsistency detected */
-  RTEMS_NO_MEMORY                = 26  /* could not get enough memory */
+  RTEMS_NO_MEMORY                = 26, /* could not get enough memory */
+  RTEMS_PROXY_BLOCKING           = 27  /* internal error only */
 } rtems_status_code;
 
 #define RTEMS_STATUS_CODES_FIRST RTEMS_SUCCESSFUL
-#define RTEMS_STATUS_CODES_LAST  RTEMS_NO_MEMORY
+#define RTEMS_STATUS_CODES_LAST  RTEMS_PROXY_BLOCKING
 
 extern rtems_status_code _Status_Object_name_errors_to_status[];
Index: c/src/exec/rtems/src/eventmp.c
===================================================================
--- c/src/exec/rtems/src/eventmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/eventmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -59,5 +59,5 @@
       the_packet->event_in          = event_in;
 
-      return
+      return (rtems_status_code)
         _MPCI_Send_request_packet(
           rtems_get_node( event_id ),
Index: c/src/exec/rtems/src/intr.c
===================================================================
--- c/src/exec/rtems/src/intr.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/intr.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -56,5 +56,5 @@
     return RTEMS_INVALID_NUMBER;
 
-  if ( !_ISR_Is_valid_user_handler( new_isr_handler ) )
+  if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )
     return RTEMS_INVALID_ADDRESS;
 
Index: c/src/exec/rtems/src/msg.c
===================================================================
--- c/src/exec/rtems/src/msg.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/msg.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -679,5 +679,5 @@
       return RTEMS_TIMEOUT;
     case THREAD_STATUS_PROXY_BLOCKING:
-      return THREAD_STATUS_PROXY_BLOCKING;
+      return RTEMS_PROXY_BLOCKING;
   }
   _Internal_error_Occurred(         /* XXX */
Index: c/src/exec/rtems/src/msgmp.c
===================================================================
--- c/src/exec/rtems/src/msgmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/msgmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -141,7 +141,9 @@
       }
 
-      return _MPCI_Send_request_packet(rtems_get_node(message_queue_id),
-                                       &the_packet->Prefix,
-                                       STATES_WAITING_FOR_MESSAGE);
+      return (rtems_status_code) _MPCI_Send_request_packet(
+        rtems_get_node(message_queue_id),
+        &the_packet->Prefix,
+        STATES_WAITING_FOR_MESSAGE
+      );
       break;
 
@@ -164,7 +166,9 @@
       _Thread_Executing->Wait.return_argument_1 = size_p;
       
-      return _MPCI_Send_request_packet(rtems_get_node(message_queue_id),
-                                       &the_packet->Prefix,
-                                       STATES_WAITING_FOR_MESSAGE);
+      return (rtems_status_code) _MPCI_Send_request_packet(
+        rtems_get_node(message_queue_id),
+        &the_packet->Prefix,
+        STATES_WAITING_FOR_MESSAGE
+      );
       break;
 
Index: c/src/exec/rtems/src/region.c
===================================================================
--- c/src/exec/rtems/src/region.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/region.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -361,5 +361,5 @@
 
       _Thread_Enable_dispatch();
-      return( executing->Wait.return_code );
+      return (rtems_status_code) executing->Wait.return_code;
   }
 
@@ -465,5 +465,5 @@
            break;
 
-        the_segment = _Region_Allocate_segment(
+        the_segment = (void **) _Region_Allocate_segment(
            the_region, 
            the_thread->Wait.count
Index: c/src/exec/rtems/src/regionmp.c
===================================================================
--- c/src/exec/rtems/src/regionmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ c/src/exec/rtems/src/regionmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -106,5 +106,5 @@
       the_packet->option_set        = option_set;
 
-      return _MPCI_Send_request_packet(
+      return (rtems_status_code) _MPCI_Send_request_packet(
           rtems_get_node( region_id ),
           &the_packet->Prefix,
Index: cpukit/rtems/include/rtems/rtems/status.h
===================================================================
--- cpukit/rtems/include/rtems/rtems/status.h	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/include/rtems/rtems/status.h	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -53,9 +53,10 @@
   RTEMS_NOT_IMPLEMENTED          = 24, /* directive not implemented */
   RTEMS_INTERNAL_ERROR           = 25, /* RTEMS inconsistency detected */
-  RTEMS_NO_MEMORY                = 26  /* could not get enough memory */
+  RTEMS_NO_MEMORY                = 26, /* could not get enough memory */
+  RTEMS_PROXY_BLOCKING           = 27  /* internal error only */
 } rtems_status_code;
 
 #define RTEMS_STATUS_CODES_FIRST RTEMS_SUCCESSFUL
-#define RTEMS_STATUS_CODES_LAST  RTEMS_NO_MEMORY
+#define RTEMS_STATUS_CODES_LAST  RTEMS_PROXY_BLOCKING
 
 extern rtems_status_code _Status_Object_name_errors_to_status[];
Index: cpukit/rtems/src/eventmp.c
===================================================================
--- cpukit/rtems/src/eventmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/eventmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -59,5 +59,5 @@
       the_packet->event_in          = event_in;
 
-      return
+      return (rtems_status_code)
         _MPCI_Send_request_packet(
           rtems_get_node( event_id ),
Index: cpukit/rtems/src/intr.c
===================================================================
--- cpukit/rtems/src/intr.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/intr.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -56,5 +56,5 @@
     return RTEMS_INVALID_NUMBER;
 
-  if ( !_ISR_Is_valid_user_handler( new_isr_handler ) )
+  if ( !_ISR_Is_valid_user_handler( (void *) new_isr_handler ) )
     return RTEMS_INVALID_ADDRESS;
 
Index: cpukit/rtems/src/msg.c
===================================================================
--- cpukit/rtems/src/msg.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/msg.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -679,5 +679,5 @@
       return RTEMS_TIMEOUT;
     case THREAD_STATUS_PROXY_BLOCKING:
-      return THREAD_STATUS_PROXY_BLOCKING;
+      return RTEMS_PROXY_BLOCKING;
   }
   _Internal_error_Occurred(         /* XXX */
Index: cpukit/rtems/src/msgmp.c
===================================================================
--- cpukit/rtems/src/msgmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/msgmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -141,7 +141,9 @@
       }
 
-      return _MPCI_Send_request_packet(rtems_get_node(message_queue_id),
-                                       &the_packet->Prefix,
-                                       STATES_WAITING_FOR_MESSAGE);
+      return (rtems_status_code) _MPCI_Send_request_packet(
+        rtems_get_node(message_queue_id),
+        &the_packet->Prefix,
+        STATES_WAITING_FOR_MESSAGE
+      );
       break;
 
@@ -164,7 +166,9 @@
       _Thread_Executing->Wait.return_argument_1 = size_p;
       
-      return _MPCI_Send_request_packet(rtems_get_node(message_queue_id),
-                                       &the_packet->Prefix,
-                                       STATES_WAITING_FOR_MESSAGE);
+      return (rtems_status_code) _MPCI_Send_request_packet(
+        rtems_get_node(message_queue_id),
+        &the_packet->Prefix,
+        STATES_WAITING_FOR_MESSAGE
+      );
       break;
 
Index: cpukit/rtems/src/region.c
===================================================================
--- cpukit/rtems/src/region.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/region.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -361,5 +361,5 @@
 
       _Thread_Enable_dispatch();
-      return( executing->Wait.return_code );
+      return (rtems_status_code) executing->Wait.return_code;
   }
 
@@ -465,5 +465,5 @@
            break;
 
-        the_segment = _Region_Allocate_segment(
+        the_segment = (void **) _Region_Allocate_segment(
            the_region, 
            the_thread->Wait.count
Index: cpukit/rtems/src/regionmp.c
===================================================================
--- cpukit/rtems/src/regionmp.c	(revision e1a06d1baea5f994b64cf1a9021ce1e40c04c7ef)
+++ cpukit/rtems/src/regionmp.c	(revision ffe316d5267c5e7ce99685be45efc9308b041dc6)
@@ -106,5 +106,5 @@
       the_packet->option_set        = option_set;
 
-      return _MPCI_Send_request_packet(
+      return (rtems_status_code) _MPCI_Send_request_packet(
           rtems_get_node( region_id ),
           &the_packet->Prefix,
