Changeset 22033

Show
Ignore:
Timestamp:
08/25/08 15:33:00 (3 months ago)
Author:
pmurias
Message:

[smop] fixed warnings raised by gcc and the bugs that caused them

Location:
v6/smop
Files:
6 modified

Legend:

Unmodified
Added
Removed
  • v6/smop/include/smop_s1p.h

    r22017 r22033  
    4242SMOP__Object* SMOP__S1P__Hash_create(void); 
    4343SMOP__Object* SMOP__S1P__Array_create(void); 
     44SMOP__Object* SMOP__S1P__Code_create(void); 
    4445 
    4546 
  • v6/smop/src/smop_mold.c

    r22017 r22033  
    4848    smop_mold_frame* frame = (smop_mold_frame*) moldframe; 
    4949    if (frame->back) { 
    50       printf('Cannot redefine mold back!'); 
     50      printf("Cannot redefine mold back!"); 
    5151      abort(); 
    5252    } 
  • v6/smop/src/smop_s1p_array.c

    r22017 r22033  
    6565    proxy->RI = (SMOP__ResponderInterface*)SMOP__S1P__ArrayProxy; 
    6666    proxy->index = i; 
    67     proxy->array = SMOP_REFERENCE(interpreter,invocant); 
     67    proxy->array = (smop_s1p_array_struct*) SMOP_REFERENCE(interpreter,invocant); 
    6868    ret = (SMOP__Object*) proxy; 
    6969  } else if (identifier == SMOP__ID__elems) { 
  • v6/smop/src/smop_s1p_code.sm0p

    r22017 r22033  
    4343  SMOP__Object* ret = SMOP__NATIVE__bool_false; 
    4444  if (SMOP__ID__new == identifier) { 
    45     ret = SMOP__S1P__Code_create(SMOP__NATIVE__bool_false); 
     45    ret = SMOP__S1P__Code_create(); 
    4646    SMOP__S1P__Code_struct* code = (SMOP__S1P__Code_struct*) ret; 
    4747    code->mold = SMOP__NATIVE__capture_named(interpreter,SMOP_REFERENCE(interpreter,capture),SMOP__ID__mold); 
     
    8181    SMOP__S1P__Code_struct* code = (SMOP__S1P__Code_struct*) invocant; 
    8282 
    83     smop_lowlevel_rdlock(code); 
     83    smop_lowlevel_rdlock(invocant); 
    8484    SMOP__Object* mold = code->mold; 
    85     smop_lowlevel_unlock(code); 
     85    smop_lowlevel_unlock(invocant); 
    8686 
    8787    //SMOP_RELEASE(interpreter,mold); 
  • v6/smop/src/smop_s1p_defaultblocksignature.sm0p

    r22017 r22033  
    66#include <smop_lowlevel.h> 
    77#include <smop_s1p.h> 
     8#include <smop_mold.h> 
    89 
    910SMOP__Object* SMOP__S1P__DefaultBlockSignature; 
  • v6/smop/src/smop_s1p_str.c

    r22017 r22033  
    1616SMOP__Object* SMOP__S1P__Str_createn(char *str,int len) { 
    1717    smop_s1p_str_struct* ret = (smop_s1p_str_struct*) smop_lowlevel_alloc(sizeof(smop_s1p_str_struct)); 
    18     ret->str = strndup(str,len); 
     18    ret->str = malloc(sizeof(char) * len); 
     19    strncpy(ret->str,str,len); 
    1920    ret->len  = len; 
    2021    ret->RI = (SMOP__ResponderInterface*)SMOP__S1P__Str; 
     
    2223} 
    2324SMOP__Object* SMOP__S1P__Str_create(char *data) { 
    24     return SMOP__S1P__Str_createn(data,strlen(data)); 
     25    return SMOP__S1P__Str_createn(data,strlen(data)+1); 
    2526} 
    2627