Пример #1
0
def p_varspp(p): 
    '''varspp : ID varsppaux'''
    global tipoActual
    global arrlen
    tipo= tipoActual.pop()
    tipoActual.append(tipo)
    if scope==1:
        if global_var_exists(p[1]):
            print errors['REPEATED_DECLARATION_FUNC']
            exit(1)
        else:
            add_to_global_var_dict(mem_global,p[1],tipo,arrlen)
            arrlen=1
    else:
        if local_var_exists(p[1]):
            print errors['REPEATED_DECLARATION_FUNC']
            exit(1)
        else:
            add_to_local_var_dict(mem_local,p[1], tipo,arrlen)
            arrlen=1
Пример #2
0
def p_param(p): 
    '''param : type ID paramp''' 
    global tipoActual
    tipo= tipoActual.pop()
    paramsTemp.append([p[2],tipo])
    add_to_local_var_dict(mem_local,p[2], tipo,1)