cl_object cl_copy_symbol(cl_narg narg, ...) { #line 318 // ------------------------------2 #line 318 const cl_env_ptr the_env = ecl_process_env(); #line 318 cl_object cp; #line 318 cl_object x; #line 318 va_list ARGS; va_start(ARGS, narg); cl_object sym = va_arg(ARGS,cl_object); #line 318 // ------------------------------3 #line 320 // ------------------------------4 #line 320 #line 320 if (ecl_unlikely(narg < 1|| narg > 2)) FEwrong_num_arguments(ecl_make_fixnum(262)); #line 320 if (narg > 1) { #line 320 cp = va_arg(ARGS,cl_object); #line 320 } else { #line 320 cp = ECL_NIL; #line 320 } #line 320 x = ECL_NIL; #line 320 // ------------------------------5 if (Null(sym)) sym = ECL_NIL_SYMBOL; x = cl_make_symbol(ecl_symbol_name(sym)); if (!Null(cp)) { x->symbol.dynamic = 0; x->symbol.stype = sym->symbol.stype; x->symbol.value = sym->symbol.value; x->symbol.gfdef = sym->symbol.gfdef; x->symbol.plist = cl_copy_list(sym->symbol.plist); #ifdef ECL_THREADS x->symbol.binding = ECL_MISSING_SPECIAL_BINDING; #endif /* FIXME!!! We should also copy the system property list */ } { #line 334 #line 334 cl_object __value0 = x; #line 334 the_env->nvalues = 1; #line 334 return __value0; #line 334 } }
/* optimize speed 3, debug 3, space 0, safety 2 */ static cl_object L2interleave(cl_object V1, cl_object V2) { cl_object T0; struct ecl_ihs_frame ihs; const cl_object _ecl_debug_env = ECL_NIL; const cl_env_ptr cl_env_copy = ecl_process_env(); cl_object value0; ecl_cs_check(cl_env_copy,value0); { { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"COMMON-LISP-USER::LIST1",_ecl_object_loc} ,{"COMMON-LISP-USER::LIST2",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(ECL_NIL),(cl_index)(_ecl_descriptors),(cl_index)(&V1),(cl_index)(&V2)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,4,,); ecl_ihs_push(cl_env_copy,&ihs,VV[1],_ecl_debug_env); TTL: { cl_object V3; /* LET4 */ cl_object V4; /* LET5 */ cl_object V5; /* TEMP */ cl_object V6; /* A */ cl_object V7; /* B */ V3 = cl_copy_list(V1); V4 = cl_copy_list(V2); V5 = ECL_NIL; V6 = V3; V7 = V4; { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"COMMON-LISP-USER::B",_ecl_object_loc} ,{"COMMON-LISP-USER::A",_ecl_object_loc} ,{"COMMON-LISP-USER::TEMP",_ecl_object_loc} ,{"COMMON-LISP-USER::LET5",_ecl_object_loc} ,{"COMMON-LISP-USER::LET4",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(_ecl_debug_env),(cl_index)(_ecl_descriptors),(cl_index)(&V7),(cl_index)(&V6),(cl_index)(&V5),(cl_index)(&V4),(cl_index)(&V3)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,7,,); ihs.lex_env = _ecl_debug_env; L7:; if (!(ecl_equal(ECL_NIL,V6))) { goto L9; } goto L8; L9:; { cl_object V8; V8 = V6; { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"#:G5",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(_ecl_debug_env),(cl_index)(_ecl_descriptors),(cl_index)(&V8)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,3,,); ihs.lex_env = _ecl_debug_env; { cl_object V9; V9 = ecl_car(V8); { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"#:G6",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(_ecl_debug_env),(cl_index)(_ecl_descriptors),(cl_index)(&V9)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,3,,); ihs.lex_env = _ecl_debug_env; V8 = ecl_cdr(V8); V6 = V8; T0 = V9; } ihs.lex_env = _ecl_debug_env; } } ihs.lex_env = _ecl_debug_env; } V5 = CONS(T0,V5); { cl_object V8; V8 = V7; { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"#:G8",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(_ecl_debug_env),(cl_index)(_ecl_descriptors),(cl_index)(&V8)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,3,,); ihs.lex_env = _ecl_debug_env; { cl_object V9; V9 = ecl_car(V8); { static const struct ecl_var_debug_info _ecl_descriptors[]={ {"#:G9",_ecl_object_loc}}; const cl_index _ecl_debug_info_raw[]={ (cl_index)(_ecl_debug_env),(cl_index)(_ecl_descriptors),(cl_index)(&V9)}; ecl_def_ct_vector(_ecl_debug_env,ecl_aet_index,_ecl_debug_info_raw,3,,); ihs.lex_env = _ecl_debug_env; V8 = ecl_cdr(V8); V7 = V8; T0 = V9; } ihs.lex_env = _ecl_debug_env; } } ihs.lex_env = _ecl_debug_env; } V5 = CONS(T0,V5); goto L7; L8:; value0 = cl_reverse(V5); ecl_ihs_pop(cl_env_copy); return value0; } ihs.lex_env = _ecl_debug_env; } } } }