xbt_dynar_t globals;
} s_gras_cbps_t;
-static void free_string(void *d){
- free(*(void**)d);
-}
-
gras_cbps_t gras_cbps_new(void) {
gras_cbps_t res;
xbt_dynar_reset(state->lints);
- xbt_dict_free ( &(state->space) );
- state->space = xbt_dict_new();
+ xbt_dict_reset (state->space);
xbt_dynar_reset(state->frames);
xbt_dynar_reset(state->globals);
gras_cbps_block_end(gras_cbps_t ps) {
xbt_dynar_t frame = NULL;
- int cursor = 0;
+ unsigned int cursor = 0;
char *name = NULL;
xbt_assert0(xbt_dynar_length(ps->frames),
/* ************************************ */
/** \brief Cb to push an integer as multiplier. Must be attached to the field you want to push */
void gras_datadesc_cb_push_int_mult(gras_datadesc_type_t ignored, gras_cbps_t vars, void *data) {
- int i = *(int*)data;
- i *= gras_cbps_i_pop(vars);
- gras_cbps_i_push(vars, i);
+ int old = *(int*)data;
+ int new = gras_cbps_i_pop(vars);
+ DEBUG2("push %d x %d as a size",old,new);
+ gras_cbps_i_push(vars, old*new);
}
/** \brief Cb to push an unsigned integer as multiplier. Must be attached to the field you want to push */
void gras_datadesc_cb_push_uint_mult(gras_datadesc_type_t ignored, gras_cbps_t vars, void *data) {
- unsigned int i = *(unsigned int*)data;
- i *= gras_cbps_i_pop(vars);
- gras_cbps_i_push(vars, (int) i);
+ unsigned int old = *(unsigned int*)data;
+ unsigned int new = gras_cbps_i_pop(vars);
+
+ DEBUG2("push %d x %d as a size",old,new);
+ gras_cbps_i_push(vars, (int) (old*new));
}
/** \brief Cb to push an long integer as multiplier. Must be attached to the field you want to push
/** \brief Cb to push an unsigned long integer as multiplier. Must be attached to the field you want to push
*/
void gras_datadesc_cb_push_ulint_mult(gras_datadesc_type_t ignored, gras_cbps_t vars, void *data) {
- unsigned long int i = *(unsigned long int*)data;
- i *= gras_cbps_i_pop(vars);
- gras_cbps_i_push(vars, (int) i);
+ unsigned long int old = *(unsigned long int*)data;
+ unsigned long int new = gras_cbps_i_pop(vars);
+
+ DEBUG2("push %ld x %ld as a size",old,new);
+ gras_cbps_i_push(vars, (int) (old * new) );
}