You are viewing a plain text version of this content. The canonical link for it is here.
Posted to proton@qpid.apache.org by "Mary hinton (JIRA)" <ji...@apache.org> on 2012/11/19 16:01:01 UTC

[jira] [Updated] (PROTON-98) Porting Issue -- Visual Studio compiler requires explicit casts

     [ https://issues.apache.org/jira/browse/PROTON-98?page=com.atlassian.jira.plugin.system.issuetabpanels:all-tabpanel ]

Mary hinton updated PROTON-98:
------------------------------

    Attachment: explicitCasts2.patch

morxplicit casts that need to be added for Visual Studio port
                
> Porting Issue -- Visual Studio compiler requires explicit casts
> ---------------------------------------------------------------
>
>                 Key: PROTON-98
>                 URL: https://issues.apache.org/jira/browse/PROTON-98
>             Project: Qpid Proton
>          Issue Type: Improvement
>          Components: proton-c
>         Environment: Windows using Visual Studio 2010
>            Reporter: Mary hinton
>              Labels: build
>         Attachments: explicitCasts2.patch, ExplicitCasts.patch
>
>
> I would like to get the code changed to add explicit casts where the Visual Studio compiler requires it. 
> The GNU compiler isn’t so picky, but we need the explicit casts for Visual Studio tools.
> The problem is in many of the files.
>   C:\qpid\qpid\proton\proton-c\src\proton.c(278):  struct client_context *ctx = (client_context *) pn_connector_context(ctor);		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\buffer.c(41):  pn_buffer_t *buf = (pn_buffer_t *) malloc(sizeof(pn_buffer_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\buffer.c(45):  buf->bytes = capacity ? (char *) malloc(capacity) : NULL;					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(706):    return (pn_type_t) PN_ARG_ERR;								// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(758):    return (pn_type_t) PN_ARG_ERR;								// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(1210):    atom->u.type = (pn_type_t) va_arg(*ap, int);					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(1311):          char **sptr = (char **) ptr;							// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(1875):  pn_data_t *data = (pn_data_t *) malloc(sizeof(pn_data_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(1878):  data->nodes = capacity ? (pn_node_t *) malloc(capacity * sizeof(pn_node_t)) : NULL;   // explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(1931):  data->nodes = (pn_node_t *) realloc(data->nodes, data->capacity * sizeof(pn_node_t));	// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(2151):            char **sptr = (char**) ptr;							// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(3114):    return (pn_type_t) -1;									// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\codec\codec.c(3764):    return (pn_type_t) -1;									// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\dispatcher\dispatcher.c(32):  pn_dispatcher_t *disp = (pn_dispatcher_t *) calloc(sizeof(pn_dispatcher_t), 1);	// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\dispatcher\dispatcher.c(47):  disp->output = (char *) malloc(disp->capacity);				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\dispatcher\dispatcher.c(248):        disp->output = (char *) realloc(disp->output, disp->capacity);	// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\driver.c(193):  pn_listener_t *l = (pn_listener_t *) malloc(sizeof(pn_listener_t));			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\driver.c(410):  pn_connector_t *c = (pn_connector_t *) malloc(sizeof(pn_connector_t));			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\driver.c(656):  pn_driver_t *d = (pn_driver_t *) malloc(sizeof(pn_driver_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\driver.c(748):    d->fds = (pollfd *) realloc(d->fds, d->capacity*sizeof(struct pollfd));		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(47):  db->deliveries = (pn_delivery_state_t *) malloc(sizeof(pn_delivery_state_t) * capacity);    // explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(438):  pn_connection_t *conn = (pn_connection_t *)malloc(sizeof(pn_connection_t));			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(730):  pn_session_t *ssn = (pn_session_t *) malloc(sizeof(pn_session_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(866):  pn_transport_t *transport = (pn_transport_t *) malloc(sizeof(pn_transport_t));			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(964):  return terminus ? terminus->type : (pn_terminus_type_t) 0;						// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(982):  return terminus ? terminus->durability : (pn_durability_t) 0;					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(994):  return terminus ? terminus->expiry_policy : (pn_expiry_policy_t) 0;			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1128):  pn_link_t *snd = (pn_link_t *) malloc(sizeof(pn_link_t));					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1137):  pn_link_t *rcv = (pn_link_t *) malloc(sizeof(pn_link_t));					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1179):    delivery = (pn_delivery_t *) malloc(sizeof(pn_delivery_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1351):  pn_delivery_state_t *state = (pn_delivery_state_t *) delivery->transport_context;	// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1415):  pn_transport_t *transport = (pn_transport_t *) disp->context;				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1443):  pn_transport_t *transport = (pn_transport_t *) disp->context;  				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1500):  pn_transport_t *transport = (pn_transport_t *) disp->context;				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1595):  pn_transport_t *transport = (pn_transport_t *) disp->context;  				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1648):  pn_transport_t *transport = (pn_transport_t *) disp->context;   				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1713):  pn_transport_t *transport = (pn_transport_t *) disp->context;				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1815):  pn_transport_t *transport = (pn_transport_t *) disp->context;				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1853):  pn_transport_t *transport = (pn_transport_t *) disp->context;				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(1976):    pn_delivery_state_t *state = (pn_delivery_state_t *) delivery->transport_context;		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(2126):  pn_delivery_state_t *state = (pn_delivery_state_t *) delivery->transport_context;		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(2154):    pn_delivery_state_t *state = (pn_delivery_state_t *) delivery->transport_context;		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(2182):  pn_delivery_state_t *state = (pn_delivery_state_t *) delivery->transport_context;		// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(2592):  return (pn_disposition_t) delivery->local_state;						// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\engine\engine.c(2597):  return (pn_disposition_t) delivery->remote_state;						// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\error.c(37):  pn_error_t *error = (pn_error_t *) malloc(sizeof(pn_error_t));					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\message\message.c(83):  pn_message_t *msg = (pn_message_t *) malloc(sizeof(pn_message_t));			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\messenger.c(90):  pn_messenger_t *m = (pn_messenger_t *) malloc(sizeof(pn_messenger_t));    			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\messenger.c(309):      char *scheme = (char *)pn_listener_context(l);                      			// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\parser.c(42):  pn_parser_t *parser = (pn_parser_t *) malloc(sizeof(pn_parser_t));					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\parser.c(54):    parser->atoms = (char *) realloc(parser->atoms, parser->capacity);				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\sasl\sasl.c(349):  pn_sasl_t *sasl = (pn_sasl_t *)disp->context;							// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\scanner.c(83):  pn_scanner_t *scanner = (pn_scanner_t *) malloc(sizeof(pn_scanner_t));				// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\types.c(42):    char *dup = (char *) malloc(size);									// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\util.c(171):    char *dest = (char *) malloc((strlen(src)+1)*sizeof(char));					// explicit cast
>   C:\qpid\qpid\proton\proton-c\src\util.c(187):    char *dest = (char *) malloc(size + 1);								// explicit cast

--
This message is automatically generated by JIRA.
If you think it was sent incorrectly, please contact your JIRA administrators
For more information on JIRA, see: http://www.atlassian.com/software/jira