/*
 * This file was generated by orbit-idl - DO NOT EDIT!
 */

#include <string.h>
#include "interface_repository.h"

CORBA_DefinitionKind 
CORBA_IRObject__get_def_kind(CORBA_IRObject _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_DefinitionKind _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_IRObject__classid) {
      _ORBIT_retval = ((POA_CORBA_IRObject__epv *) _obj->vepv[CORBA_IRObject__classid])->_get_def_kind(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_get_def_kind"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_DefinitionKind *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_IRObject_destroy(CORBA_IRObject _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_IRObject__classid) {
      ((POA_CORBA_IRObject__epv *) _obj->vepv[CORBA_IRObject__classid])->destroy(_obj->servant, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[8];
      } _ORBIT_operation_name_data = {
	 8, "destroy"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 12};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_RepositoryId 
CORBA_Contained__get_id(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_RepositoryId _ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_2;
   CORBA_unsigned_long _ORBIT_tmpvar_3;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_id(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[8];
      } _ORBIT_operation_name_data = {
	 8, "_get_id"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 12};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_Contained__set_id(CORBA_Contained _obj, const CORBA_RepositoryId value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_set_id(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[8];
      } _ORBIT_operation_name_data = {
	 8, "_set_id"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 12};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(value) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (value), sizeof(value[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_Identifier 
CORBA_Contained__get_name(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Identifier _ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_2;
   CORBA_unsigned_long _ORBIT_tmpvar_3;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_name(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_name"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_Contained__set_name(CORBA_Contained _obj, const CORBA_Identifier value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_set_name(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_set_name"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(value) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (value), sizeof(value[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_VersionSpec 
CORBA_Contained__get_version(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_VersionSpec _ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_2;
   CORBA_unsigned_long _ORBIT_tmpvar_3;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_version(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_get_version"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_Contained__set_version(CORBA_Contained _obj, const CORBA_VersionSpec value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_set_version(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_set_version"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(value) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (value), sizeof(value[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_Container 
CORBA_Contained__get_defined_in(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Container _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_defined_in(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "_get_defined_in"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ScopedName 
CORBA_Contained__get_absolute_name(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ScopedName _ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_2;
   CORBA_unsigned_long _ORBIT_tmpvar_3;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_absolute_name(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[19];
      } _ORBIT_operation_name_data = {
	 19, "_get_absolute_name"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 23};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_3))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_3 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 _ORBIT_retval = CORBA_string_alloc(_ORBIT_tmpvar_3);
	 memcpy(_ORBIT_retval, _ORBIT_curptr, sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
	 _ORBIT_curptr += sizeof(_ORBIT_retval[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_Repository 
CORBA_Contained__get_containing_repository(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Repository _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->_get_containing_repository(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[27];
      } _ORBIT_operation_name_data = {
	 27, "_get_containing_repository"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 31};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_Contained_Description *
CORBA_Contained_describe(CORBA_Contained _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Contained_Description *_ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      _ORBIT_retval = ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->describe(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[9];
      } _ORBIT_operation_name_data = {
	 9, "describe"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 13};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_Contained_Description__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval).kind))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval).value), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval).kind = *((CORBA_DefinitionKind *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval).value), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_Contained_move(CORBA_Contained _obj, const CORBA_Container new_container, const CORBA_Identifier new_name, const CORBA_VersionSpec new_version, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_Contained__classid) {
      ((POA_CORBA_Contained__epv *) _obj->vepv[CORBA_Contained__classid])->move(_obj->servant, new_container, new_name, new_version, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[5];
      } _ORBIT_operation_name_data = {
	 5, "move"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 9};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, new_container);
      _ORBIT_tmpvar_1 = strlen(new_name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (new_name), sizeof(new_name[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(new_version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (new_version), sizeof(new_version[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_Contained 
CORBA_Container_lookup(CORBA_Container _obj, const CORBA_ScopedName search_name, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Contained _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->lookup(_obj->servant, search_name, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[7];
      } _ORBIT_operation_name_data = {
	 7, "lookup"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 11};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(search_name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (search_name), sizeof(search_name[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ContainedSeq *
CORBA_Container_contents(CORBA_Container _obj, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ContainedSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_1;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->contents(_obj->servant, limit_type, exclude_inherited, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[9];
      } _ORBIT_operation_name_data = {
	 9, "contents"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 13};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(limit_type), sizeof(limit_type));
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(exclude_inherited), sizeof(exclude_inherited));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_ContainedSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Contained_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Contained_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ContainedSeq *
CORBA_Container_lookup_name(CORBA_Container _obj, const CORBA_Identifier search_name, const CORBA_long levels_to_search, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ContainedSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->lookup_name(_obj->servant, search_name, levels_to_search, limit_type, exclude_inherited, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "lookup_name"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(search_name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (search_name), sizeof(search_name[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(levels_to_search), sizeof(levels_to_search));
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(limit_type), sizeof(limit_type));
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(exclude_inherited), sizeof(exclude_inherited));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_ContainedSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Contained_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Contained_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_Container_DescriptionSeq *
CORBA_Container_describe_contents(CORBA_Container _obj, const CORBA_DefinitionKind limit_type, const CORBA_boolean exclude_inherited, const CORBA_long max_returned_objs, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Container_DescriptionSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_1;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->describe_contents(_obj->servant, limit_type, exclude_inherited, max_returned_objs, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[18];
      } _ORBIT_operation_name_data = {
	 18, "describe_contents"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 22};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(limit_type), sizeof(limit_type));
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(exclude_inherited), sizeof(exclude_inherited));
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(max_returned_objs), sizeof(max_returned_objs));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_Container_DescriptionSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Container_Description_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].contained_object = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].kind))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].value), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Container_Description_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].contained_object = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].kind = *((CORBA_DefinitionKind *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1].value), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ModuleDef 
CORBA_Container_create_module(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ModuleDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_module(_obj->servant, id, name, version, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "create_module"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ConstantDef 
CORBA_Container_create_constant(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType type, const CORBA_any * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ConstantDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_constant(_obj->servant, id, name, version, type, value, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "create_constant"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      ORBit_marshal_object(_ORBIT_send_buffer, type);
      ORBit_marshal_any(_ORBIT_send_buffer, &((*value)));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_StructDef 
CORBA_Container_create_struct(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_StructMemberSeq * members, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_StructDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_struct(_obj->servant, id, name, version, members, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "create_struct"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*members)._length));
	 memcpy(_ORBIT_t, &((*members)._length), sizeof((*members)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*members)._length; _ORBIT_tmpvar_6++) {
	 _ORBIT_tmpvar_8 = strlen((*members)._buffer[_ORBIT_tmpvar_6].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_8));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_8), sizeof(_ORBIT_tmpvar_8));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_8));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    memcpy(_ORBIT_t, ((*members)._buffer[_ORBIT_tmpvar_6].name), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	 }
	 ORBit_encode_CORBA_TypeCode((*members)._buffer[_ORBIT_tmpvar_6].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*members)._buffer[_ORBIT_tmpvar_6].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_UnionDef 
CORBA_Container_create_union(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType discriminator_type, const CORBA_UnionMemberSeq * members, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_UnionDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_union(_obj->servant, id, name, version, discriminator_type, members, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "create_union"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      ORBit_marshal_object(_ORBIT_send_buffer, discriminator_type);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*members)._length));
	 memcpy(_ORBIT_t, &((*members)._length), sizeof((*members)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*members)._length; _ORBIT_tmpvar_6++) {
	 _ORBIT_tmpvar_8 = strlen((*members)._buffer[_ORBIT_tmpvar_6].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_8));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_8), sizeof(_ORBIT_tmpvar_8));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_8));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    memcpy(_ORBIT_t, ((*members)._buffer[_ORBIT_tmpvar_6].name), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	 }
	 ORBit_marshal_any(_ORBIT_send_buffer, &((*members)._buffer[_ORBIT_tmpvar_6].label));
	 ORBit_encode_CORBA_TypeCode((*members)._buffer[_ORBIT_tmpvar_6].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*members)._buffer[_ORBIT_tmpvar_6].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_EnumDef 
CORBA_Container_create_enum(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_EnumMemberSeq * members, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_EnumDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_enum(_obj->servant, id, name, version, members, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "create_enum"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*members)._length));
	 memcpy(_ORBIT_t, &((*members)._length), sizeof((*members)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*members)._length; _ORBIT_tmpvar_6++) {
	 _ORBIT_tmpvar_8 = strlen((*members)._buffer[_ORBIT_tmpvar_6]) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_8));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_8), sizeof(_ORBIT_tmpvar_8));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_8));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*members)._buffer[_ORBIT_tmpvar_6][_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    memcpy(_ORBIT_t, ((*members)._buffer[_ORBIT_tmpvar_6]), sizeof((*members)._buffer[_ORBIT_tmpvar_6][_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._buffer[_ORBIT_tmpvar_6][_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	 }
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_AliasDef 
CORBA_Container_create_alias(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType original_type, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_AliasDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_alias(_obj->servant, id, name, version, original_type, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "create_alias"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      ORBit_marshal_object(_ORBIT_send_buffer, original_type);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_InterfaceDef 
CORBA_Container_create_interface(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_InterfaceDefSeq * base_interfaces, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_InterfaceDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_interface(_obj->servant, id, name, version, base_interfaces, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[17];
      } _ORBIT_operation_name_data = {
	 17, "create_interface"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 21};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*base_interfaces)._length));
	 memcpy(_ORBIT_t, &((*base_interfaces)._length), sizeof((*base_interfaces)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*base_interfaces)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*base_interfaces)._length; _ORBIT_tmpvar_6++) {
	 ORBit_marshal_object(_ORBIT_send_buffer, (*base_interfaces)._buffer[_ORBIT_tmpvar_6]);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ExceptionDef 
CORBA_Container_create_exception(CORBA_Container _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_StructMemberSeq * members, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ExceptionDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Container__classid) {
      _ORBIT_retval = ((POA_CORBA_Container__epv *) _obj->vepv[CORBA_Container__classid])->create_exception(_obj->servant, id, name, version, members, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[17];
      } _ORBIT_operation_name_data = {
	 17, "create_exception"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 21};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*members)._length));
	 memcpy(_ORBIT_t, &((*members)._length), sizeof((*members)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*members)._length; _ORBIT_tmpvar_6++) {
	 _ORBIT_tmpvar_8 = strlen((*members)._buffer[_ORBIT_tmpvar_6].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_8));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_8), sizeof(_ORBIT_tmpvar_8));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_8));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    memcpy(_ORBIT_t, ((*members)._buffer[_ORBIT_tmpvar_6].name), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*members)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	 }
	 ORBit_encode_CORBA_TypeCode((*members)._buffer[_ORBIT_tmpvar_6].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*members)._buffer[_ORBIT_tmpvar_6].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_TypeCode 
CORBA_IDLType__get_type(CORBA_IDLType _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_IDLType__classid) {
      _ORBIT_retval = ((POA_CORBA_IDLType__epv *) _obj->vepv[CORBA_IDLType__classid])->_get_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_Contained 
CORBA_Repository_lookup_id(CORBA_Repository _obj, const CORBA_RepositoryId search_id, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_Contained _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->lookup_id(_obj->servant, search_id, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "lookup_id"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(search_id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (search_id), sizeof(search_id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_PrimitiveDef 
CORBA_Repository_get_primitive(CORBA_Repository _obj, const CORBA_PrimitiveKind kind, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_PrimitiveDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->get_primitive(_obj->servant, kind, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "get_primitive"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(kind), sizeof(kind));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_StringDef 
CORBA_Repository_create_string(CORBA_Repository _obj, const CORBA_unsigned_long bound, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_StringDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->create_string(_obj->servant, bound, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "create_string"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(bound), sizeof(bound));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_WstringDef 
CORBA_Repository_create_wstring(CORBA_Repository _obj, const CORBA_unsigned_long bound, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_WstringDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->create_wstring(_obj->servant, bound, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[15];
      } _ORBIT_operation_name_data = {
	 15, "create_wstring"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 19};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(bound), sizeof(bound));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_SequenceDef 
CORBA_Repository_create_sequence(CORBA_Repository _obj, const CORBA_unsigned_long bound, const CORBA_IDLType element_type, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_SequenceDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->create_sequence(_obj->servant, bound, element_type, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "create_sequence"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(bound), sizeof(bound));
      ORBit_marshal_object(_ORBIT_send_buffer, element_type);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_ArrayDef 
CORBA_Repository_create_array(CORBA_Repository _obj, const CORBA_unsigned_long length, const CORBA_IDLType element_type, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ArrayDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->create_array(_obj->servant, length, element_type, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "create_array"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(length), sizeof(length));
      ORBit_marshal_object(_ORBIT_send_buffer, element_type);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_FixedDef 
CORBA_Repository_create_fixed(CORBA_Repository _obj, const CORBA_unsigned_short digits, const CORBA_short scale, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_FixedDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_Repository__classid) {
      _ORBIT_retval = ((POA_CORBA_Repository__epv *) _obj->vepv[CORBA_Repository__classid])->create_fixed(_obj->servant, digits, scale, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "create_fixed"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 2);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(digits), sizeof(digits));
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(scale), sizeof(scale));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_TypeCode 
CORBA_ConstantDef__get_type(CORBA_ConstantDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ConstantDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ConstantDef__epv *) _obj->vepv[CORBA_ConstantDef__classid])->_get_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_ConstantDef__get_type_def(CORBA_ConstantDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ConstantDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ConstantDef__epv *) _obj->vepv[CORBA_ConstantDef__classid])->_get_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_get_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_ConstantDef__set_type_def(CORBA_ConstantDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_ConstantDef__classid) {
      ((POA_CORBA_ConstantDef__epv *) _obj->vepv[CORBA_ConstantDef__classid])->_set_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_set_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_any *
CORBA_ConstantDef__get_value(CORBA_ConstantDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_any *_ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ConstantDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ConstantDef__epv *) _obj->vepv[CORBA_ConstantDef__classid])->_get_value(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_get_value"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_any__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_ConstantDef__set_value(CORBA_ConstantDef _obj, const CORBA_any * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_ConstantDef__classid) {
      ((POA_CORBA_ConstantDef__epv *) _obj->vepv[CORBA_ConstantDef__classid])->_set_value(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_set_value"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_any(_ORBIT_send_buffer, &((*value)));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_StructMemberSeq *
CORBA_StructDef__get_members(CORBA_StructDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_StructMemberSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_StructDef__classid) {
      _ORBIT_retval = ((POA_CORBA_StructDef__epv *) _obj->vepv[CORBA_StructDef__classid])->_get_members(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_get_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_StructMemberSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_StructMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_StructMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_StructDef__set_members(CORBA_StructDef _obj, const CORBA_StructMemberSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_StructDef__classid) {
      ((POA_CORBA_StructDef__epv *) _obj->vepv[CORBA_StructDef__classid])->_set_members(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_set_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0].name), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
	 ORBit_encode_CORBA_TypeCode((*value)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_UnionDef__get_discriminator_type(CORBA_UnionDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_UnionDef__classid) {
      _ORBIT_retval = ((POA_CORBA_UnionDef__epv *) _obj->vepv[CORBA_UnionDef__classid])->_get_discriminator_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[24];
      } _ORBIT_operation_name_data = {
	 24, "_get_discriminator_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 28};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_UnionDef__get_discriminator_type_def(CORBA_UnionDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_UnionDef__classid) {
      _ORBIT_retval = ((POA_CORBA_UnionDef__epv *) _obj->vepv[CORBA_UnionDef__classid])->_get_discriminator_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[28];
      } _ORBIT_operation_name_data = {
	 28, "_get_discriminator_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 32};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_UnionDef__set_discriminator_type_def(CORBA_UnionDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_UnionDef__classid) {
      ((POA_CORBA_UnionDef__epv *) _obj->vepv[CORBA_UnionDef__classid])->_set_discriminator_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[28];
      } _ORBIT_operation_name_data = {
	 28, "_set_discriminator_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 32};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_UnionMemberSeq *
CORBA_UnionDef__get_members(CORBA_UnionDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_UnionMemberSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_UnionDef__classid) {
      _ORBIT_retval = ((POA_CORBA_UnionDef__epv *) _obj->vepv[CORBA_UnionDef__classid])->_get_members(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_get_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_UnionMemberSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].label), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_UnionMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_demarshal_any(_ORBIT_recv_buffer, &((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].label), CORBA_TRUE, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_UnionDef__set_members(CORBA_UnionDef _obj, const CORBA_UnionMemberSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_UnionDef__classid) {
      ((POA_CORBA_UnionDef__epv *) _obj->vepv[CORBA_UnionDef__classid])->_set_members(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_set_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0].name), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
	 ORBit_marshal_any(_ORBIT_send_buffer, &((*value)._buffer[_ORBIT_tmpvar_0].label));
	 ORBit_encode_CORBA_TypeCode((*value)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_EnumMemberSeq *
CORBA_EnumDef__get_members(CORBA_EnumDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_EnumMemberSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_EnumDef__classid) {
      _ORBIT_retval = ((POA_CORBA_EnumDef__epv *) _obj->vepv[CORBA_EnumDef__classid])->_get_members(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_get_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_EnumMemberSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Identifier_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3], _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_Identifier_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3], _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_EnumDef__set_members(CORBA_EnumDef _obj, const CORBA_EnumMemberSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_EnumDef__classid) {
      ((POA_CORBA_EnumDef__epv *) _obj->vepv[CORBA_EnumDef__classid])->_set_members(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_set_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0]) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0]), sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_IDLType 
CORBA_AliasDef__get_original_type_def(CORBA_AliasDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_AliasDef__classid) {
      _ORBIT_retval = ((POA_CORBA_AliasDef__epv *) _obj->vepv[CORBA_AliasDef__classid])->_get_original_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[23];
      } _ORBIT_operation_name_data = {
	 23, "_get_original_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 27};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_AliasDef__set_original_type_def(CORBA_AliasDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_AliasDef__classid) {
      ((POA_CORBA_AliasDef__epv *) _obj->vepv[CORBA_AliasDef__classid])->_set_original_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[23];
      } _ORBIT_operation_name_data = {
	 23, "_set_original_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 27};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_PrimitiveKind 
CORBA_PrimitiveDef__get_kind(CORBA_PrimitiveDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_PrimitiveKind _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_PrimitiveDef__classid) {
      _ORBIT_retval = ((POA_CORBA_PrimitiveDef__epv *) _obj->vepv[CORBA_PrimitiveDef__classid])->_get_kind(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_kind"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_PrimitiveKind *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_unsigned_long 
CORBA_StringDef__get_bound(CORBA_StringDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_unsigned_long _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_StringDef__classid) {
      _ORBIT_retval = ((POA_CORBA_StringDef__epv *) _obj->vepv[CORBA_StringDef__classid])->_get_bound(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_get_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_StringDef__set_bound(CORBA_StringDef _obj, const CORBA_unsigned_long value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_StringDef__classid) {
      ((POA_CORBA_StringDef__epv *) _obj->vepv[CORBA_StringDef__classid])->_set_bound(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_set_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_unsigned_long 
CORBA_WstringDef__get_bound(CORBA_WstringDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_unsigned_long _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_WstringDef__classid) {
      _ORBIT_retval = ((POA_CORBA_WstringDef__epv *) _obj->vepv[CORBA_WstringDef__classid])->_get_bound(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_get_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_WstringDef__set_bound(CORBA_WstringDef _obj, const CORBA_unsigned_long value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_WstringDef__classid) {
      ((POA_CORBA_WstringDef__epv *) _obj->vepv[CORBA_WstringDef__classid])->_set_bound(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_set_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_unsigned_short 
CORBA_FixedDef__get_digits(CORBA_FixedDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_unsigned_short _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_FixedDef__classid) {
      _ORBIT_retval = ((POA_CORBA_FixedDef__epv *) _obj->vepv[CORBA_FixedDef__classid])->_get_digits(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_get_digits"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 (*((guint16 *) & (_ORBIT_retval))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 _ORBIT_retval = *((CORBA_unsigned_short *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_FixedDef__set_digits(CORBA_FixedDef _obj, const CORBA_unsigned_short value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_FixedDef__classid) {
      ((POA_CORBA_FixedDef__epv *) _obj->vepv[CORBA_FixedDef__classid])->_set_digits(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_set_digits"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 2);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_short 
CORBA_FixedDef__get_scale(CORBA_FixedDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_short _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_FixedDef__classid) {
      _ORBIT_retval = ((POA_CORBA_FixedDef__epv *) _obj->vepv[CORBA_FixedDef__classid])->_get_scale(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_get_scale"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 (*((guint16 *) & (_ORBIT_retval))) = GUINT16_SWAP_LE_BE(*((guint16 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 2);
	 _ORBIT_retval = *((CORBA_short *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_FixedDef__set_scale(CORBA_FixedDef _obj, const CORBA_short value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_FixedDef__classid) {
      ((POA_CORBA_FixedDef__epv *) _obj->vepv[CORBA_FixedDef__classid])->_set_scale(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_set_scale"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 2);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_unsigned_long 
CORBA_SequenceDef__get_bound(CORBA_SequenceDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_unsigned_long _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_SequenceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_SequenceDef__epv *) _obj->vepv[CORBA_SequenceDef__classid])->_get_bound(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_get_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_SequenceDef__set_bound(CORBA_SequenceDef _obj, const CORBA_unsigned_long value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_SequenceDef__classid) {
      ((POA_CORBA_SequenceDef__epv *) _obj->vepv[CORBA_SequenceDef__classid])->_set_bound(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[11];
      } _ORBIT_operation_name_data = {
	 11, "_set_bound"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 15};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_SequenceDef__get_element_type(CORBA_SequenceDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_SequenceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_SequenceDef__epv *) _obj->vepv[CORBA_SequenceDef__classid])->_get_element_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[18];
      } _ORBIT_operation_name_data = {
	 18, "_get_element_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 22};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_SequenceDef__get_element_type_def(CORBA_SequenceDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_SequenceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_SequenceDef__epv *) _obj->vepv[CORBA_SequenceDef__classid])->_get_element_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[22];
      } _ORBIT_operation_name_data = {
	 22, "_get_element_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 26};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_SequenceDef__set_element_type_def(CORBA_SequenceDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_SequenceDef__classid) {
      ((POA_CORBA_SequenceDef__epv *) _obj->vepv[CORBA_SequenceDef__classid])->_set_element_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[22];
      } _ORBIT_operation_name_data = {
	 22, "_set_element_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 26};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_unsigned_long 
CORBA_ArrayDef__get_length(CORBA_ArrayDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_unsigned_long _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ArrayDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ArrayDef__epv *) _obj->vepv[CORBA_ArrayDef__classid])->_get_length(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_get_length"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_unsigned_long *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_ArrayDef__set_length(CORBA_ArrayDef _obj, const CORBA_unsigned_long value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_ArrayDef__classid) {
      ((POA_CORBA_ArrayDef__epv *) _obj->vepv[CORBA_ArrayDef__classid])->_set_length(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_set_length"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_ArrayDef__get_element_type(CORBA_ArrayDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ArrayDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ArrayDef__epv *) _obj->vepv[CORBA_ArrayDef__classid])->_get_element_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[18];
      } _ORBIT_operation_name_data = {
	 18, "_get_element_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 22};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_ArrayDef__get_element_type_def(CORBA_ArrayDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ArrayDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ArrayDef__epv *) _obj->vepv[CORBA_ArrayDef__classid])->_get_element_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[22];
      } _ORBIT_operation_name_data = {
	 22, "_get_element_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 26};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_ArrayDef__set_element_type_def(CORBA_ArrayDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_ArrayDef__classid) {
      ((POA_CORBA_ArrayDef__epv *) _obj->vepv[CORBA_ArrayDef__classid])->_set_element_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[22];
      } _ORBIT_operation_name_data = {
	 22, "_set_element_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 26};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_ExceptionDef__get_type(CORBA_ExceptionDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_ExceptionDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ExceptionDef__epv *) _obj->vepv[CORBA_ExceptionDef__classid])->_get_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_StructMemberSeq *
CORBA_ExceptionDef__get_members(CORBA_ExceptionDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_StructMemberSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_ExceptionDef__classid) {
      _ORBIT_retval = ((POA_CORBA_ExceptionDef__epv *) _obj->vepv[CORBA_ExceptionDef__classid])->_get_members(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_get_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_StructMemberSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_StructMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_StructMember_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_ExceptionDef__set_members(CORBA_ExceptionDef _obj, const CORBA_StructMemberSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_ExceptionDef__classid) {
      ((POA_CORBA_ExceptionDef__epv *) _obj->vepv[CORBA_ExceptionDef__classid])->_set_members(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[13];
      } _ORBIT_operation_name_data = {
	 13, "_set_members"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 17};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0].name) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0].name), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
	 ORBit_encode_CORBA_TypeCode((*value)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0].type_def);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_AttributeDef__get_type(CORBA_AttributeDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_AttributeDef__classid) {
      _ORBIT_retval = ((POA_CORBA_AttributeDef__epv *) _obj->vepv[CORBA_AttributeDef__classid])->_get_type(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_type"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_AttributeDef__get_type_def(CORBA_AttributeDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_AttributeDef__classid) {
      _ORBIT_retval = ((POA_CORBA_AttributeDef__epv *) _obj->vepv[CORBA_AttributeDef__classid])->_get_type_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_get_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_AttributeDef__set_type_def(CORBA_AttributeDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_AttributeDef__classid) {
      ((POA_CORBA_AttributeDef__epv *) _obj->vepv[CORBA_AttributeDef__classid])->_set_type_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_set_type_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_AttributeMode 
CORBA_AttributeDef__get_mode(CORBA_AttributeDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_AttributeMode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_AttributeDef__classid) {
      _ORBIT_retval = ((POA_CORBA_AttributeDef__epv *) _obj->vepv[CORBA_AttributeDef__classid])->_get_mode(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_mode"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_AttributeMode *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_AttributeDef__set_mode(CORBA_AttributeDef _obj, const CORBA_AttributeMode value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_AttributeDef__classid) {
      ((POA_CORBA_AttributeDef__epv *) _obj->vepv[CORBA_AttributeDef__classid])->_set_mode(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_set_mode"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_TypeCode 
CORBA_OperationDef__get_result(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_TypeCode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_result(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_get_result"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&_ORBIT_retval, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_IDLType 
CORBA_OperationDef__get_result_def(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_IDLType _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_result_def(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "_get_result_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_OperationDef__set_result_def(CORBA_OperationDef _obj, const CORBA_IDLType value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_set_result_def(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "_set_result_def"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      ORBit_marshal_object(_ORBIT_send_buffer, value);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_ParDescriptionSeq *
CORBA_OperationDef__get_params(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ParDescriptionSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_params(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_get_params"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_ParDescriptionSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & ((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name, _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].name[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3].mode = *((CORBA_ParameterMode *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_OperationDef__set_params(CORBA_OperationDef _obj, const CORBA_ParDescriptionSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_set_params(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[12];
      } _ORBIT_operation_name_data = {
	 12, "_set_params"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 16};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0].name) + 1;
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0].name), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0].name[_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
	 ORBit_encode_CORBA_TypeCode((*value)._buffer[_ORBIT_tmpvar_0].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0].type_def);
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0].mode));
	    memcpy(_ORBIT_t, &((*value)._buffer[_ORBIT_tmpvar_0].mode), sizeof((*value)._buffer[_ORBIT_tmpvar_0].mode));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0].mode));
	 }
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_OperationMode 
CORBA_OperationDef__get_mode(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_OperationMode _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_mode(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_get_mode"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_retval))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_retval = *((CORBA_OperationMode *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_OperationDef__set_mode(CORBA_OperationDef _obj, const CORBA_OperationMode value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_set_mode(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[10];
      } _ORBIT_operation_name_data = {
	 10, "_set_mode"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 14};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(value), sizeof(value));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_ContextIdSeq *
CORBA_OperationDef__get_contexts(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ContextIdSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_3;
   register CORBA_unsigned_long _ORBIT_tmpvar_4;
   CORBA_unsigned_long _ORBIT_tmpvar_5;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_contexts(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_get_contexts"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_ContextIdSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ContextIdentifier_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_5))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3], _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ContextIdentifier_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_3 = 0; _ORBIT_tmpvar_3 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_3++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_5 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3] = CORBA_string_alloc(_ORBIT_tmpvar_5);
	    memcpy((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3], _ORBIT_curptr, sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval)._buffer[_ORBIT_tmpvar_3][_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_OperationDef__set_contexts(CORBA_OperationDef _obj, const CORBA_ContextIdSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_set_contexts(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[14];
      } _ORBIT_operation_name_data = {
	 14, "_set_contexts"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 18};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      register CORBA_unsigned_long _ORBIT_tmpvar_1;
      CORBA_unsigned_long _ORBIT_tmpvar_2;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 _ORBIT_tmpvar_2 = strlen((*value)._buffer[_ORBIT_tmpvar_0]) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_2));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_2), sizeof(_ORBIT_tmpvar_2));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_2));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    memcpy(_ORBIT_t, ((*value)._buffer[_ORBIT_tmpvar_0]), sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._buffer[_ORBIT_tmpvar_0][_ORBIT_tmpvar_1]) * _ORBIT_tmpvar_2);
	 }
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_ExceptionDefSeq *
CORBA_OperationDef__get_exceptions(CORBA_OperationDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_ExceptionDefSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_1;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      _ORBIT_retval = ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_get_exceptions(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "_get_exceptions"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_ExceptionDefSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_ExceptionDef_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_OperationDef__set_exceptions(CORBA_OperationDef _obj, const CORBA_ExceptionDefSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_OperationDef__classid) {
      ((POA_CORBA_OperationDef__epv *) _obj->vepv[CORBA_OperationDef__classid])->_set_exceptions(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[16];
      } _ORBIT_operation_name_data = {
	 16, "_set_exceptions"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 20};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0]);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_InterfaceDefSeq *
CORBA_InterfaceDef__get_base_interfaces(CORBA_InterfaceDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_InterfaceDefSeq *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_1;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->_get_base_interfaces(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[21];
      } _ORBIT_operation_name_data = {
	 21, "_get_base_interfaces"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 25};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_InterfaceDefSeq__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval)._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval)._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval)._buffer = CORBA_sequence_CORBA_InterfaceDef_allocbuf((*_ORBIT_retval)._length);
	 (*_ORBIT_retval)._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_1 = 0; _ORBIT_tmpvar_1 < (*_ORBIT_retval)._length; _ORBIT_tmpvar_1++) {
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    (*_ORBIT_retval)._buffer[_ORBIT_tmpvar_1] = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	 }

      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
void 
CORBA_InterfaceDef__set_base_interfaces(CORBA_InterfaceDef _obj, const CORBA_InterfaceDefSeq * value, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->_set_base_interfaces(_obj->servant, value, ev);
      return;
   }
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[21];
      } _ORBIT_operation_name_data = {
	 21, "_set_base_interfaces"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 25};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*value)._length));
	 memcpy(_ORBIT_t, &((*value)._length), sizeof((*value)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*value)._length));
      }
      for (_ORBIT_tmpvar_0 = 0; _ORBIT_tmpvar_0 < (*value)._length; _ORBIT_tmpvar_0++) {
	 ORBit_marshal_object(_ORBIT_send_buffer, (*value)._buffer[_ORBIT_tmpvar_0]);
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
      } else {
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return;
      }
   }
}
CORBA_boolean 
CORBA_InterfaceDef_is_a(CORBA_InterfaceDef _obj, const CORBA_RepositoryId interface_id, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_boolean _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->is_a(_obj->servant, interface_id, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[5];
      } _ORBIT_operation_name_data = {
	 5, "is_a"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 9};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(interface_id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (interface_id), sizeof(interface_id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_retval = *((CORBA_boolean *) _ORBIT_curptr);
      } else {
	 _ORBIT_retval = *((CORBA_boolean *) _ORBIT_curptr);
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_InterfaceDef_FullInterfaceDescription *
CORBA_InterfaceDef_describe_interface(CORBA_InterfaceDef _obj, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_InterfaceDef_FullInterfaceDescription *_ORBIT_retval;
   register CORBA_unsigned_long _ORBIT_tmpvar_44;
   CORBA_unsigned_long _ORBIT_tmpvar_45;
   register CORBA_unsigned_long _ORBIT_tmpvar_46;
   CORBA_unsigned_long _ORBIT_tmpvar_47;
   register CORBA_unsigned_long _ORBIT_tmpvar_48;
   CORBA_unsigned_long _ORBIT_tmpvar_49;
   register CORBA_unsigned_long _ORBIT_tmpvar_50;
   CORBA_unsigned_long _ORBIT_tmpvar_51;
   register CORBA_unsigned_long _ORBIT_tmpvar_52;
   register CORBA_unsigned_long _ORBIT_tmpvar_53;
   CORBA_unsigned_long _ORBIT_tmpvar_54;
   register CORBA_unsigned_long _ORBIT_tmpvar_55;
   CORBA_unsigned_long _ORBIT_tmpvar_56;
   register CORBA_unsigned_long _ORBIT_tmpvar_57;
   CORBA_unsigned_long _ORBIT_tmpvar_58;
   register CORBA_unsigned_long _ORBIT_tmpvar_59;
   CORBA_unsigned_long _ORBIT_tmpvar_60;
   register CORBA_unsigned_long _ORBIT_tmpvar_61;
   register CORBA_unsigned_long _ORBIT_tmpvar_62;
   CORBA_unsigned_long _ORBIT_tmpvar_63;
   register CORBA_unsigned_long _ORBIT_tmpvar_64;
   register CORBA_unsigned_long _ORBIT_tmpvar_65;
   CORBA_unsigned_long _ORBIT_tmpvar_66;
   register CORBA_unsigned_long _ORBIT_tmpvar_67;
   register CORBA_unsigned_long _ORBIT_tmpvar_68;
   CORBA_unsigned_long _ORBIT_tmpvar_69;
   register CORBA_unsigned_long _ORBIT_tmpvar_70;
   CORBA_unsigned_long _ORBIT_tmpvar_71;
   register CORBA_unsigned_long _ORBIT_tmpvar_72;
   CORBA_unsigned_long _ORBIT_tmpvar_73;
   register CORBA_unsigned_long _ORBIT_tmpvar_74;
   CORBA_unsigned_long _ORBIT_tmpvar_75;
   register CORBA_unsigned_long _ORBIT_tmpvar_76;
   register CORBA_unsigned_long _ORBIT_tmpvar_77;
   CORBA_unsigned_long _ORBIT_tmpvar_78;
   register CORBA_unsigned_long _ORBIT_tmpvar_79;
   CORBA_unsigned_long _ORBIT_tmpvar_80;
   register CORBA_unsigned_long _ORBIT_tmpvar_81;
   CORBA_unsigned_long _ORBIT_tmpvar_82;
   register CORBA_unsigned_long _ORBIT_tmpvar_83;
   CORBA_unsigned_long _ORBIT_tmpvar_84;
   register CORBA_unsigned_long _ORBIT_tmpvar_85;
   register CORBA_unsigned_long _ORBIT_tmpvar_86;
   CORBA_unsigned_long _ORBIT_tmpvar_87;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->describe_interface(_obj->servant, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[19];
      } _ORBIT_operation_name_data = {
	 19, "describe_interface"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 23};
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_retval = CORBA_InterfaceDef_FullInterfaceDescription__alloc();
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_45))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).name = CORBA_string_alloc(_ORBIT_tmpvar_45);
	 memcpy((*_ORBIT_retval).name, _ORBIT_curptr, sizeof((*_ORBIT_retval).name[_ORBIT_tmpvar_44]) * _ORBIT_tmpvar_45);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).name[_ORBIT_tmpvar_44]) * _ORBIT_tmpvar_45;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_47))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).id = CORBA_string_alloc(_ORBIT_tmpvar_47);
	 memcpy((*_ORBIT_retval).id, _ORBIT_curptr, sizeof((*_ORBIT_retval).id[_ORBIT_tmpvar_46]) * _ORBIT_tmpvar_47);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).id[_ORBIT_tmpvar_46]) * _ORBIT_tmpvar_47;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_49))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).defined_in = CORBA_string_alloc(_ORBIT_tmpvar_49);
	 memcpy((*_ORBIT_retval).defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).defined_in[_ORBIT_tmpvar_48]) * _ORBIT_tmpvar_49);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).defined_in[_ORBIT_tmpvar_48]) * _ORBIT_tmpvar_49;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & (_ORBIT_tmpvar_51))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).version = CORBA_string_alloc(_ORBIT_tmpvar_51);
	 memcpy((*_ORBIT_retval).version, _ORBIT_curptr, sizeof((*_ORBIT_retval).version[_ORBIT_tmpvar_50]) * _ORBIT_tmpvar_51);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).version[_ORBIT_tmpvar_50]) * _ORBIT_tmpvar_51;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval).operations._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).operations._buffer = CORBA_sequence_CORBA_OperationDescription_allocbuf((*_ORBIT_retval).operations._length);
	 (*_ORBIT_retval).operations._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_52 = 0; _ORBIT_tmpvar_52 < (*_ORBIT_retval).operations._length; _ORBIT_tmpvar_52++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_54))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name = CORBA_string_alloc(_ORBIT_tmpvar_54);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name[_ORBIT_tmpvar_53]) * _ORBIT_tmpvar_54);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name[_ORBIT_tmpvar_53]) * _ORBIT_tmpvar_54;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_56))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id = CORBA_string_alloc(_ORBIT_tmpvar_56);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id[_ORBIT_tmpvar_55]) * _ORBIT_tmpvar_56);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id[_ORBIT_tmpvar_55]) * _ORBIT_tmpvar_56;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_58))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_58);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in[_ORBIT_tmpvar_57]) * _ORBIT_tmpvar_58);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in[_ORBIT_tmpvar_57]) * _ORBIT_tmpvar_58;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_60))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version = CORBA_string_alloc(_ORBIT_tmpvar_60);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version[_ORBIT_tmpvar_59]) * _ORBIT_tmpvar_60);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version[_ORBIT_tmpvar_59]) * _ORBIT_tmpvar_60;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].result, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*((guint32 *) & ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer = CORBA_sequence_CORBA_ContextIdentifier_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_61 = 0; _ORBIT_tmpvar_61 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length; _ORBIT_tmpvar_61++) {
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & (_ORBIT_tmpvar_63))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61] = CORBA_string_alloc(_ORBIT_tmpvar_63);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61], _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61][_ORBIT_tmpvar_62]) * _ORBIT_tmpvar_63);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61][_ORBIT_tmpvar_62]) * _ORBIT_tmpvar_63;
	    }

	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_64 = 0; _ORBIT_tmpvar_64 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length; _ORBIT_tmpvar_64++) {
	       (*((guint32 *) & (_ORBIT_tmpvar_66))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name = CORBA_string_alloc(_ORBIT_tmpvar_66);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name[_ORBIT_tmpvar_65]) * _ORBIT_tmpvar_66);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name[_ORBIT_tmpvar_65]) * _ORBIT_tmpvar_66;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].type, _ORBIT_recv_buffer);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	    }

	    (*((guint32 *) & ((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer = CORBA_sequence_CORBA_ExceptionDescription_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_67 = 0; _ORBIT_tmpvar_67 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length; _ORBIT_tmpvar_67++) {
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & (_ORBIT_tmpvar_69))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name = CORBA_string_alloc(_ORBIT_tmpvar_69);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name[_ORBIT_tmpvar_68]) * _ORBIT_tmpvar_69);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name[_ORBIT_tmpvar_68]) * _ORBIT_tmpvar_69;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & (_ORBIT_tmpvar_71))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id = CORBA_string_alloc(_ORBIT_tmpvar_71);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id[_ORBIT_tmpvar_70]) * _ORBIT_tmpvar_71);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id[_ORBIT_tmpvar_70]) * _ORBIT_tmpvar_71;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & (_ORBIT_tmpvar_73))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_73);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in[_ORBIT_tmpvar_72]) * _ORBIT_tmpvar_73);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in[_ORBIT_tmpvar_72]) * _ORBIT_tmpvar_73;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*((guint32 *) & (_ORBIT_tmpvar_75))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version = CORBA_string_alloc(_ORBIT_tmpvar_75);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version[_ORBIT_tmpvar_74]) * _ORBIT_tmpvar_75);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version[_ORBIT_tmpvar_74]) * _ORBIT_tmpvar_75;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].type, _ORBIT_recv_buffer);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    }

	 }

	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*((guint32 *) & ((*_ORBIT_retval).attributes._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).attributes._buffer = CORBA_sequence_CORBA_AttributeDescription_allocbuf((*_ORBIT_retval).attributes._length);
	 (*_ORBIT_retval).attributes._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_76 = 0; _ORBIT_tmpvar_76 < (*_ORBIT_retval).attributes._length; _ORBIT_tmpvar_76++) {
	    (*((guint32 *) & (_ORBIT_tmpvar_78))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name = CORBA_string_alloc(_ORBIT_tmpvar_78);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name[_ORBIT_tmpvar_77]) * _ORBIT_tmpvar_78);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name[_ORBIT_tmpvar_77]) * _ORBIT_tmpvar_78;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_80))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id = CORBA_string_alloc(_ORBIT_tmpvar_80);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id[_ORBIT_tmpvar_79]) * _ORBIT_tmpvar_80);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id[_ORBIT_tmpvar_79]) * _ORBIT_tmpvar_80;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_82))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_82);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in[_ORBIT_tmpvar_81]) * _ORBIT_tmpvar_82);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in[_ORBIT_tmpvar_81]) * _ORBIT_tmpvar_82;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_84))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version = CORBA_string_alloc(_ORBIT_tmpvar_84);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version[_ORBIT_tmpvar_83]) * _ORBIT_tmpvar_84);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version[_ORBIT_tmpvar_83]) * _ORBIT_tmpvar_84;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & ((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].mode))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	 }

	 (*((guint32 *) & ((*_ORBIT_retval).base_interfaces._length))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).base_interfaces._buffer = CORBA_sequence_CORBA_RepositoryId_allocbuf((*_ORBIT_retval).base_interfaces._length);
	 (*_ORBIT_retval).base_interfaces._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_85 = 0; _ORBIT_tmpvar_85 < (*_ORBIT_retval).base_interfaces._length; _ORBIT_tmpvar_85++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*((guint32 *) & (_ORBIT_tmpvar_87))) = GUINT32_SWAP_LE_BE(*((guint32 *) _ORBIT_curptr));
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85] = CORBA_string_alloc(_ORBIT_tmpvar_87);
	    memcpy((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85], _ORBIT_curptr, sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85][_ORBIT_tmpvar_86]) * _ORBIT_tmpvar_87);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85][_ORBIT_tmpvar_86]) * _ORBIT_tmpvar_87;
	 }

	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).type, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_45 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).name = CORBA_string_alloc(_ORBIT_tmpvar_45);
	 memcpy((*_ORBIT_retval).name, _ORBIT_curptr, sizeof((*_ORBIT_retval).name[_ORBIT_tmpvar_44]) * _ORBIT_tmpvar_45);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).name[_ORBIT_tmpvar_44]) * _ORBIT_tmpvar_45;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_47 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).id = CORBA_string_alloc(_ORBIT_tmpvar_47);
	 memcpy((*_ORBIT_retval).id, _ORBIT_curptr, sizeof((*_ORBIT_retval).id[_ORBIT_tmpvar_46]) * _ORBIT_tmpvar_47);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).id[_ORBIT_tmpvar_46]) * _ORBIT_tmpvar_47;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_49 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).defined_in = CORBA_string_alloc(_ORBIT_tmpvar_49);
	 memcpy((*_ORBIT_retval).defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).defined_in[_ORBIT_tmpvar_48]) * _ORBIT_tmpvar_49);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).defined_in[_ORBIT_tmpvar_48]) * _ORBIT_tmpvar_49;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 _ORBIT_tmpvar_51 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).version = CORBA_string_alloc(_ORBIT_tmpvar_51);
	 memcpy((*_ORBIT_retval).version, _ORBIT_curptr, sizeof((*_ORBIT_retval).version[_ORBIT_tmpvar_50]) * _ORBIT_tmpvar_51);
	 _ORBIT_curptr += sizeof((*_ORBIT_retval).version[_ORBIT_tmpvar_50]) * _ORBIT_tmpvar_51;
	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval).operations._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).operations._buffer = CORBA_sequence_CORBA_OperationDescription_allocbuf((*_ORBIT_retval).operations._length);
	 (*_ORBIT_retval).operations._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_52 = 0; _ORBIT_tmpvar_52 < (*_ORBIT_retval).operations._length; _ORBIT_tmpvar_52++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_54 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name = CORBA_string_alloc(_ORBIT_tmpvar_54);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name[_ORBIT_tmpvar_53]) * _ORBIT_tmpvar_54);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].name[_ORBIT_tmpvar_53]) * _ORBIT_tmpvar_54;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_56 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id = CORBA_string_alloc(_ORBIT_tmpvar_56);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id[_ORBIT_tmpvar_55]) * _ORBIT_tmpvar_56);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].id[_ORBIT_tmpvar_55]) * _ORBIT_tmpvar_56;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_58 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_58);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in[_ORBIT_tmpvar_57]) * _ORBIT_tmpvar_58);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].defined_in[_ORBIT_tmpvar_57]) * _ORBIT_tmpvar_58;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_60 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version = CORBA_string_alloc(_ORBIT_tmpvar_60);
	    memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version[_ORBIT_tmpvar_59]) * _ORBIT_tmpvar_60);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].version[_ORBIT_tmpvar_59]) * _ORBIT_tmpvar_60;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].result, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].mode = *((CORBA_OperationMode *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer = CORBA_sequence_CORBA_ContextIdentifier_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_61 = 0; _ORBIT_tmpvar_61 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._length; _ORBIT_tmpvar_61++) {
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       _ORBIT_tmpvar_63 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61] = CORBA_string_alloc(_ORBIT_tmpvar_63);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61], _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61][_ORBIT_tmpvar_62]) * _ORBIT_tmpvar_63);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].contexts._buffer[_ORBIT_tmpvar_61][_ORBIT_tmpvar_62]) * _ORBIT_tmpvar_63;
	    }

	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer = CORBA_sequence_CORBA_ParameterDescription_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_64 = 0; _ORBIT_tmpvar_64 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._length; _ORBIT_tmpvar_64++) {
	       _ORBIT_tmpvar_66 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name = CORBA_string_alloc(_ORBIT_tmpvar_66);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name[_ORBIT_tmpvar_65]) * _ORBIT_tmpvar_66);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].name[_ORBIT_tmpvar_65]) * _ORBIT_tmpvar_66;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].type, _ORBIT_recv_buffer);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].type_def = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].parameters._buffer[_ORBIT_tmpvar_64].mode = *((CORBA_ParameterMode *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	    }

	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer = CORBA_sequence_CORBA_ExceptionDescription_allocbuf((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length);
	    (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._release = CORBA_TRUE;
	    for (_ORBIT_tmpvar_67 = 0; _ORBIT_tmpvar_67 < (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._length; _ORBIT_tmpvar_67++) {
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       _ORBIT_tmpvar_69 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name = CORBA_string_alloc(_ORBIT_tmpvar_69);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name[_ORBIT_tmpvar_68]) * _ORBIT_tmpvar_69);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].name[_ORBIT_tmpvar_68]) * _ORBIT_tmpvar_69;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       _ORBIT_tmpvar_71 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id = CORBA_string_alloc(_ORBIT_tmpvar_71);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id[_ORBIT_tmpvar_70]) * _ORBIT_tmpvar_71);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].id[_ORBIT_tmpvar_70]) * _ORBIT_tmpvar_71;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       _ORBIT_tmpvar_73 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_73);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in[_ORBIT_tmpvar_72]) * _ORBIT_tmpvar_73);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].defined_in[_ORBIT_tmpvar_72]) * _ORBIT_tmpvar_73;
	       _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	       _ORBIT_tmpvar_75 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	       _ORBIT_curptr += 4;
	       (*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version = CORBA_string_alloc(_ORBIT_tmpvar_75);
	       memcpy((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version[_ORBIT_tmpvar_74]) * _ORBIT_tmpvar_75);
	       _ORBIT_curptr += sizeof((*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].version[_ORBIT_tmpvar_74]) * _ORBIT_tmpvar_75;
	       GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	       ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).operations._buffer[_ORBIT_tmpvar_52].exceptions._buffer[_ORBIT_tmpvar_67].type, _ORBIT_recv_buffer);
	       _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    }

	 }

	 _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	 (*_ORBIT_retval).attributes._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).attributes._buffer = CORBA_sequence_CORBA_AttributeDescription_allocbuf((*_ORBIT_retval).attributes._length);
	 (*_ORBIT_retval).attributes._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_76 = 0; _ORBIT_tmpvar_76 < (*_ORBIT_retval).attributes._length; _ORBIT_tmpvar_76++) {
	    _ORBIT_tmpvar_78 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name = CORBA_string_alloc(_ORBIT_tmpvar_78);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name[_ORBIT_tmpvar_77]) * _ORBIT_tmpvar_78);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].name[_ORBIT_tmpvar_77]) * _ORBIT_tmpvar_78;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_80 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id = CORBA_string_alloc(_ORBIT_tmpvar_80);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id[_ORBIT_tmpvar_79]) * _ORBIT_tmpvar_80);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].id[_ORBIT_tmpvar_79]) * _ORBIT_tmpvar_80;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_82 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in = CORBA_string_alloc(_ORBIT_tmpvar_82);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in[_ORBIT_tmpvar_81]) * _ORBIT_tmpvar_82);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].defined_in[_ORBIT_tmpvar_81]) * _ORBIT_tmpvar_82;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_84 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version = CORBA_string_alloc(_ORBIT_tmpvar_84);
	    memcpy((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version, _ORBIT_curptr, sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version[_ORBIT_tmpvar_83]) * _ORBIT_tmpvar_84);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].version[_ORBIT_tmpvar_83]) * _ORBIT_tmpvar_84;
	    GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	    ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].type, _ORBIT_recv_buffer);
	    _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    (*_ORBIT_retval).attributes._buffer[_ORBIT_tmpvar_76].mode = *((CORBA_AttributeMode *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	 }

	 (*_ORBIT_retval).base_interfaces._length = *((CORBA_unsigned_long *) _ORBIT_curptr);
	 _ORBIT_curptr += 4;
	 (*_ORBIT_retval).base_interfaces._buffer = CORBA_sequence_CORBA_RepositoryId_allocbuf((*_ORBIT_retval).base_interfaces._length);
	 (*_ORBIT_retval).base_interfaces._release = CORBA_TRUE;
	 for (_ORBIT_tmpvar_85 = 0; _ORBIT_tmpvar_85 < (*_ORBIT_retval).base_interfaces._length; _ORBIT_tmpvar_85++) {
	    _ORBIT_curptr = ALIGN_ADDRESS(_ORBIT_curptr, 4);
	    _ORBIT_tmpvar_87 = *((CORBA_unsigned_long *) _ORBIT_curptr);
	    _ORBIT_curptr += 4;
	    (*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85] = CORBA_string_alloc(_ORBIT_tmpvar_87);
	    memcpy((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85], _ORBIT_curptr, sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85][_ORBIT_tmpvar_86]) * _ORBIT_tmpvar_87);
	    _ORBIT_curptr += sizeof((*_ORBIT_retval).base_interfaces._buffer[_ORBIT_tmpvar_85][_ORBIT_tmpvar_86]) * _ORBIT_tmpvar_87;
	 }

	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 ORBit_decode_CORBA_TypeCode(&(*_ORBIT_retval).type, _ORBIT_recv_buffer);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_AttributeDef 
CORBA_InterfaceDef_create_attribute(CORBA_InterfaceDef _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType type, const CORBA_AttributeMode mode, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_AttributeDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->create_attribute(_obj->servant, id, name, version, type, mode, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[17];
      } _ORBIT_operation_name_data = {
	 17, "create_attribute"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 21};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      ORBit_marshal_object(_ORBIT_send_buffer, type);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(mode), sizeof(mode));
      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
CORBA_OperationDef 
CORBA_InterfaceDef_create_operation(CORBA_InterfaceDef _obj, const CORBA_RepositoryId id, const CORBA_Identifier name, const CORBA_VersionSpec version, const CORBA_IDLType result, const CORBA_OperationMode mode, const CORBA_ParDescriptionSeq * params, const CORBA_ExceptionDefSeq * exceptions, const CORBA_ContextIdSeq * contexts, CORBA_Environment * ev)
{
   register GIOP_unsigned_long _ORBIT_request_id,
    _ORBIT_system_exception_minor;
   register CORBA_completion_status _ORBIT_completion_status;
   register GIOPSendBuffer *_ORBIT_send_buffer;
   register GIOPRecvBuffer *_ORBIT_recv_buffer;
   register GIOPConnection *_cnx;
   CORBA_OperationDef _ORBIT_retval;
   if (_obj->servant && _obj->vepv && CORBA_InterfaceDef__classid) {
      _ORBIT_retval = ((POA_CORBA_InterfaceDef__epv *) _obj->vepv[CORBA_InterfaceDef__classid])->create_operation(_obj->servant, id, name, version, result, mode, params, exceptions, contexts, ev);
      return _ORBIT_retval;
   }
   if (0)
      return *(&_ORBIT_retval);
   _cnx = ORBit_object_get_connection(_obj);
_ORBIT_retry_request:
   _ORBIT_send_buffer = NULL;
   _ORBIT_recv_buffer = NULL;
   _ORBIT_completion_status = CORBA_COMPLETED_NO;
   _ORBIT_request_id = GPOINTER_TO_UINT(alloca(0));
   {				/* marshalling */
      static const struct {
	 CORBA_unsigned_long len;
	 char opname[17];
      } _ORBIT_operation_name_data = {
	 17, "create_operation"
      };
      static const struct iovec _ORBIT_operation_vec = {(gpointer) & _ORBIT_operation_name_data, 21};
      register CORBA_unsigned_long _ORBIT_tmpvar_0;
      CORBA_unsigned_long _ORBIT_tmpvar_1;
      register CORBA_unsigned_long _ORBIT_tmpvar_2;
      CORBA_unsigned_long _ORBIT_tmpvar_3;
      register CORBA_unsigned_long _ORBIT_tmpvar_4;
      CORBA_unsigned_long _ORBIT_tmpvar_5;
      register CORBA_unsigned_long _ORBIT_tmpvar_6;
      register CORBA_unsigned_long _ORBIT_tmpvar_7;
      CORBA_unsigned_long _ORBIT_tmpvar_8;
      register CORBA_unsigned_long _ORBIT_tmpvar_9;
      register CORBA_unsigned_long _ORBIT_tmpvar_10;
      register CORBA_unsigned_long _ORBIT_tmpvar_11;
      CORBA_unsigned_long _ORBIT_tmpvar_12;
      _ORBIT_send_buffer =
	 giop_send_request_buffer_use(_cnx, NULL, _ORBIT_request_id, CORBA_TRUE,
				      &(_obj->active_profile->object_key_vec), &_ORBIT_operation_vec, &ORBit_default_principal_iovec);

      _ORBIT_system_exception_minor = ex_CORBA_COMM_FAILURE;
      if (!_ORBIT_send_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_tmpvar_1 = strlen(id) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_1));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_1), sizeof(_ORBIT_tmpvar_1));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_1));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (id), sizeof(id[_ORBIT_tmpvar_0]) * _ORBIT_tmpvar_1);
      _ORBIT_tmpvar_3 = strlen(name) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_3));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_3), sizeof(_ORBIT_tmpvar_3));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_3));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (name), sizeof(name[_ORBIT_tmpvar_2]) * _ORBIT_tmpvar_3);
      _ORBIT_tmpvar_5 = strlen(version) + 1;
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_5));
	 memcpy(_ORBIT_t, &(_ORBIT_tmpvar_5), sizeof(_ORBIT_tmpvar_5));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_5));
      }
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (version), sizeof(version[_ORBIT_tmpvar_4]) * _ORBIT_tmpvar_5);
      ORBit_marshal_object(_ORBIT_send_buffer, result);
      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), &(mode), sizeof(mode));
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*params)._length));
	 memcpy(_ORBIT_t, &((*params)._length), sizeof((*params)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*params)._length));
      }
      for (_ORBIT_tmpvar_6 = 0; _ORBIT_tmpvar_6 < (*params)._length; _ORBIT_tmpvar_6++) {
	 _ORBIT_tmpvar_8 = strlen((*params)._buffer[_ORBIT_tmpvar_6].name) + 1;
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_8));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_8), sizeof(_ORBIT_tmpvar_8));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_8));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*params)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    memcpy(_ORBIT_t, ((*params)._buffer[_ORBIT_tmpvar_6].name), sizeof((*params)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*params)._buffer[_ORBIT_tmpvar_6].name[_ORBIT_tmpvar_7]) * _ORBIT_tmpvar_8);
	 }
	 ORBit_encode_CORBA_TypeCode((*params)._buffer[_ORBIT_tmpvar_6].type, _ORBIT_send_buffer);
	 ORBit_marshal_object(_ORBIT_send_buffer, (*params)._buffer[_ORBIT_tmpvar_6].type_def);
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*params)._buffer[_ORBIT_tmpvar_6].mode));
	    memcpy(_ORBIT_t, &((*params)._buffer[_ORBIT_tmpvar_6].mode), sizeof((*params)._buffer[_ORBIT_tmpvar_6].mode));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*params)._buffer[_ORBIT_tmpvar_6].mode));
	 }
      }

      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*exceptions)._length));
	 memcpy(_ORBIT_t, &((*exceptions)._length), sizeof((*exceptions)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*exceptions)._length));
      }
      for (_ORBIT_tmpvar_9 = 0; _ORBIT_tmpvar_9 < (*exceptions)._length; _ORBIT_tmpvar_9++) {
	 ORBit_marshal_object(_ORBIT_send_buffer, (*exceptions)._buffer[_ORBIT_tmpvar_9]);
      }

      giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
      {
	 guchar *_ORBIT_t;
	 _ORBIT_t = alloca(sizeof((*contexts)._length));
	 memcpy(_ORBIT_t, &((*contexts)._length), sizeof((*contexts)._length));
	 giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*contexts)._length));
      }
      for (_ORBIT_tmpvar_10 = 0; _ORBIT_tmpvar_10 < (*contexts)._length; _ORBIT_tmpvar_10++) {
	 _ORBIT_tmpvar_12 = strlen((*contexts)._buffer[_ORBIT_tmpvar_10]) + 1;
	 giop_message_buffer_do_alignment(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), 4);
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof(_ORBIT_tmpvar_12));
	    memcpy(_ORBIT_t, &(_ORBIT_tmpvar_12), sizeof(_ORBIT_tmpvar_12));
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof(_ORBIT_tmpvar_12));
	 }
	 {
	    guchar *_ORBIT_t;
	    _ORBIT_t = alloca(sizeof((*contexts)._buffer[_ORBIT_tmpvar_10][_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
	    memcpy(_ORBIT_t, ((*contexts)._buffer[_ORBIT_tmpvar_10]), sizeof((*contexts)._buffer[_ORBIT_tmpvar_10][_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
	    giop_message_buffer_append_mem(GIOP_MESSAGE_BUFFER(_ORBIT_send_buffer), (_ORBIT_t), sizeof((*contexts)._buffer[_ORBIT_tmpvar_10][_ORBIT_tmpvar_11]) * _ORBIT_tmpvar_12);
	 }
      }

      giop_send_buffer_write(_ORBIT_send_buffer);
      _ORBIT_completion_status = CORBA_COMPLETED_MAYBE;
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      _ORBIT_send_buffer = NULL;
   }
   {				/* demarshalling */
      register guchar *_ORBIT_curptr;
      _ORBIT_recv_buffer = giop_recv_reply_buffer_use_2(_cnx, _ORBIT_request_id, TRUE);
      if (!_ORBIT_recv_buffer)
	 goto _ORBIT_system_exception;
      _ORBIT_completion_status = CORBA_COMPLETED_YES;
      if (_ORBIT_recv_buffer->message.u.reply.reply_status != GIOP_NO_EXCEPTION)
	 goto _ORBIT_msg_exception;
      _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      if (giop_msg_conversion_needed(GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer))) {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      } else {
	 GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur = _ORBIT_curptr;
	 _ORBIT_retval = ORBit_demarshal_object(_ORBIT_recv_buffer, GIOP_MESSAGE_BUFFER(_ORBIT_recv_buffer)->connection->orb_data);
	 _ORBIT_curptr = GIOP_RECV_BUFFER(_ORBIT_recv_buffer)->cur;
      }
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      return _ORBIT_retval;
_ORBIT_system_exception:
      CORBA_exception_set_system(ev, _ORBIT_system_exception_minor, _ORBIT_completion_status);
      giop_recv_buffer_unuse(_ORBIT_recv_buffer);
      giop_send_buffer_unuse(_ORBIT_send_buffer);
      return _ORBIT_retval;
_ORBIT_msg_exception:
      if (_ORBIT_recv_buffer->message.u.reply.reply_status == GIOP_LOCATION_FORWARD) {
	 if (_obj->forward_locations != NULL)
	    ORBit_delete_profiles(_obj->forward_locations);
	 _obj->forward_locations = ORBit_demarshal_IOR(_ORBIT_recv_buffer);
	 _cnx = ORBit_object_get_forwarded_connection(_obj);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);

	 goto _ORBIT_retry_request;
      } else {
	 ORBit_handle_exception(_ORBIT_recv_buffer, ev, NULL, _obj->orb);
	 giop_recv_buffer_unuse(_ORBIT_recv_buffer);
	 return _ORBIT_retval;
      }
   }
}
