/* GCC MELT GENERATED FILE warmelt-outobj.0+03.c - DO NOT EDIT */ /* secondary MELT generated C file of rank #3 */ #include "run-melt.h" /**** warmelt-outobj.0+03.c declarations ****/ #define MELT_HAS_INITIAL_ENVIRONMENT 1 /**!!** *** Copyright 2008, 2009, 2010 Free Software Foundation, Inc. Contributed by Basile Starynkevitch This file is part of GCC. GCC is free software; you can redistribute it and/or modify it under the terms of the GNU General Public License as published by the Free Software Foundation; either version 3, or (at your option) any later version. GCC is distributed in the hope that it will be useful, but WITHOUT ANY WARRANTY; without even the implied warranty of MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU General Public License for more details. You should have received a copy of the GNU General Public License along with GCC; see the file COPYING3. If not see . *****!!**/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_1_warmelt_outobj_OUTDECLINIT_ROOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_2_warmelt_outobj_OUTPUCOD_OBJINIELEM(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_3_warmelt_outobj_OUTCINITFILL_ROOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_4_warmelt_outobj_OUTCINITPREDEF_ROOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_5_warmelt_outobj_OUTPUT_PREDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_6_warmelt_outobj_OUTPUCOD_PREDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_7_warmelt_outobj_OUTPUCOD_NIL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_8_warmelt_outobj_OUTDECLINIT_OBJINITOBJECT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_9_warmelt_outobj_OUTCINITFILL_OBJINITOBJECT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_10_warmelt_outobj_OUTCINITPREDEF_OBJINITOBJECT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_11_warmelt_outobj_OUTDECLINIT_OBJINITMULTIPLE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_12_warmelt_outobj_OUTCINITFILL_OBJINITMULTIPLE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_13_warmelt_outobj_OUTDECLINIT_OBJINITCLOSURE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_14_warmelt_outobj_OUTCINITFILL_OBJINITCLOSURE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_15_warmelt_outobj_OUTDECLINIT_OBJINITROUTINE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_16_warmelt_outobj_OUTCINITFILL_OBJINITROUTINE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_17_warmelt_outobj_OUTDECLINIT_OBJINITSTRING(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_18_warmelt_outobj_OUTCINITFILL_OBJINITSTRING(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_19_warmelt_outobj_OUTDECLINIT_OBJINITBOXEDINTEGER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_20_warmelt_outobj_OUTCINITFILL_OBJINITBOXEDINTEGER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_21_warmelt_outobj_OUTDECLINIT_OBJINITPAIR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_22_warmelt_outobj_OUTCINITFILL_OBJINITPAIR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_23_warmelt_outobj_OUTDECLINIT_OBJINITLIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_24_warmelt_outobj_OUTCINITFILL_OBJINITLIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_25_warmelt_outobj_OUTPUCOD_ANYDISCR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_26_warmelt_outobj_OUTPUCOD_NULL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_27_warmelt_outobj_OUTPUCOD_CATCHALL_ROOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_28_warmelt_outobj_OUTPUT_RAW_LOCATION(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_29_warmelt_outobj_OUTPUT_LOCATION(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_30_warmelt_outobj_OUTPUT_CURFRAME_DECLSTRUCT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_31_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_32_warmelt_outobj_OUTPUCOD_MARKER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_33_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_34_warmelt_outobj_OUTPUT_CURFRAME_DECLSTRUCT_INIT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_35_warmelt_outobj_OUTPUCOD_PROCROUTINE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_36_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_37_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_38_warmelt_outobj_OUTPUT_CURFRAME_CDAT_STRUCT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_39_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_40_warmelt_outobj_OUTPUT_CURFRAME_CDAT_FILL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_41_warmelt_outobj_OUTPUCOD_INITIALROUTINE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_42_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_43_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_44_warmelt_outobj_OUTPUCOD_GETARG(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_45_warmelt_outobj_OUTPUCOD_OBJLOCV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_46_warmelt_outobj_OUTPUCOD_OBJCLOCCV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_47_warmelt_outobj_OUTPUCOD_OBJCONSTV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_48_warmelt_outobj_OUTPUT_CODE_INSTRUCTIONS_LIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_49_warmelt_outobj_OUTPUCOD_OBJANYBLOCK(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_50_warmelt_outobj_OUTPUCOD_OBJMULTIALLOCBLOCK(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_51_warmelt_outobj_OUTPUCOD_OBJCITERBLOCK(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_52_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_53_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_54_warmelt_outobj_OUTPUCOD_OBJCOMMENTINSTR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_55_warmelt_outobj_OUTPUCOD_OBJCOMMENTEDBLOCK(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_56_warmelt_outobj_OUTPUCOD_OBJLABELINSTR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_57_warmelt_outobj_OUTPUCOD_OBJGOTOINSTR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_58_warmelt_outobj_ADD2SBUF_CLONSYM(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_59_warmelt_outobj_OUTPUCOD_OBJLOOP(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_60_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_61_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_62_warmelt_outobj_OUTPUCOD_OBJEXIT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_63_warmelt_outobj_OUTPUCOD_OBJCOMPUTE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_64_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_65_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_66_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_67_warmelt_outobj_OUTPUCOD_OBJCOND(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_68_warmelt_outobj_OUTPUCOD_OBJCPPIF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_69_warmelt_outobj_OUTPUCOD_OBJINTERNSYMBOL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_70_warmelt_outobj_OUTPUCOD_OBJINTERNKEYWORD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_71_warmelt_outobj_OUTPUCOD_OBJGETNAMEDSYMBOL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_72_warmelt_outobj_OUTPUCOD_OBJGETNAMEDKEYWORD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_73_warmelt_outobj_OUTPUCOD_OBJAPPLY(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_74_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_75_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_76_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_77_warmelt_outobj_OUTPUCOD_OBJMSEND(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_78_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_79_warmelt_outobj_OUTPUCOD_OBJMULTIAPPLY(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_80_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_81_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_82_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_83_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_84_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_85_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_86_warmelt_outobj_OUTPUCOD_OBJMULTIMSEND(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_87_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_88_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_89_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_90_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_91_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_92_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_93_warmelt_outobj_OUTPUCOD_OBJCLEAR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_94_warmelt_outobj_OUTPUCOD_OBJRAWALLOCOBJ(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_95_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_96_warmelt_outobj_OUTPUCOD_OBJNEWCLOSURE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_97_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_98_warmelt_outobj_OUTPUCOD_OBJTOUCH(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_99_warmelt_outobj_OUTPUCOD_OBJPUTUPLE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_100_warmelt_outobj_OUTPUCOD_OBJPUTPAIRHEAD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_101_warmelt_outobj_OUTPUCOD_OBJPUTPAIRTAIL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_102_warmelt_outobj_OUTPUCOD_OBJPUTLIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_103_warmelt_outobj_OUTPUCOD_OBJGETSLOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_104_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_105_warmelt_outobj_OUTPUCOD_OBJPUTSLOT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_106_warmelt_outobj_OUTPUCOD_OBJPUTCLOSUROUT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_107_warmelt_outobj_OUTPUCOD_OBJPUTCLOSEDV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_108_warmelt_outobj_OUTPUCOD_OBJPUTCLOSEDNOTNULLV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_109_warmelt_outobj_OUTPUCOD_OBJPUTROUTCONST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_110_warmelt_outobj_OUTPUCOD_OBJPUTROUTCONSTNOTNULL(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_111_warmelt_outobj_OUTPUCOD_OBJPUTXTRARESULT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_112_warmelt_outobj_OUTPUCOD_OBJEXPV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_113_warmelt_outobj_OUTPUCOD_OBJLOCATEDEXPV(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_114_warmelt_outobj_OUTPUCOD_VERBATIMSTRING(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_115_warmelt_outobj_OUTPUCOD_STRING(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_116_warmelt_outobj_OUTPUCOD_INTEGER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_117_warmelt_outobj_OUTPUCOD_FINALRETURN(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_118_warmelt_outobj_SORTED_NAMED_DICT_TUPLE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_119_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_120_warmelt_outobj_OUTPUT_EXPORTED_OFFSETS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_121_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_122_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_123_warmelt_outobj_NTH_SECUNDARY_FILE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_124_warmelt_outobj_TRANSLATE_MACROEXPANDED_LIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_125_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_126_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_127_warmelt_outobj_COMPILE_LIST_SEXPR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_128_warmelt_outobj_INSTALL_MELT_MODE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_129_warmelt_outobj_COMPILE_ONE_OR_MORE_FILES(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_130_warmelt_outobj_TRANSLATEFILE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_131_warmelt_outobj_TRANSLATETOMODULE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_132_warmelt_outobj_TRANSLATEDEBUG_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_133_warmelt_outobj_RUNFILE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_134_warmelt_outobj_TRANSLATEINIT_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_135_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_136_warmelt_outobj_MAKEDOC_SCANINPUT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_137_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_138_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_139_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_140_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_141_warmelt_outobj_MAKEDOC_OUTDEFLOC(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_142_warmelt_outobj_MAKEDOC_OUTFORMALS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_143_warmelt_outobj_MAKEDOC_OUTDOC(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_144_warmelt_outobj_MAKEDOC_OUTCLASSDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_145_warmelt_outobj_MAKEDOC_GENMACRO(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_146_warmelt_outobj_MAKEDOC_GENPATMACRO(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_147_warmelt_outobj_MAKEDOC_GENCLASS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_148_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_149_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_150_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_151_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_152_warmelt_outobj_MAKEDOC_OUTPRIMITIVEDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_153_warmelt_outobj_MAKEDOC_GENPRIMITIVE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_154_warmelt_outobj_MAKEDOC_OUTFUNCTIONDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_155_warmelt_outobj_MAKEDOC_GENFUNCTION(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_156_warmelt_outobj_MAKEDOC_GENCITERATOR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_157_warmelt_outobj_MAKEDOC_GENCMATCHER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_158_warmelt_outobj_MAKEDOC_GENOUTPUT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_159_warmelt_outobj_MAKEDOC_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); melt_ptr_t MELT_MODULE_VISIBILITY meltrout_160_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_); void* start_module_melt(void*); void mark_module_melt(void*); void* initial_frame_melt; struct frame_start_module_melt_st; void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_0 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_1 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_2 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_3 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_4 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_5 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_6 (struct frame_start_module_melt_st*, char*); void MELT_MODULE_VISIBILITY warmelt_outobj_initialmeltchunk_7 (struct frame_start_module_melt_st*, char*); /**** warmelt-outobj.0+03.c implementations ****/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_117_warmelt_outobj_OUTPUCOD_FINALRETURN(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_117_warmelt_outobj_OUTPUCOD_FINALRETURN_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 8 void* varptr[8]; #define MELTFRAM_NBVARNUM 2 long varnum[2]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<8; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 8; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("OUTPUCOD_FINALRETURN", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3360:/ getarg"); /*_.FRET__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DECLBUF__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DECLBUF__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.IMPLBUF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_LONG) goto lab_endgetargs; /*_#DEPTH__L1*/ meltfnum[0] = xargtab_[2].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3361:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.FRET__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_OBJFINALRETURN*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3361:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3361:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check fret"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3361)?(3361):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3361:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3362:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FRET__V2*/ meltfptr[1]), 0, "OBI_LOC");/*_.OBI_LOC__V7*/ meltfptr[5] = slot; }; ; /*^apply*/ /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.IMPLBUF__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_long = /*_#DEPTH__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "finalreturn"; /*_.OUTPUT_LOCATION__V8*/ meltfptr[7] = melt_apply ((meltclosure_ptr_t)((/*!OUTPUT_LOCATION*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.OBI_LOC__V7*/ meltfptr[5]), (BPARSTR_PTR BPARSTR_LONG BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3363:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), ( ";"));} ; { MELT_LOCATION("warmelt-outobj.melt:3364:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), (/*_#DEPTH__L1*/ meltfnum[0]), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3365:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), ( "/*finalret*/ goto labend_rout "));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3360:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.OBI_LOC__V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.OUTPUT_LOCATION__V8*/ meltfptr[7] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("OUTPUCOD_FINALRETURN", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_117_warmelt_outobj_OUTPUCOD_FINALRETURN*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_118_warmelt_outobj_SORTED_NAMED_DICT_TUPLE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_118_warmelt_outobj_SORTED_NAMED_DICT_TUPLE_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 10 void* varptr[10]; #define MELTFRAM_NBVARNUM 1 long varnum[1]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<10; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 10; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("SORTED_NAMED_DICT_TUPLE", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3371:/ getarg"); /*_.DIC__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3372:/ quasiblock"); /*_#DICNT__L1*/ meltfnum[0] = (melt_count_mapstrings((struct meltmapstrings_st*)(/*_.DIC__V2*/ meltfptr[1])));; /*^compute*/ /*_.ENTLIST__V4*/ meltfptr[3] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[0]))));; MELT_LOCATION("warmelt-outobj.melt:3376:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V6*/ meltfptr[5] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_3*/ meltfrout->tabval[3])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V6*/ meltfptr[5])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V6*/ meltfptr[5]))); ((meltclosure_ptr_t)/*_.LAMBDA___V6*/ meltfptr[5])->tabval[0] = (melt_ptr_t)(/*_.ENTLIST__V4*/ meltfptr[3]); ; /*_.LAMBDA___V5*/ meltfptr[4] = /*_.LAMBDA___V6*/ meltfptr[5];; MELT_LOCATION("warmelt-outobj.melt:3375:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V5*/ meltfptr[4]; /*_.MAPSTRING_EVERY__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!MAPSTRING_EVERY*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.DIC__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:3379:/ quasiblock"); /*^apply*/ /*apply*/{ /*_.RAWTUP__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.ENTLIST__V4*/ meltfptr[3]), (""), (union meltparam_un*)0, "", (union meltparam_un*)0); } ; /*_.MULTIPLE_SORT__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWTUP__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[5])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[6])));; /*^compute*/ /*_.LET___V8*/ meltfptr[7] = /*_.MULTIPLE_SORT__V10*/ meltfptr[9];; MELT_LOCATION("warmelt-outobj.melt:3379:/ clear"); /*clear*/ /*_.RAWTUP__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.MULTIPLE_SORT__V10*/ meltfptr[9] = 0 ; /*_.LET___V3*/ meltfptr[2] = /*_.LET___V8*/ meltfptr[7];; MELT_LOCATION("warmelt-outobj.melt:3372:/ clear"); /*clear*/ /*_#DICNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.ENTLIST__V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.MAPSTRING_EVERY__V7*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V8*/ meltfptr[7] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3371:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V3*/ meltfptr[2];; MELT_LOCATION("warmelt-outobj.melt:3371:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.LET___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("SORTED_NAMED_DICT_TUPLE", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_118_warmelt_outobj_SORTED_NAMED_DICT_TUPLE*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_119_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_119_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 5 void* varptr[5]; #define MELTFRAM_NBVARNUM 1 long varnum[1]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<5; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 5; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3376:/ getarg"); /*_.NAM__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.ENT__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.ENT__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3377:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.ENT__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3377:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3377:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check ent named"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3377)?(3377):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3377:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3378:/ locexp"); meltgc_append_list((melt_ptr_t)((/*~ENTLIST*/ meltfclos->tabval[0])), (melt_ptr_t)(/*_.ENT__V3*/ meltfptr[2]));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3376:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_119_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_120_warmelt_outobj_OUTPUT_EXPORTED_OFFSETS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_120_warmelt_outobj_OUTPUT_EXPORTED_OFFSETS_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 18 void* varptr[18]; #define MELTFRAM_NBVARNUM 2 long varnum[2]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<18; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 18; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("OUTPUT_EXPORTED_OFFSETS", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3385:/ getarg"); /*_.MODCTX__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DECLBUF__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DECLBUF__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.IMPLBUF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3386:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3386:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "output_exported_offsets modctx"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3386; /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V5*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3386:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3387:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:3387:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3387:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modctx"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3387)?(3387):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3387:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3388:/ quasiblock"); MELT_LOCATION("warmelt-outobj.melt:3389:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), 1, "MOCX_EXPFIELDICT");/*_.MOCX_EXPFIELDICT__V9*/ meltfptr[7] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3388:/ apply"); /*apply*/{ /*_.SORTEDFIELDS__V10*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!SORTED_NAMED_DICT_TUPLE*/ meltfrout->tabval[2])), (melt_ptr_t)(/*_.MOCX_EXPFIELDICT__V9*/ meltfptr[7]), (""), (union meltparam_un*)0, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:3391:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), 2, "MOCX_EXPCLASSDICT");/*_.MOCX_EXPCLASSDICT__V11*/ meltfptr[10] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3390:/ apply"); /*apply*/{ /*_.SORTEDCLASSES__V12*/ meltfptr[11] = melt_apply ((meltclosure_ptr_t)((/*!SORTED_NAMED_DICT_TUPLE*/ meltfrout->tabval[2])), (melt_ptr_t)(/*_.MOCX_EXPCLASSDICT__V11*/ meltfptr[10]), (""), (union meltparam_un*)0, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3393:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3394:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), ( "/* exported field offsets */"));} ; MELT_LOCATION("warmelt-outobj.melt:3397:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V14*/ meltfptr[13] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_5*/ meltfrout->tabval[5])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V14*/ meltfptr[13])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V14*/ meltfptr[13]))); ((meltclosure_ptr_t)/*_.LAMBDA___V14*/ meltfptr[13])->tabval[0] = (melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]); ; /*_.LAMBDA___V13*/ meltfptr[12] = /*_.LAMBDA___V14*/ meltfptr[13];; MELT_LOCATION("warmelt-outobj.melt:3395:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V13*/ meltfptr[12]; /*_.MULTIPLE_EVERY__V15*/ meltfptr[14] = melt_apply ((meltclosure_ptr_t)((/*!MULTIPLE_EVERY*/ meltfrout->tabval[3])), (melt_ptr_t)(/*_.SORTEDFIELDS__V10*/ meltfptr[9]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3406:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3407:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3408:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), ( "/* exported class lengths */"));} ; MELT_LOCATION("warmelt-outobj.melt:3411:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V17*/ meltfptr[16] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_7*/ meltfrout->tabval[7])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V17*/ meltfptr[16])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V17*/ meltfptr[16]))); ((meltclosure_ptr_t)/*_.LAMBDA___V17*/ meltfptr[16])->tabval[0] = (melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]); ; /*_.LAMBDA___V16*/ meltfptr[15] = /*_.LAMBDA___V17*/ meltfptr[16];; MELT_LOCATION("warmelt-outobj.melt:3409:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V16*/ meltfptr[15]; /*_.MULTIPLE_EVERY__V18*/ meltfptr[17] = melt_apply ((meltclosure_ptr_t)((/*!MULTIPLE_EVERY*/ meltfrout->tabval[3])), (melt_ptr_t)(/*_.SORTEDCLASSES__V12*/ meltfptr[11]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3421:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.IMPLBUF__V4*/ meltfptr[3]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:3388:/ clear"); /*clear*/ /*_.MOCX_EXPFIELDICT__V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDFIELDS__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.MOCX_EXPCLASSDICT__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDCLASSES__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.MULTIPLE_EVERY__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.MULTIPLE_EVERY__V18*/ meltfptr[17] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3385:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("OUTPUT_EXPORTED_OFFSETS", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_120_warmelt_outobj_OUTPUT_EXPORTED_OFFSETS*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_121_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_121_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 5 void* varptr[5]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<5; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 5; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3397:/ getarg"); /*_.FLD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_LONG) goto lab_endgetargs; /*_#IX__L1*/ meltfnum[0] = xargtab_[0].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3398:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.FLD__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_FIELD*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3398:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V4*/ meltfptr[3] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3398:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check fld"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3398)?(3398):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V3*/ meltfptr[2] = /*_.IFELSE___V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3398:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3399:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3400:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( "const int meltfieldoff__"));} ; MELT_LOCATION("warmelt-outobj.melt:3401:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FLD__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.NAMED_NAME__V5*/ meltfptr[3] = slot; }; ; { /*^locexp*/ meltgc_add_strbuf_cident((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V5*/ meltfptr[3])));} ; { MELT_LOCATION("warmelt-outobj.melt:3402:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( " = "));} ; /*_#GET_INT__L3*/ meltfnum[1] = (melt_get_int((melt_ptr_t)(/*_.FLD__V2*/ meltfptr[1])));; { MELT_LOCATION("warmelt-outobj.melt:3403:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), (/*_#GET_INT__L3*/ meltfnum[1]));} ; { MELT_LOCATION("warmelt-outobj.melt:3404:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( ";"));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3397:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#GET_INT__L3*/ meltfnum[1] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_121_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_122_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_122_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 6 void* varptr[6]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<6; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 6; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3411:/ getarg"); /*_.CLA__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_LONG) goto lab_endgetargs; /*_#IX__L1*/ meltfnum[0] = xargtab_[0].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3412:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.CLA__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3412:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V4*/ meltfptr[3] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3412:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cla"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3412)?(3412):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V3*/ meltfptr[2] = /*_.IFELSE___V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3412:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3413:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3414:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( "const int meltclasslen__"));} ; MELT_LOCATION("warmelt-outobj.melt:3415:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.NAMED_NAME__V5*/ meltfptr[3] = slot; }; ; { /*^locexp*/ meltgc_add_strbuf_cident((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V5*/ meltfptr[3])));} ; { MELT_LOCATION("warmelt-outobj.melt:3416:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( " = "));} ; MELT_LOCATION("warmelt-outobj.melt:3418:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V2*/ meltfptr[1]), 6, "CLASS_FIELDS");/*_.CLASS_FIELDS__V6*/ meltfptr[5] = slot; }; ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[1] = (melt_multiple_length((melt_ptr_t)(/*_.CLASS_FIELDS__V6*/ meltfptr[5])));; { MELT_LOCATION("warmelt-outobj.melt:3417:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[1]));} ; { MELT_LOCATION("warmelt-outobj.melt:3419:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~IMPLBUF*/ meltfclos->tabval[0])), ( ";"));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3411:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.CLASS_FIELDS__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[1] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_122_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_123_warmelt_outobj_NTH_SECUNDARY_FILE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_123_warmelt_outobj_NTH_SECUNDARY_FILE_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 27 void* varptr[27]; #define MELTFRAM_NBVARNUM 8 long varnum[8]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<27; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 27; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("NTH_SECUNDARY_FILE", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3445:/ getarg"); /*_.MODCTX__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODNAMSTR__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.DECLBUF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DECLBUF__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_LONG) goto lab_endgetargs; /*_#IX__L1*/ meltfnum[0] = xargtab_[2].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3446:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3446:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3446:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modctx"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3446)?(3446):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3446:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3447:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L3*/ meltfnum[1] = (melt_magic_discr((melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3447:/ cond"); /*cond*/ if (/*_#IS_STRING__L3*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3447:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modnamstr"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3447)?(3447):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3447:/ clear"); /*clear*/ /*_#IS_STRING__L3*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3448:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L4*/ meltfnum[1] = (melt_magic_discr((melt_ptr_t)(/*_.DECLBUF__V4*/ meltfptr[3])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:3448:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L4*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V10*/ meltfptr[9] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3448:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check declbuf"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3448)?(3448):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V9*/ meltfptr[7] = /*_.IFELSE___V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3448:/ clear"); /*clear*/ /*_#IS_STRBUF__L4*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_#WANTS_SINGLE_C_FILE__L5*/ meltfnum[1] = melt_wants_single_c_file () ;; MELT_LOCATION("warmelt-outobj.melt:3449:/ cond"); /*cond*/ if (/*_#WANTS_SINGLE_C_FILE__L5*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3449:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V11*/ meltfptr[9] = /*_.RETURN___V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3449:/ clear"); /*clear*/ /*_.RETURN___V12*/ meltfptr[11] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V11*/ meltfptr[9] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3450:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODCTX__V2*/ meltfptr[1]), 5, "MOCX_FILETUPLE");/*_.MOFILES__V14*/ meltfptr[13] = slot; }; ; } else {/*^cond.else*/ /*_.MOFILES__V14*/ meltfptr[13] = NULL;; } ; /*^compute*/ /*_#NBFILES__L6*/ meltfnum[5] = (melt_multiple_length((melt_ptr_t)(/*_.MOFILES__V14*/ meltfptr[13])));; /*^compute*/ /*_.NTHFILE__V15*/ meltfptr[14] = (melt_multiple_nth((melt_ptr_t)(/*_.MOFILES__V14*/ meltfptr[13]), (/*_#IX__L1*/ meltfnum[0])));; MELT_LOCATION("warmelt-outobj.melt:3454:/ cond"); /*cond*/ if (/*_.NTHFILE__V15*/ meltfptr[14]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = /*_.NTHFILE__V15*/ meltfptr[14];; MELT_LOCATION("warmelt-outobj.melt:3454:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V16*/ meltfptr[15] = /*_.RETURN___V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3454:/ clear"); /*clear*/ /*_.RETURN___V17*/ meltfptr[16] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V16*/ meltfptr[15] = NULL;; } ; /*^compute*/ /*_#I__L7*/ meltfnum[6] = ((/*_#IX__L1*/ meltfnum[0]) <= (0));; MELT_LOCATION("warmelt-outobj.melt:3455:/ cond"); /*cond*/ if (/*_#I__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3455:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V18*/ meltfptr[16] = /*_.RETURN___V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3455:/ clear"); /*clear*/ /*_.RETURN___V19*/ meltfptr[18] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V18*/ meltfptr[16] = NULL;; } ; /*^compute*/ /*_#I__L8*/ meltfnum[7] = ((/*_#IX__L1*/ meltfnum[0]) >= (/*_#NBFILES__L6*/ meltfnum[5]));; MELT_LOCATION("warmelt-outobj.melt:3456:/ cond"); /*cond*/ if (/*_#I__L8*/ meltfnum[7]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3456:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V20*/ meltfptr[18] = /*_.RETURN___V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3456:/ clear"); /*clear*/ /*_.RETURN___V21*/ meltfptr[20] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V20*/ meltfptr[18] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3458:/ quasiblock"); /*_.PATH__V23*/ meltfptr[22] = meltgc_new_string_generated_c_filename ((meltobject_ptr_t) ((/*!DISCR_STRING*/ meltfrout->tabval[1])), melt_string_str((/*_.MODNAMSTR__V3*/ meltfptr[2])), melt_string_str(((/*nil*/NULL))), (/*_#IX__L1*/ meltfnum[0]));; /*^compute*/ /*_.IMPLBUF__V24*/ meltfptr[23] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[2])), (char*)0);; MELT_LOCATION("warmelt-outobj.melt:3464:/ quasiblock"); /*^rawallocobj*/ /*rawallocobj*/ { melt_ptr_t newobj = 0; melt_raw_object_create(newobj,(melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[3])), (4), "CLASS_SECONDARY_C_FILE");/*_.INST__V26*/ meltfptr[25] = newobj; }; ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @SECFIL_MODNAM", melt_magic_discr((melt_ptr_t)(/*_.INST__V26*/ meltfptr[25])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V26*/ meltfptr[25]), (0), (/*_.MODNAMSTR__V3*/ meltfptr[2]), "SECFIL_MODNAM"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @SECFIL_PATH", melt_magic_discr((melt_ptr_t)(/*_.INST__V26*/ meltfptr[25])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V26*/ meltfptr[25]), (1), (/*_.PATH__V23*/ meltfptr[22]), "SECFIL_PATH"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @SECFIL_DECLBUF", melt_magic_discr((melt_ptr_t)(/*_.INST__V26*/ meltfptr[25])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V26*/ meltfptr[25]), (2), (/*_.DECLBUF__V4*/ meltfptr[3]), "SECFIL_DECLBUF"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @SECFIL_IMPLBUF", melt_magic_discr((melt_ptr_t)(/*_.INST__V26*/ meltfptr[25])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V26*/ meltfptr[25]), (3), (/*_.IMPLBUF__V24*/ meltfptr[23]), "SECFIL_IMPLBUF"); ; /*_.NEWFILE__V25*/ meltfptr[24] = /*_.INST__V26*/ meltfptr[25];; { MELT_LOCATION("warmelt-outobj.melt:3470:/ locexp"); melt_put_int((melt_ptr_t)(/*_.NEWFILE__V25*/ meltfptr[24]), (/*_#IX__L1*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:3471:/ locexp"); meltgc_multiple_put_nth((melt_ptr_t)(/*_.MOFILES__V14*/ meltfptr[13]), (/*_#IX__L1*/ meltfnum[0]), (melt_ptr_t)(/*_.NEWFILE__V25*/ meltfptr[24]));} ; MELT_LOCATION("warmelt-outobj.melt:3472:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.NEWFILE__V25*/ meltfptr[24];; MELT_LOCATION("warmelt-outobj.melt:3472:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.LET___V22*/ meltfptr[20] = /*_.RETURN___V27*/ meltfptr[26];; MELT_LOCATION("warmelt-outobj.melt:3458:/ clear"); /*clear*/ /*_.PATH__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.IMPLBUF__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.NEWFILE__V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.RETURN___V27*/ meltfptr[26] = 0 ; /*_.LET___V13*/ meltfptr[11] = /*_.LET___V22*/ meltfptr[20];; MELT_LOCATION("warmelt-outobj.melt:3450:/ clear"); /*clear*/ /*_.MOFILES__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_#NBFILES__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.NTHFILE__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_#I__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V18*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_#I__L8*/ meltfnum[7] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V20*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V22*/ meltfptr[20] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3445:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V13*/ meltfptr[11];; MELT_LOCATION("warmelt-outobj.melt:3445:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_#WANTS_SINGLE_C_FILE__L5*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V11*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V13*/ meltfptr[11] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("NTH_SECUNDARY_FILE", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_123_warmelt_outobj_NTH_SECUNDARY_FILE*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_124_warmelt_outobj_TRANSLATE_MACROEXPANDED_LIST(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_124_warmelt_outobj_TRANSLATE_MACROEXPANDED_LIST_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 90 void* varptr[90]; #define MELTFRAM_NBVARNUM 34 long varnum[34]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<90; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 90; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("TRANSLATE_MACROEXPANDED_LIST", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3478:/ getarg"); /*_.XLIST__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODNAMSTR__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.MODCTX__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_PTR) goto lab_endgetargs; /*_.NCX__V5*/ meltfptr[4] = (xargtab_[2].bp_aptr) ? (*(xargtab_[2].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3479:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3479:/ cond"); /*cond*/ if (/*_#IS_LIST__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3479:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check xlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3479)?(3479):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[5] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3479:/ clear"); /*clear*/ /*_#IS_LIST__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3480:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3480:/ cond"); /*cond*/ if (/*_#IS_STRING__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V9*/ meltfptr[8] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3480:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modnamstr"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3480)?(3480):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V9*/ meltfptr[8] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V8*/ meltfptr[6] = /*_.IFELSE___V9*/ meltfptr[8];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3480:/ clear"); /*clear*/ /*_#IS_STRING__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V9*/ meltfptr[8] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V8*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3481:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L3*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3481:/ cond"); /*cond*/ if (/*_#IS_A__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V11*/ meltfptr[10] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3481:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modctx"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3481)?(3481):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V10*/ meltfptr[8] = /*_.IFELSE___V11*/ meltfptr[10];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3481:/ clear"); /*clear*/ /*_#IS_A__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V10*/ meltfptr[8] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3482:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L4*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), (melt_ptr_t)((/*!CLASS_NORMALIZATION_CONTEXT*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:3482:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[12] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3482:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check ncx"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3482)?(3482):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V12*/ meltfptr[10] = /*_.IFELSE___V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3482:/ clear"); /*clear*/ /*_#IS_A__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[10] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3483:/ quasiblock"); MELT_LOCATION("warmelt-outobj.melt:3484:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), 3, "MOCX_INITIALENV");/*_.INIENV__V14*/ meltfptr[12] = slot; }; ; /*_.LIST_FIRST__V15*/ meltfptr[14] = (melt_list_first((melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1])));; /*^compute*/ /*_.FIRSTX__V16*/ meltfptr[15] = (melt_pair_head((melt_ptr_t)(/*_.LIST_FIRST__V15*/ meltfptr[14])));; /*^compute*/ /*_#IS_A__L5*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.FIRSTX__V16*/ meltfptr[15]), (melt_ptr_t)((/*!CLASS_SOURCE*/ meltfrout->tabval[2])));; MELT_LOCATION("warmelt-outobj.melt:3486:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FIRSTX__V16*/ meltfptr[15]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V18*/ meltfptr[17] = slot; }; ; /*_.FIRSTLOC__V17*/ meltfptr[16] = /*_.LOCA_LOCATION__V18*/ meltfptr[17];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3486:/ clear"); /*clear*/ /*_.LOCA_LOCATION__V18*/ meltfptr[17] = 0 ;} ; } else {/*^cond.else*/ /*_.FIRSTLOC__V17*/ meltfptr[16] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3487:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 0, "NCTX_INITPROC");/*_.INIPROC__V19*/ meltfptr[17] = slot; }; ; /*_.DECLBUF__V20*/ meltfptr[19] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[3])), (char*)0);; /*^compute*/ /*_.IMPLBUF__V21*/ meltfptr[20] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[3])), (char*)0);; MELT_LOCATION("warmelt-outobj.melt:3491:/ quasiblock"); /*^rawallocobj*/ /*rawallocobj*/ { melt_ptr_t newobj = 0; melt_raw_object_create(newobj,(melt_ptr_t)((/*!CLASS_SOURCE_UPDATE_CURRENT_MODULE_ENVIRONMENT_CONTAINER*/ meltfrout->tabval[4])), (3), "CLASS_SOURCE_UPDATE_CURRENT_MODULE_ENVIRONMENT_CONTAINER");/*_.INST__V23*/ meltfptr[22] = newobj; }; ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @LOCA_LOCATION", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (1), (/*_.FIRSTLOC__V17*/ meltfptr[16]), "LOCA_LOCATION"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @SUCME_COMMENT", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (2), ((/*!konst_5*/ meltfrout->tabval[5])), "SUCME_COMMENT"); ; /*_.UCMEB1__V22*/ meltfptr[21] = /*_.INST__V23*/ meltfptr[22];; /*^compute*/ /*_#__L6*/ meltfnum[5] = ((/*_.INIENV__V14*/ meltfptr[12]) == ((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[6])));; MELT_LOCATION("warmelt-outobj.melt:3496:/ cond"); /*cond*/ if (/*_#__L6*/ meltfnum[5]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3497:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.DECLBUF__V20*/ meltfptr[19]), ( "#define MELT_HAS_INITIAL_ENVIRONMENT 0"));} ; /*epilog*/ } ; } else {MELT_LOCATION("warmelt-outobj.melt:3496:/ cond.else"); /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3498:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.DECLBUF__V20*/ meltfptr[19]), ( "#define MELT_HAS_INITIAL_ENVIRONMENT 1"));} ; /*epilog*/ } ; } ; { MELT_LOCATION("warmelt-outobj.melt:3500:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.DECLBUF__V20*/ meltfptr[19]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3501:/ locexp"); meltgc_prepend_list((melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1]), (melt_ptr_t)(/*_.UCMEB1__V22*/ meltfptr[21]));} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3502:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3502:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after macroexpansion compile_list_sexpr seq"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3502; /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V24*/ meltfptr[23] = /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3502:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V24*/ meltfptr[23] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3503:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3503:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after macroexpansion compile_list_sexpr inienv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3503; /*_.DEBUG_MSG_FUN__V27*/ meltfptr[26] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.INIENV__V14*/ meltfptr[12]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V26*/ meltfptr[24] = /*_.DEBUG_MSG_FUN__V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3503:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V27*/ meltfptr[26] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V26*/ meltfptr[24] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3504:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L9*/ meltfnum[6] = melt_is_instance_of((melt_ptr_t)(/*_.INIPROC__V19*/ meltfptr[17]), (melt_ptr_t)((/*!CLASS_NREP_INITPROC*/ meltfrout->tabval[8])));; MELT_LOCATION("warmelt-outobj.melt:3504:/ cond"); /*cond*/ if (/*_#IS_A__L9*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V29*/ meltfptr[28] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3504:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check iniproc"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3504)?(3504):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V29*/ meltfptr[28] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V28*/ meltfptr[26] = /*_.IFELSE___V29*/ meltfptr[28];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3504:/ clear"); /*clear*/ /*_#IS_A__L9*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V29*/ meltfptr[28] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V28*/ meltfptr[26] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3505:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L10*/ meltfnum[6] = (melt_magic_discr((melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3505:/ cond"); /*cond*/ if (/*_#IS_LIST__L10*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V31*/ meltfptr[30] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3505:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check xlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3505)?(3505):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V31*/ meltfptr[30] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V30*/ meltfptr[28] = /*_.IFELSE___V31*/ meltfptr[30];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3505:/ clear"); /*clear*/ /*_#IS_LIST__L10*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V31*/ meltfptr[30] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V30*/ meltfptr[28] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3509:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V33*/ meltfptr[32] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_17*/ meltfrout->tabval[17])), (4)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V33*/ meltfptr[32])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V33*/ meltfptr[32]))); ((meltclosure_ptr_t)/*_.LAMBDA___V33*/ meltfptr[32])->tabval[0] = (melt_ptr_t)(/*_.DECLBUF__V20*/ meltfptr[19]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V33*/ meltfptr[32])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 1>= 0 && 1< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V33*/ meltfptr[32]))); ((meltclosure_ptr_t)/*_.LAMBDA___V33*/ meltfptr[32])->tabval[1] = (melt_ptr_t)(/*_.INIENV__V14*/ meltfptr[12]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V33*/ meltfptr[32])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 2>= 0 && 2< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V33*/ meltfptr[32]))); ((meltclosure_ptr_t)/*_.LAMBDA___V33*/ meltfptr[32])->tabval[2] = (melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V33*/ meltfptr[32])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 3>= 0 && 3< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V33*/ meltfptr[32]))); ((meltclosure_ptr_t)/*_.LAMBDA___V33*/ meltfptr[32])->tabval[3] = (melt_ptr_t)(/*_.INIPROC__V19*/ meltfptr[17]); ; /*_.LAMBDA___V32*/ meltfptr[30] = /*_.LAMBDA___V33*/ meltfptr[32];; MELT_LOCATION("warmelt-outobj.melt:3507:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V32*/ meltfptr[30]; /*_.LIST_EVERY__V34*/ meltfptr[33] = melt_apply ((meltclosure_ptr_t)((/*!LIST_EVERY*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3542:/ locexp"); if (melt_error_counter>0) melt_fatal_error ("MELT translation of %s halted after normalization: got %ld MELT errors", melt_string_str(/*_.MODNAMSTR__V3*/ meltfptr[2]), melt_error_counter) ; ;} ; MELT_LOCATION("warmelt-outobj.melt:3547:/ quasiblock"); /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 1, "NCTX_PROCLIST");/*_.PROLIST__V35*/ meltfptr[34] = slot; }; ; /*_.OBJLIST__V36*/ meltfptr[35] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[18]))));; /*^compute*/ /*_#LIST_LENGTH__L11*/ meltfnum[6] = (melt_list_length((melt_ptr_t)(/*_.XLIST__V2*/ meltfptr[1])));; /*^compute*/ /*_#I__L12*/ meltfnum[11] = ((20) * (/*_#LIST_LENGTH__L11*/ meltfnum[6]));; /*^compute*/ /*_#I__L13*/ meltfnum[12] = ((10) + (/*_#I__L12*/ meltfnum[11]));; /*^compute*/ /*_.COMPICACHE__V37*/ meltfptr[36] = (meltgc_new_mapobjects( (meltobject_ptr_t) ((/*!DISCR_MAP_OBJECTS*/ meltfrout->tabval[19])), (/*_#I__L13*/ meltfnum[12])));; /*^compute*/ /*_.COUNTBOX__V38*/ meltfptr[37] = (meltgc_new_int((meltobject_ptr_t)((/*!DISCR_INTEGER*/ meltfrout->tabval[20])), (0)));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3552:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3552:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr prolist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3552; /*_.DEBUG_MSG_FUN__V40*/ meltfptr[39] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.PROLIST__V35*/ meltfptr[34]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V39*/ meltfptr[38] = /*_.DEBUG_MSG_FUN__V40*/ meltfptr[39];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3552:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V40*/ meltfptr[39] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V39*/ meltfptr[38] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3553:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L15*/ meltfnum[13] = (melt_magic_discr((melt_ptr_t)(/*_.PROLIST__V35*/ meltfptr[34])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3553:/ cond"); /*cond*/ if (/*_#IS_LIST__L15*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V42*/ meltfptr[41] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3553:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check prolist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3553)?(3553):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V42*/ meltfptr[41] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V41*/ meltfptr[39] = /*_.IFELSE___V42*/ meltfptr[41];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3553:/ clear"); /*clear*/ /*_#IS_LIST__L15*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V42*/ meltfptr[41] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V41*/ meltfptr[39] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3556:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V44*/ meltfptr[43] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_24*/ meltfrout->tabval[24])), (4)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V44*/ meltfptr[43])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V44*/ meltfptr[43]))); ((meltclosure_ptr_t)/*_.LAMBDA___V44*/ meltfptr[43])->tabval[0] = (melt_ptr_t)(/*_.COUNTBOX__V38*/ meltfptr[37]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V44*/ meltfptr[43])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 1>= 0 && 1< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V44*/ meltfptr[43]))); ((meltclosure_ptr_t)/*_.LAMBDA___V44*/ meltfptr[43])->tabval[1] = (melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V44*/ meltfptr[43])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 2>= 0 && 2< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V44*/ meltfptr[43]))); ((meltclosure_ptr_t)/*_.LAMBDA___V44*/ meltfptr[43])->tabval[2] = (melt_ptr_t)(/*_.COMPICACHE__V37*/ meltfptr[36]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V44*/ meltfptr[43])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 3>= 0 && 3< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V44*/ meltfptr[43]))); ((meltclosure_ptr_t)/*_.LAMBDA___V44*/ meltfptr[43])->tabval[3] = (melt_ptr_t)(/*_.OBJLIST__V36*/ meltfptr[35]); ; /*_.LAMBDA___V43*/ meltfptr[41] = /*_.LAMBDA___V44*/ meltfptr[43];; MELT_LOCATION("warmelt-outobj.melt:3554:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V43*/ meltfptr[41]; /*_.LIST_EVERY__V45*/ meltfptr[44] = melt_apply ((meltclosure_ptr_t)((/*!LIST_EVERY*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.PROLIST__V35*/ meltfptr[34]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3569:/ locexp"); /*CHECK_ERRORS_AFTER_COMPILATION__1*/ if (melt_error_counter>0) melt_fatal_error ("MELT translation of %s halted after MELT compilation: got %ld MELT errors", melt_string_str(/*_.MODNAMSTR__V3*/ meltfptr[2]), melt_error_counter) ; ;} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3575:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L16*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3575:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr objlist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L16*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3575; /*_.DEBUG_MSG_FUN__V47*/ meltfptr[46] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.OBJLIST__V36*/ meltfptr[35]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V46*/ meltfptr[45] = /*_.DEBUG_MSG_FUN__V47*/ meltfptr[46];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3575:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L16*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V47*/ meltfptr[46] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V46*/ meltfptr[45] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3576:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L17*/ meltfnum[13] = (melt_magic_discr((melt_ptr_t)(/*_.OBJLIST__V36*/ meltfptr[35])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3576:/ cond"); /*cond*/ if (/*_#IS_LIST__L17*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V49*/ meltfptr[48] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3576:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check objlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3576)?(3576):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V49*/ meltfptr[48] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V48*/ meltfptr[46] = /*_.IFELSE___V49*/ meltfptr[48];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3576:/ clear"); /*clear*/ /*_#IS_LIST__L17*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V49*/ meltfptr[48] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V48*/ meltfptr[46] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3577:/ quasiblock"); /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 0, "NCTX_INITPROC");/*_.INIPRO__V50*/ meltfptr[48] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3578:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 2, "NCTX_DATALIST");/*_.INIDATA__V51*/ meltfptr[50] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3579:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 3, "NCTX_VALUELIST");/*_.IMPORTVALUES__V52*/ meltfptr[51] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3580:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NCX__V5*/ meltfptr[4]), 14, "NCTX_PROCURMODENVLIST");/*_.PROCURMODENVLIST__V53*/ meltfptr[52] = slot; }; ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3582:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L18*/ meltfnum[13] = melt_is_instance_of((melt_ptr_t)(/*_.INIPRO__V50*/ meltfptr[48]), (melt_ptr_t)((/*!CLASS_NREP_INITPROC*/ meltfrout->tabval[8])));; MELT_LOCATION("warmelt-outobj.melt:3582:/ cond"); /*cond*/ if (/*_#IS_A__L18*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V55*/ meltfptr[54] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3582:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check inipro"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3582)?(3582):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V55*/ meltfptr[54] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V54*/ meltfptr[53] = /*_.IFELSE___V55*/ meltfptr[54];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3582:/ clear"); /*clear*/ /*_#IS_A__L18*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V55*/ meltfptr[54] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V54*/ meltfptr[53] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3583:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L19*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3583:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr procurmodenvlist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L19*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3583; /*_.DEBUG_MSG_FUN__V57*/ meltfptr[56] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.PROCURMODENVLIST__V53*/ meltfptr[52]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V56*/ meltfptr[54] = /*_.DEBUG_MSG_FUN__V57*/ meltfptr[56];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3583:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L19*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V57*/ meltfptr[56] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V56*/ meltfptr[54] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3584:/ quasiblock"); /*^apply*/ /*apply*/{ union meltparam_un argtab[5]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MODCTX__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.INIDATA__V51*/ meltfptr[50]; /*^apply.arg*/ argtab[2].bp_aptr = (melt_ptr_t*) &/*_.COMPICACHE__V37*/ meltfptr[36]; /*^apply.arg*/ argtab[3].bp_aptr = (melt_ptr_t*) &/*_.PROCURMODENVLIST__V53*/ meltfptr[52]; /*^apply.arg*/ argtab[4].bp_aptr = (melt_ptr_t*) &/*_.IMPORTVALUES__V52*/ meltfptr[51]; /*_.INIOBJ__V58*/ meltfptr[56] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE2OBJ_INITPROC*/ meltfrout->tabval[25])), (melt_ptr_t)(/*_.INIPRO__V50*/ meltfptr[48]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_PTR BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3585:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L20*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3585:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr iniobj"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L20*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3585; /*_.DEBUG_MSG_FUN__V60*/ meltfptr[59] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.INIOBJ__V58*/ meltfptr[56]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V59*/ meltfptr[58] = /*_.DEBUG_MSG_FUN__V60*/ meltfptr[59];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3585:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L20*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V60*/ meltfptr[59] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V59*/ meltfptr[58] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*citerblock FOREACH_IN_LIST*/ { /* start cit1__EACHLIST */ for (/*_.PAIREL__V61*/ meltfptr[59] = melt_list_first(/*_.OBJLIST__V36*/ meltfptr[35]); melt_magic_discr(/*_.PAIREL__V61*/ meltfptr[59]) == OBMAG_PAIR; /*_.PAIREL__V61*/ meltfptr[59] = melt_pair_tail(/*_.PAIREL__V61*/ meltfptr[59])) { /*_.OBEL__V62*/ meltfptr[61] = melt_pair_head(/*_.PAIREL__V61*/ meltfptr[59]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3590:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L21*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3590:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr obel"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L21*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3590; /*_.DEBUG_MSG_FUN__V64*/ meltfptr[63] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.OBEL__V62*/ meltfptr[61]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V63*/ meltfptr[62] = /*_.DEBUG_MSG_FUN__V64*/ meltfptr[63];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3590:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L21*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V64*/ meltfptr[63] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V63*/ meltfptr[62] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3592:/ quasiblock"); /*_#IS_A__L22*/ meltfnum[13] = melt_is_instance_of((melt_ptr_t)(/*_.OBEL__V62*/ meltfptr[61]), (melt_ptr_t)((/*!CLASS_PROCROUTINEOBJ*/ meltfrout->tabval[26])));; MELT_LOCATION("warmelt-outobj.melt:3593:/ cond"); /*cond*/ if (/*_#IS_A__L22*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3594:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.OBEL__V62*/ meltfptr[61]), (melt_ptr_t)((/*!CLASS_PROCROUTINEOBJ*/ meltfrout->tabval[26])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.OBEL__V62*/ meltfptr[61]), 13, "OPROUT_FILENUM");/*_.OPROUT_FILENUM__V66*/ meltfptr[65] = slot; }; ; } else {/*^cond.else*/ /*_.OPROUT_FILENUM__V66*/ meltfptr[65] = NULL;; } ; /*^compute*/ /*_#GET_INT__L24*/ meltfnum[23] = (melt_get_int((melt_ptr_t)(/*_.OPROUT_FILENUM__V66*/ meltfptr[65])));; /*^compute*/ /*_#FILNUM__L23*/ meltfnum[22] = /*_#GET_INT__L24*/ meltfnum[23];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3593:/ clear"); /*clear*/ /*_.OPROUT_FILENUM__V66*/ meltfptr[65] = 0 ; /*^clear*/ /*clear*/ /*_#GET_INT__L24*/ meltfnum[23] = 0 ;} ; } else {/*^cond.else*/ /*_#FILNUM__L23*/ meltfnum[22] = 0;; } ; MELT_LOCATION("warmelt-outobj.melt:3596:/ cond"); /*cond*/ if (/*_#FILNUM__L23*/ meltfnum[22]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^apply*/ /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MODNAMSTR__V3*/ meltfptr[2]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.DECLBUF__V20*/ meltfptr[19]; /*^apply.arg*/ argtab[2].bp_long = /*_#FILNUM__L23*/ meltfnum[22]; /*_.NTH_SECUNDARY_FILE__V68*/ meltfptr[67] = melt_apply ((meltclosure_ptr_t)((/*!NTH_SECUNDARY_FILE*/ meltfrout->tabval[27])), (melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.SECFIL__V67*/ meltfptr[65] = /*_.NTH_SECUNDARY_FILE__V68*/ meltfptr[67];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3596:/ clear"); /*clear*/ /*_.NTH_SECUNDARY_FILE__V68*/ meltfptr[67] = 0 ;} ; } else {/*^cond.else*/ /*_.SECFIL__V67*/ meltfptr[65] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3598:/ cond"); /*cond*/ if (/*_.SECFIL__V67*/ meltfptr[65]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SECFIL__V67*/ meltfptr[65]), (melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[28])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SECFIL__V67*/ meltfptr[65]), 3, "SECFIL_IMPLBUF");/*_.SECFIL_IMPLBUF__V70*/ meltfptr[69] = slot; }; ; } else {/*^cond.else*/ /*_.SECFIL_IMPLBUF__V70*/ meltfptr[69] = NULL;; } ; /*^compute*/ /*_.OUTIMPLBUF__V69*/ meltfptr[67] = /*_.SECFIL_IMPLBUF__V70*/ meltfptr[69];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3598:/ clear"); /*clear*/ /*_.SECFIL_IMPLBUF__V70*/ meltfptr[69] = 0 ;} ; } else {/*^cond.else*/ /*_.OUTIMPLBUF__V69*/ meltfptr[67] = /*_.IMPLBUF__V21*/ meltfptr[20];; } ; MELT_LOCATION("warmelt-outobj.melt:3600:/ msend"); /*msend*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^ojbmsend.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DECLBUF__V20*/ meltfptr[19]; /*^ojbmsend.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.OUTIMPLBUF__V69*/ meltfptr[67]; /*^ojbmsend.arg*/ argtab[2].bp_long = 0; /*_.OUTPUT_C_CODE__V71*/ meltfptr[69] = meltgc_send((melt_ptr_t)(/*_.OBEL__V62*/ meltfptr[61]), (melt_ptr_t)((/*!OUTPUT_C_CODE*/ meltfrout->tabval[29])), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V65*/ meltfptr[63] = /*_.OUTPUT_C_CODE__V71*/ meltfptr[69];; MELT_LOCATION("warmelt-outobj.melt:3592:/ clear"); /*clear*/ /*_#IS_A__L22*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_#FILNUM__L23*/ meltfnum[22] = 0 ; /*^clear*/ /*clear*/ /*_.SECFIL__V67*/ meltfptr[65] = 0 ; /*^clear*/ /*clear*/ /*_.OUTIMPLBUF__V69*/ meltfptr[67] = 0 ; /*^clear*/ /*clear*/ /*_.OUTPUT_C_CODE__V71*/ meltfptr[69] = 0 ; } /* end cit1__EACHLIST */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:3587:/ clear"); /*clear*/ /*_.PAIREL__V61*/ meltfptr[59] = 0 ; /*^clear*/ /*clear*/ /*_.OBEL__V62*/ meltfptr[61] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V63*/ meltfptr[62] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V65*/ meltfptr[63] = 0 ;} /*endciterblock FOREACH_IN_LIST*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3602:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L25*/ meltfnum[23] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3602:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr final modnamstr"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L25*/ meltfnum[23]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3602; /*_.DEBUG_MSG_FUN__V73*/ meltfptr[67] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V72*/ meltfptr[65] = /*_.DEBUG_MSG_FUN__V73*/ meltfptr[67];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3602:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L25*/ meltfnum[23] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V73*/ meltfptr[67] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V72*/ meltfptr[65] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3603:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L26*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3603:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr outputting iniobj"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L26*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3603; /*_.DEBUG_MSG_FUN__V75*/ meltfptr[67] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.INIOBJ__V58*/ meltfptr[56]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V74*/ meltfptr[69] = /*_.DEBUG_MSG_FUN__V75*/ meltfptr[67];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3603:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L26*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V75*/ meltfptr[67] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V74*/ meltfptr[69] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3604:/ msend"); /*msend*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^ojbmsend.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DECLBUF__V20*/ meltfptr[19]; /*^ojbmsend.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.IMPLBUF__V21*/ meltfptr[20]; /*^ojbmsend.arg*/ argtab[2].bp_long = 0; /*_.OUTPUT_C_CODE__V76*/ meltfptr[67] = meltgc_send((melt_ptr_t)(/*_.INIOBJ__V58*/ meltfptr[56]), (melt_ptr_t)((/*!OUTPUT_C_CODE*/ meltfrout->tabval[29])), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:3605:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DECLBUF__V20*/ meltfptr[19]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.IMPLBUF__V21*/ meltfptr[20]; /*_.OUTPUT_EXPORTED_OFFSETS__V77*/ meltfptr[76] = melt_apply ((meltclosure_ptr_t)((/*!OUTPUT_EXPORTED_OFFSETS*/ meltfrout->tabval[30])), (melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3607:/ locexp"); /* OUTPUTCFILE__1: */ melt_output_cfile_decl_impl((melt_ptr_t)(/*_.MODNAMSTR__V3*/ meltfptr[2]), (melt_ptr_t)(/*_.DECLBUF__V20*/ meltfptr[19]), (melt_ptr_t)(/*_.IMPLBUF__V21*/ meltfptr[20])) ; ;} ; /*_#WANTS_SINGLE_C_FILE__L27*/ meltfnum[22] = melt_wants_single_c_file () ;; /*^compute*/ /*_#NOT__L28*/ meltfnum[23] = (!(/*_#WANTS_SINGLE_C_FILE__L27*/ meltfnum[22]));; MELT_LOCATION("warmelt-outobj.melt:3613:/ cond"); /*cond*/ if (/*_#NOT__L28*/ meltfnum[23]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3614:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODCTX__V4*/ meltfptr[3]), 5, "MOCX_FILETUPLE");/*_.SECFILES__V78*/ meltfptr[77] = slot; }; ; } else {/*^cond.else*/ /*_.SECFILES__V78*/ meltfptr[77] = NULL;; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3615:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L29*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3615:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr secfiles"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L29*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3615; /*_.DEBUG_MSG_FUN__V80*/ meltfptr[79] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.SECFILES__V78*/ meltfptr[77]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V79*/ meltfptr[78] = /*_.DEBUG_MSG_FUN__V80*/ meltfptr[79];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3615:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L29*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V80*/ meltfptr[79] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V79*/ meltfptr[78] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit2__EACHTUP: */ long cit2__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SECFILES__V78*/ meltfptr[77]); for (/*_#FILIX__L30*/ meltfnum[13] = 0; (/*_#FILIX__L30*/ meltfnum[13] >= 0) && (/*_#FILIX__L30*/ meltfnum[13] < cit2__EACHTUP_ln); /*_#FILIX__L30*/ meltfnum[13]++) { /*_.CURFIL__V81*/ meltfptr[79] = melt_multiple_nth((melt_ptr_t)(/*_.SECFILES__V78*/ meltfptr[77]), /*_#FILIX__L30*/ meltfnum[13]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3619:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L31*/ meltfnum[30] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3619:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr curfil"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L31*/ meltfnum[30]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3619; /*_.DEBUG_MSG_FUN__V83*/ meltfptr[82] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V82*/ meltfptr[81] = /*_.DEBUG_MSG_FUN__V83*/ meltfptr[82];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3619:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L31*/ meltfnum[30] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V83*/ meltfptr[82] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V82*/ meltfptr[81] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3620:/ cond"); /*cond*/ if (/*_.CURFIL__V81*/ meltfptr[79]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3622:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L32*/ meltfnum[30] = melt_is_instance_of((melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), (melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[28])));; MELT_LOCATION("warmelt-outobj.melt:3622:/ cond"); /*cond*/ if (/*_#IS_A__L32*/ meltfnum[30]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V85*/ meltfptr[84] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3622:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfil"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3622)?(3622):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V85*/ meltfptr[84] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V84*/ meltfptr[82] = /*_.IFELSE___V85*/ meltfptr[84];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3622:/ clear"); /*clear*/ /*_#IS_A__L32*/ meltfnum[30] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V85*/ meltfptr[84] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V84*/ meltfptr[82] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3624:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#GET_INT__L33*/ meltfnum[30] = (melt_get_int((melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79])));; /*^compute*/ /*_#I__L34*/ meltfnum[33] = ((/*_#GET_INT__L33*/ meltfnum[30]) == (/*_#FILIX__L30*/ meltfnum[13]));; MELT_LOCATION("warmelt-outobj.melt:3624:/ cond"); /*cond*/ if (/*_#I__L34*/ meltfnum[33]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V87*/ meltfptr[86] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3624:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfil index"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3624)?(3624):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V87*/ meltfptr[86] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V86*/ meltfptr[84] = /*_.IFELSE___V87*/ meltfptr[86];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3624:/ clear"); /*clear*/ /*_#GET_INT__L33*/ meltfnum[30] = 0 ; /*^clear*/ /*clear*/ /*_#I__L34*/ meltfnum[33] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V87*/ meltfptr[86] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V86*/ meltfptr[84] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3626:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), (melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[28])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), 1, "SECFIL_PATH");/*_.SECFILPATH__V88*/ meltfptr[86] = slot; }; ; } else {/*^cond.else*/ /*_.SECFILPATH__V88*/ meltfptr[86] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3627:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), (melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[28])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), 2, "SECFIL_DECLBUF");/*_.SECDECLBUF__V89*/ meltfptr[88] = slot; }; ; } else {/*^cond.else*/ /*_.SECDECLBUF__V89*/ meltfptr[88] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3628:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), (melt_ptr_t)((/*!CLASS_SECONDARY_C_FILE*/ meltfrout->tabval[28])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFIL__V81*/ meltfptr[79]), 3, "SECFIL_IMPLBUF");/*_.SECIMPLBUF__V90*/ meltfptr[89] = slot; }; ; } else {/*^cond.else*/ /*_.SECIMPLBUF__V90*/ meltfptr[89] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:3632:/ locexp"); /* SECFILOUT__1 */ melt_output_cfile_decl_impl_secondary((melt_ptr_t)(/*_.SECFILPATH__V88*/ meltfptr[86]), (melt_ptr_t)(/*_.SECDECLBUF__V89*/ meltfptr[88]), (melt_ptr_t)(/*_.SECIMPLBUF__V90*/ meltfptr[89]), /*_#FILIX__L30*/ meltfnum[13]) ; ;} ; MELT_LOCATION("warmelt-outobj.melt:3626:/ clear"); /*clear*/ /*_.SECFILPATH__V88*/ meltfptr[86] = 0 ; /*^clear*/ /*clear*/ /*_.SECDECLBUF__V89*/ meltfptr[88] = 0 ; /*^clear*/ /*clear*/ /*_.SECIMPLBUF__V90*/ meltfptr[89] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3621:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3620:/ clear"); /*clear*/ /*_.IFCPP___V84*/ meltfptr[82] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V86*/ meltfptr[84] = 0 ;} ; } /*noelse*/ ; if (/*_#FILIX__L30*/ meltfnum[13]<0) break; } /* end cit2__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:3616:/ clear"); /*clear*/ /*_.CURFIL__V81*/ meltfptr[79] = 0 ; /*^clear*/ /*clear*/ /*_#FILIX__L30*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V82*/ meltfptr[81] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:3614:/ clear"); /*clear*/ /*_.SECFILES__V78*/ meltfptr[77] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V79*/ meltfptr[78] = 0 ; /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:3584:/ clear"); /*clear*/ /*_.INIOBJ__V58*/ meltfptr[56] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V59*/ meltfptr[58] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V72*/ meltfptr[65] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V74*/ meltfptr[69] = 0 ; /*^clear*/ /*clear*/ /*_.OUTPUT_C_CODE__V76*/ meltfptr[67] = 0 ; /*^clear*/ /*clear*/ /*_.OUTPUT_EXPORTED_OFFSETS__V77*/ meltfptr[76] = 0 ; /*^clear*/ /*clear*/ /*_#WANTS_SINGLE_C_FILE__L27*/ meltfnum[22] = 0 ; /*^clear*/ /*clear*/ /*_#NOT__L28*/ meltfnum[23] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3577:/ clear"); /*clear*/ /*_.INIPRO__V50*/ meltfptr[48] = 0 ; /*^clear*/ /*clear*/ /*_.INIDATA__V51*/ meltfptr[50] = 0 ; /*^clear*/ /*clear*/ /*_.IMPORTVALUES__V52*/ meltfptr[51] = 0 ; /*^clear*/ /*clear*/ /*_.PROCURMODENVLIST__V53*/ meltfptr[52] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V54*/ meltfptr[53] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V56*/ meltfptr[54] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3547:/ clear"); /*clear*/ /*_.PROLIST__V35*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.OBJLIST__V36*/ meltfptr[35] = 0 ; /*^clear*/ /*clear*/ /*_#LIST_LENGTH__L11*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_#I__L12*/ meltfnum[11] = 0 ; /*^clear*/ /*clear*/ /*_#I__L13*/ meltfnum[12] = 0 ; /*^clear*/ /*clear*/ /*_.COMPICACHE__V37*/ meltfptr[36] = 0 ; /*^clear*/ /*clear*/ /*_.COUNTBOX__V38*/ meltfptr[37] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V39*/ meltfptr[38] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V41*/ meltfptr[39] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V43*/ meltfptr[41] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_EVERY__V45*/ meltfptr[44] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V46*/ meltfptr[45] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V48*/ meltfptr[46] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3483:/ clear"); /*clear*/ /*_.INIENV__V14*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_FIRST__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.FIRSTX__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_#IS_A__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.FIRSTLOC__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.INIPROC__V19*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.DECLBUF__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.IMPLBUF__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.UCMEB1__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_#__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V26*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V28*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V30*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V32*/ meltfptr[30] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_EVERY__V34*/ meltfptr[33] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3478:/ clear"); /*clear*/ /*_.IFCPP___V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V10*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[10] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("TRANSLATE_MACROEXPANDED_LIST", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_124_warmelt_outobj_TRANSLATE_MACROEXPANDED_LIST*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_125_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_125_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 18 void* varptr[18]; #define MELTFRAM_NBVARNUM 11 long varnum[11]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<18; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 18; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3509:/ getarg"); /*_.SEXP__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_LONG) goto lab_endgetargs; /*_#IX__L1*/ meltfnum[0] = xargtab_[0].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3510:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[1] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3510:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr sexp"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[1]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3510; /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V3*/ meltfptr[2] = /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3510:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3511:/ quasiblock"); /*_#IS_A__L3*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_LOCATED*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:3512:/ cond"); /*cond*/ if (/*_#IS_A__L3*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V6*/ meltfptr[5] = slot; }; ; /*_.PSLOC__V5*/ meltfptr[3] = /*_.LOCA_LOCATION__V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3512:/ clear"); /*clear*/ /*_.LOCA_LOCATION__V6*/ meltfptr[5] = 0 ;} ; } else {/*^cond.else*/ /*_.PSLOC__V5*/ meltfptr[3] = NULL;; } ; /*^compute*/ /*_#IS_A__L4*/ meltfnum[3] = melt_is_instance_of((melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SOURCE_COMMENT*/ meltfrout->tabval[2])));; MELT_LOCATION("warmelt-outobj.melt:3516:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[3]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3517:/ quasiblock"); /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), 1, "LOCA_LOCATION");/*_.SLOC__V7*/ meltfptr[5] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:3518:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), 2, "SCOMM_STR");/*_.SCOMM__V8*/ meltfptr[7] = slot; }; ; { MELT_LOCATION("warmelt-outobj.melt:3520:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)((/*~DECLBUF*/ meltfclos->tabval[0])), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:3521:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~DECLBUF*/ meltfclos->tabval[0])), ( "/**!!** "));} ; { MELT_LOCATION("warmelt-outobj.melt:3522:/ locexp"); meltgc_add_strbuf_ccomment((melt_ptr_t)((/*~DECLBUF*/ meltfclos->tabval[0])), melt_string_str((melt_ptr_t)(/*_.SCOMM__V8*/ meltfptr[7])));} ; { MELT_LOCATION("warmelt-outobj.melt:3523:/ locexp"); meltgc_add_strbuf((melt_ptr_t)((/*~DECLBUF*/ meltfclos->tabval[0])), ( "**!!**/"));} ; { MELT_LOCATION("warmelt-outobj.melt:3524:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)((/*~DECLBUF*/ meltfclos->tabval[0])), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:3517:/ clear"); /*clear*/ /*_.SLOC__V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.SCOMM__V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } else {MELT_LOCATION("warmelt-outobj.melt:3516:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3527:/ quasiblock"); /*^multimsend*/ /*multimsend*/{ union meltparam_un argtab[3]; union meltparam_un restab[1]; memset(&argtab, 0, sizeof(argtab)); memset(&restab, 0, sizeof(restab)); /*^multimsend.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*~INIENV*/ meltfclos->tabval[1]);/*^multimsend.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &(/*~NCX*/ meltfclos->tabval[2]);/*^multimsend.arg*/ argtab[2].bp_aptr = (melt_ptr_t*) &/*_.PSLOC__V5*/ meltfptr[3]; /*^multimsend.xres*/ restab[0].bp_aptr = (melt_ptr_t*) &/*_.NBIND__V10*/ meltfptr[7];/*^multimsend.send*/ /*_.NEXP__V9*/ meltfptr[5] = meltgc_send ((melt_ptr_t)(/*_.SEXP__V2*/ meltfptr[1]), ((melt_ptr_t)((/*!NORMAL_EXP*/ meltfrout->tabval[3]))), (BPARSTR_PTR BPARSTR_PTR BPARSTR_PTR ""), argtab, (BPARSTR_PTR ""), restab); } ; /*^quasiblock*/ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3530:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3530:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr nexp"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3530; /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.NEXP__V9*/ meltfptr[5]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V11*/ meltfptr[10] = /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3530:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V11*/ meltfptr[10] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3531:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3531:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr nbind"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3531; /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.NBIND__V10*/ meltfptr[7]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V13*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3531:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V13*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_#IS_A__L7*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.NEXP__V9*/ meltfptr[5]), (melt_ptr_t)((/*!CLASS_NREP*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:3532:/ cond"); /*cond*/ if (/*_#IS_A__L7*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_#IS_A__L9*/ meltfnum[8] = melt_is_instance_of((melt_ptr_t)(/*_.NEXP__V9*/ meltfptr[5]), (melt_ptr_t)((/*!CLASS_NREP_ANYPROC*/ meltfrout->tabval[5])));; /*^compute*/ /*_#NOT__L10*/ meltfnum[9] = (!(/*_#IS_A__L9*/ meltfnum[8]));; /*^compute*/ /*_#IF___L8*/ meltfnum[7] = /*_#NOT__L10*/ meltfnum[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3532:/ clear"); /*clear*/ /*_#IS_A__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_#NOT__L10*/ meltfnum[9] = 0 ;} ; } else {/*^cond.else*/ /*_#IF___L8*/ meltfnum[7] = 0;; } ; MELT_LOCATION("warmelt-outobj.melt:3532:/ cond"); /*cond*/ if (/*_#IF___L8*/ meltfnum[7]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3534:/ quasiblock"); /*^apply*/ /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.NBIND__V10*/ meltfptr[7]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.PSLOC__V5*/ meltfptr[3]; /*_.WNEXP__V15*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!WRAP_NORMAL_LET1*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.NEXP__V9*/ meltfptr[5]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3535:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3535:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr wnexp"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3535; /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.WNEXP__V15*/ meltfptr[13]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V16*/ meltfptr[15] = /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3535:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V16*/ meltfptr[15] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3536:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~INIPROC*/ meltfclos->tabval[3])), 2, "NINIT_TOPL");/*_.NINIT_TOPL__V18*/ meltfptr[16] = slot; }; ; { /*^locexp*/ meltgc_append_list((melt_ptr_t)(/*_.NINIT_TOPL__V18*/ meltfptr[16]), (melt_ptr_t)(/*_.WNEXP__V15*/ meltfptr[13]));} ; MELT_LOCATION("warmelt-outobj.melt:3534:/ clear"); /*clear*/ /*_.WNEXP__V15*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.NINIT_TOPL__V18*/ meltfptr[16] = 0 ; /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:3527:/ clear"); /*clear*/ /*_.IFCPP___V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V13*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_#IS_A__L7*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_#IF___L8*/ meltfnum[7] = 0 ; /*^clear*/ /*clear*/ /*_.NBIND__V10*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; MELT_LOCATION("warmelt-outobj.melt:3511:/ clear"); /*clear*/ /*_#IS_A__L3*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.PSLOC__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#IS_A__L4*/ meltfnum[3] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3509:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_125_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_126_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_126_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 11 void* varptr[11]; #define MELTFRAM_NBVARNUM 7 long varnum[7]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<11; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 11; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3556:/ getarg"); /*_.PRO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3557:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.PRO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NREP_ANYPROC*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3557:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V4*/ meltfptr[3] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3557:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check pro"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3557)?(3557):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V3*/ meltfptr[2] = /*_.IFELSE___V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3557:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3558:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3558:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr pro"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3558; /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.PRO__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V5*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3558:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_#GET_INT__L3*/ meltfnum[0] = (melt_get_int((melt_ptr_t)((/*~COUNTBOX*/ meltfclos->tabval[0]))));; /*^compute*/ /*_#I__L4*/ meltfnum[3] = ((/*_#GET_INT__L3*/ meltfnum[0]) + (1));; { MELT_LOCATION("warmelt-outobj.melt:3559:/ locexp"); melt_put_int((melt_ptr_t)((/*~COUNTBOX*/ meltfclos->tabval[0])), (/*_#I__L4*/ meltfnum[3]));} ; MELT_LOCATION("warmelt-outobj.melt:3560:/ quasiblock"); /*_#GET_INT__L5*/ meltfnum[4] = (melt_get_int((melt_ptr_t)((/*~COUNTBOX*/ meltfclos->tabval[0]))));; MELT_LOCATION("warmelt-outobj.melt:3560:/ apply"); /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*~MODCTX*/ meltfclos->tabval[1]); /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &(/*~COMPICACHE*/ meltfclos->tabval[2]); /*^apply.arg*/ argtab[2].bp_long = /*_#GET_INT__L5*/ meltfnum[4]; /*_.OBJPRO__V7*/ meltfptr[5] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE2OBJ_PROCEDURE*/ meltfrout->tabval[2])), (melt_ptr_t)(/*_.PRO__V2*/ meltfptr[1]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3561:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[5] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3561:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr objpro"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[5]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3561; /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.OBJPRO__V7*/ meltfptr[5]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V8*/ meltfptr[7] = /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3561:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V8*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3562:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[5] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3562:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr done pro"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[5]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3562; /*_.DEBUG_MSG_FUN__V11*/ meltfptr[10] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.PRO__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V10*/ meltfptr[8] = /*_.DEBUG_MSG_FUN__V11*/ meltfptr[10];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3562:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V11*/ meltfptr[10] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V10*/ meltfptr[8] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3563:/ locexp"); meltgc_append_list((melt_ptr_t)((/*~OBJLIST*/ meltfclos->tabval[3])), (melt_ptr_t)(/*_.OBJPRO__V7*/ meltfptr[5]));} ; MELT_LOCATION("warmelt-outobj.melt:3560:/ clear"); /*clear*/ /*_#GET_INT__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.OBJPRO__V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V8*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V10*/ meltfptr[8] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3556:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#GET_INT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#I__L4*/ meltfnum[3] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_126_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_127_warmelt_outobj_COMPILE_LIST_SEXPR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_127_warmelt_outobj_COMPILE_LIST_SEXPR_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 31 void* varptr[31]; #define MELTFRAM_NBVARNUM 8 long varnum[8]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<31; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 31; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("COMPILE_LIST_SEXPR", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3645:/ getarg"); /*_.LSEXP__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.INIENV__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.INIENV__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.MODNAMSTR__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODNAMSTR__V4*/ meltfptr[3])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3646:/ locexp"); debugeputs(( "starting compile_list_sexpr"));} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3647:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3647:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "\n\n\n*%*%* compile_list_sexpr lsexp"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3647; /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.LSEXP__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V5*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3647:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3648:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3648:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr inienv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3648; /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.INIENV__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V7*/ meltfptr[5] = /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3648:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3649:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3649:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr modnamstr"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3649; /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODNAMSTR__V4*/ meltfptr[3]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V9*/ meltfptr[7] = /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3649:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3650:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L4*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.LSEXP__V2*/ meltfptr[1])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3650:/ cond"); /*cond*/ if (/*_#IS_LIST__L4*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V12*/ meltfptr[11] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3650:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check lsexp"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3650)?(3650):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V12*/ meltfptr[11] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V11*/ meltfptr[9] = /*_.IFELSE___V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3650:/ clear"); /*clear*/ /*_#IS_LIST__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V12*/ meltfptr[11] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V11*/ meltfptr[9] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3651:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L5*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.MODNAMSTR__V4*/ meltfptr[3])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3651:/ cond"); /*cond*/ if (/*_#IS_STRING__L5*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V14*/ meltfptr[13] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3651:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modnamstr"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3651)?(3651):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V14*/ meltfptr[13] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V13*/ meltfptr[11] = /*_.IFELSE___V14*/ meltfptr[13];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3651:/ clear"); /*clear*/ /*_#IS_STRING__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V14*/ meltfptr[13] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V13*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3652:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L6*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.INIENV__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:3652:/ cond"); /*cond*/ if (/*_#IS_A__L6*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V16*/ meltfptr[15] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3652:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check inienv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3652)?(3652):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V16*/ meltfptr[15] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V15*/ meltfptr[13] = /*_.IFELSE___V16*/ meltfptr[15];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3652:/ clear"); /*clear*/ /*_#IS_A__L6*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V16*/ meltfptr[15] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V15*/ meltfptr[13] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3653:/ quasiblock"); /*_.MAKE_STRING_NAKEDBASENAME__V18*/ meltfptr[17] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.MODNAMSTR__V4*/ meltfptr[3]))));; /*^compute*/ /*_.MAKE_MAPSTRING__V19*/ meltfptr[18] = (meltgc_new_mapstrings( (meltobject_ptr_t) ((/*!DISCR_MAP_STRINGS*/ meltfrout->tabval[4])), (90)));; /*^compute*/ /*_.MAKE_MAPSTRING__V20*/ meltfptr[19] = (meltgc_new_mapstrings( (meltobject_ptr_t) ((/*!DISCR_MAP_STRINGS*/ meltfrout->tabval[4])), (40)));; /*^compute*/ /*_.MAKE_INTEGERBOX__V21*/ meltfptr[20] = (meltgc_new_int((meltobject_ptr_t)((/*!DISCR_INTEGER*/ meltfrout->tabval[5])), (0)));; MELT_LOCATION("warmelt-outobj.melt:3654:/ quasiblock"); /*^rawallocobj*/ /*rawallocobj*/ { melt_ptr_t newobj = 0; melt_raw_object_create(newobj,(melt_ptr_t)((/*!CLASS_MODULE_CONTEXT*/ meltfrout->tabval[2])), (6), "CLASS_MODULE_CONTEXT");/*_.INST__V23*/ meltfptr[22] = newobj; }; ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_MODULENAME", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (0), (/*_.MAKE_STRING_NAKEDBASENAME__V18*/ meltfptr[17]), "MOCX_MODULENAME"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_EXPFIELDICT", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (1), (/*_.MAKE_MAPSTRING__V19*/ meltfptr[18]), "MOCX_EXPFIELDICT"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_EXPCLASSDICT", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (2), (/*_.MAKE_MAPSTRING__V20*/ meltfptr[19]), "MOCX_EXPCLASSDICT"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_INITIALENV", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (3), (/*_.INIENV__V3*/ meltfptr[2]), "MOCX_INITIALENV"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_FUNCOUNT", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (4), (/*_.MAKE_INTEGERBOX__V21*/ meltfptr[20]), "MOCX_FUNCOUNT"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MOCX_FILETUPLE", melt_magic_discr((melt_ptr_t)(/*_.INST__V23*/ meltfptr[22])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V23*/ meltfptr[22]), (5), ((/*nil*/NULL)), "MOCX_FILETUPLE"); ; /*_.MODCTX__V22*/ meltfptr[21] = /*_.INST__V23*/ meltfptr[22];; MELT_LOCATION("warmelt-outobj.melt:3662:/ apply"); /*apply*/{ /*_.NCX__V24*/ meltfptr[23] = melt_apply ((meltclosure_ptr_t)((/*!CREATE_NORMCONTEXT*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.MODCTX__V22*/ meltfptr[21]), (""), (union meltparam_un*)0, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3664:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3664:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compile_list_sexpr initial ncx"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3664; /*_.DEBUG_MSG_FUN__V26*/ meltfptr[25] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.NCX__V24*/ meltfptr[23]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V25*/ meltfptr[24] = /*_.DEBUG_MSG_FUN__V26*/ meltfptr[25];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3664:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V26*/ meltfptr[25] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V25*/ meltfptr[24] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3665:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L8*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.NCX__V24*/ meltfptr[23]), (melt_ptr_t)((/*!CLASS_NORMALIZATION_CONTEXT*/ meltfrout->tabval[7])));; MELT_LOCATION("warmelt-outobj.melt:3665:/ cond"); /*cond*/ if (/*_#IS_A__L8*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V28*/ meltfptr[27] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3665:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check ncx"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3665)?(3665):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V28*/ meltfptr[27] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V27*/ meltfptr[25] = /*_.IFELSE___V28*/ meltfptr[27];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3665:/ clear"); /*clear*/ /*_#IS_A__L8*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V28*/ meltfptr[27] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V27*/ meltfptr[25] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3666:/ quasiblock"); /*^apply*/ /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.INIENV__V3*/ meltfptr[2]; /*_.XLIST__V30*/ meltfptr[29] = melt_apply ((meltclosure_ptr_t)((/*!MACROEXPAND_TOPLEVEL_LIST*/ meltfrout->tabval[8])), (melt_ptr_t)(/*_.LSEXP__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:3668:/ apply"); /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MODNAMSTR__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.MODCTX__V22*/ meltfptr[21]; /*^apply.arg*/ argtab[2].bp_aptr = (melt_ptr_t*) &/*_.NCX__V24*/ meltfptr[23]; /*_.TRANSLATE_MACROEXPANDED_LIST__V31*/ meltfptr[30] = melt_apply ((meltclosure_ptr_t)((/*!TRANSLATE_MACROEXPANDED_LIST*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.XLIST__V30*/ meltfptr[29]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V29*/ meltfptr[27] = /*_.TRANSLATE_MACROEXPANDED_LIST__V31*/ meltfptr[30];; MELT_LOCATION("warmelt-outobj.melt:3666:/ clear"); /*clear*/ /*_.XLIST__V30*/ meltfptr[29] = 0 ; /*^clear*/ /*clear*/ /*_.TRANSLATE_MACROEXPANDED_LIST__V31*/ meltfptr[30] = 0 ; /*_.LET___V17*/ meltfptr[15] = /*_.LET___V29*/ meltfptr[27];; MELT_LOCATION("warmelt-outobj.melt:3653:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPSTRING__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPSTRING__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_INTEGERBOX__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.MODCTX__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.NCX__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V27*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V29*/ meltfptr[27] = 0 ; { MELT_LOCATION("warmelt-outobj.melt:3673:/ locexp"); /*CHECK_ERRORS_AFTER_GENERATION__1*/ if (melt_error_counter>0) melt_fatal_error ("MELT translation of %s halted after generation: got %ld MELT errors", melt_string_str(/*_.MODNAMSTR__V4*/ meltfptr[3]), melt_error_counter); ;} ; { MELT_LOCATION("warmelt-outobj.melt:3678:/ locexp"); debugeputs(( "ended compile_list_sexpr"));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3645:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V11*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V13*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V15*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V17*/ meltfptr[15] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("COMPILE_LIST_SEXPR", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_127_warmelt_outobj_COMPILE_LIST_SEXPR*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_128_warmelt_outobj_INSTALL_MELT_MODE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_128_warmelt_outobj_INSTALL_MELT_MODE_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 8 void* varptr[8]; #define MELTFRAM_NBVARNUM 2 long varnum[2]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<8; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 8; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("INSTALL_MELT_MODE", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3686:/ getarg"); /*_.MODE__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3688:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MODE__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MELT_MODE*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3688:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V4*/ meltfptr[3] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3688:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mode"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3688)?(3688):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V3*/ meltfptr[2] = /*_.IFELSE___V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3688:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3689:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*!INITIAL_SYSTEM_DATA*/ meltfrout->tabval[1])), (melt_ptr_t)((/*!CLASS_SYSTEM_DATA*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*!INITIAL_SYSTEM_DATA*/ meltfrout->tabval[1])), 2, "SYSDATA_MODE_DICT");/*_.CMDICT__V5*/ meltfptr[3] = slot; }; ; } else {/*^cond.else*/ /*_.CMDICT__V5*/ meltfptr[3] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:3690:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MODE__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MODE__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.CNAM__V6*/ meltfptr[5] = slot; }; ; } else {/*^cond.else*/ /*_.CNAM__V6*/ meltfptr[5] = NULL;; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3692:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3692:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "install_melt_mode mode"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3692; /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.MODE__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V7*/ meltfptr[6] = /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3692:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3693:/ locexp"); meltgc_put_mapstrings((struct meltmapstrings_st *) (/*_.CMDICT__V5*/ meltfptr[3]), melt_string_str((melt_ptr_t)(/*_.CNAM__V6*/ meltfptr[5])), (melt_ptr_t)(/*_.MODE__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:3689:/ clear"); /*clear*/ /*_.CMDICT__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.CNAM__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[6] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3686:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("INSTALL_MELT_MODE", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_128_warmelt_outobj_INSTALL_MELT_MODE*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_129_warmelt_outobj_COMPILE_ONE_OR_MORE_FILES(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_129_warmelt_outobj_COMPILE_ONE_OR_MORE_FILES_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 33 void* varptr[33]; #define MELTFRAM_NBVARNUM 10 long varnum[10]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<33; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 33; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("COMPILE_ONE_OR_MORE_FILES", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3704:/ getarg"); /*_.FILES__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODSRCNAME__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODSRCNAME__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.CURENV__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.CURENV__V4*/ meltfptr[3])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3705:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CURENV__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:3705:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3705:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curenv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3705)?(3705):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3705:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3706:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.MODSRCNAME__V3*/ meltfptr[2])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3706:/ cond"); /*cond*/ if (/*_#IS_STRING__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3706:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check modsrcname"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3706)?(3706):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3706:/ clear"); /*clear*/ /*_#IS_STRING__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3707:/ quasiblock"); /*_.RLIST__V10*/ meltfptr[9] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[1]))));; /*^compute*/ /*_#IS_STRING__L3*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.FILES__V2*/ meltfptr[1])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3710:/ cond"); /*cond*/ if (/*_#IS_STRING__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.READ_FILE__V12*/ meltfptr[11] = (meltgc_read_file (melt_string_str((melt_ptr_t)(/*_.FILES__V2*/ meltfptr[1])), (char*)0));; MELT_LOCATION("warmelt-outobj.melt:3711:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.READ_FILE__V12*/ meltfptr[11]; /*_.LIST_APPEND2LIST__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!LIST_APPEND2LIST*/ meltfrout->tabval[2])), (melt_ptr_t)(/*_.RLIST__V10*/ meltfptr[9]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFELSE___V11*/ meltfptr[10] = /*_.LIST_APPEND2LIST__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3710:/ clear"); /*clear*/ /*_.READ_FILE__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_APPEND2LIST__V13*/ meltfptr[12] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_LIST__L4*/ meltfnum[3] = (melt_magic_discr((melt_ptr_t)(/*_.FILES__V2*/ meltfptr[1])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3712:/ cond"); /*cond*/ if (/*_#IS_LIST__L4*/ meltfnum[3]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*citerblock FOREACH_IN_LIST*/ { /* start cit1__EACHLIST */ for (/*_.CURPAIR__V15*/ meltfptr[12] = melt_list_first(/*_.FILES__V2*/ meltfptr[1]); melt_magic_discr(/*_.CURPAIR__V15*/ meltfptr[12]) == OBMAG_PAIR; /*_.CURPAIR__V15*/ meltfptr[12] = melt_pair_tail(/*_.CURPAIR__V15*/ meltfptr[12])) { /*_.CURFILE__V16*/ meltfptr[15] = melt_pair_head(/*_.CURPAIR__V15*/ meltfptr[12]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3716:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L5*/ meltfnum[4] = (melt_magic_discr((melt_ptr_t)(/*_.CURFILE__V16*/ meltfptr[15])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3716:/ cond"); /*cond*/ if (/*_#IS_STRING__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V18*/ meltfptr[17] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3716:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfile"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3716)?(3716):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V18*/ meltfptr[17] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V17*/ meltfptr[16] = /*_.IFELSE___V18*/ meltfptr[17];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3716:/ clear"); /*clear*/ /*_#IS_STRING__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V18*/ meltfptr[17] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V17*/ meltfptr[16] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3717:/ locexp"); inform(UNKNOWN_LOCATION, ("MELT INFORM [#%ld]: %s - %s"), melt_dbgcounter, ( "reading from file"), melt_string_str((melt_ptr_t)(/*_.CURFILE__V16*/ meltfptr[15])));} ; MELT_LOCATION("warmelt-outobj.melt:3718:/ quasiblock"); /*_.CUREAD__V20*/ meltfptr[19] = (meltgc_read_file (melt_string_str((melt_ptr_t)(/*_.CURFILE__V16*/ meltfptr[15])), (char*)0));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3720:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3720:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "compilefile_mode curead"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3720; /*_.DEBUG_MSG_FUN__V22*/ meltfptr[21] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[3])), (melt_ptr_t)(/*_.CUREAD__V20*/ meltfptr[19]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V21*/ meltfptr[20] = /*_.DEBUG_MSG_FUN__V22*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3720:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V22*/ meltfptr[21] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V21*/ meltfptr[20] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3721:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST_OR_NULL__L7*/ meltfnum[4] = ((/*_.CUREAD__V20*/ meltfptr[19]) == NULL || (melt_unsafe_magic_discr((melt_ptr_t)(/*_.CUREAD__V20*/ meltfptr[19])) == OBMAG_LIST));; MELT_LOCATION("warmelt-outobj.melt:3721:/ cond"); /*cond*/ if (/*_#IS_LIST_OR_NULL__L7*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V24*/ meltfptr[23] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3721:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curead"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3721)?(3721):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V24*/ meltfptr[23] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V23*/ meltfptr[21] = /*_.IFELSE___V24*/ meltfptr[23];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3721:/ clear"); /*clear*/ /*_#IS_LIST_OR_NULL__L7*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V24*/ meltfptr[23] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V23*/ meltfptr[21] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3722:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREAD__V20*/ meltfptr[19]; /*_.LIST_APPEND2LIST__V25*/ meltfptr[23] = melt_apply ((meltclosure_ptr_t)((/*!LIST_APPEND2LIST*/ meltfrout->tabval[2])), (melt_ptr_t)(/*_.RLIST__V10*/ meltfptr[9]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V19*/ meltfptr[17] = /*_.LIST_APPEND2LIST__V25*/ meltfptr[23];; MELT_LOCATION("warmelt-outobj.melt:3718:/ clear"); /*clear*/ /*_.CUREAD__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V23*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_APPEND2LIST__V25*/ meltfptr[23] = 0 ; /*_.IFELSE___V14*/ meltfptr[11] = /*_.LET___V19*/ meltfptr[17];; } /* end cit1__EACHLIST */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:3713:/ clear"); /*clear*/ /*_.CURPAIR__V15*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.CURFILE__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V19*/ meltfptr[17] = 0 ;} /*endciterblock FOREACH_IN_LIST*/ ; /*epilog*/ } ; } else {MELT_LOCATION("warmelt-outobj.melt:3712:/ cond.else"); /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3724:/ cppif.then"); /*^block*/ /*anyblock*/{ /*^cond*/ /*cond*/ if ((/*nil*/NULL)) /*then*/ { /*^cond.then*/ /*_.IFELSE___V27*/ meltfptr[20] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3724:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "bad files - should be a list of filenames or a filename"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3724)?(3724):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V27*/ meltfptr[20] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V26*/ meltfptr[19] = /*_.IFELSE___V27*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3724:/ clear"); /*clear*/ /*_.IFELSE___V27*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V26*/ meltfptr[19] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3723:/ quasiblock"); /*_.PROGN___V28*/ meltfptr[21] = /*_.IFCPP___V26*/ meltfptr[19];; /*^compute*/ /*_.IFELSE___V14*/ meltfptr[11] = /*_.PROGN___V28*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3712:/ clear"); /*clear*/ /*_.IFCPP___V26*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V28*/ meltfptr[21] = 0 ;} ; } ; /*_.IFELSE___V11*/ meltfptr[10] = /*_.IFELSE___V14*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3710:/ clear"); /*clear*/ /*_#IS_LIST__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V14*/ meltfptr[11] = 0 ;} ; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3726:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3726:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after read compile_one_or_more_files rlist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3726; /*_.DEBUG_MSG_FUN__V30*/ meltfptr[20] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[3])), (melt_ptr_t)(/*_.RLIST__V10*/ meltfptr[9]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V29*/ meltfptr[23] = /*_.DEBUG_MSG_FUN__V30*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3726:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V30*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V29*/ meltfptr[23] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3727:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#LIST_LENGTH__L9*/ meltfnum[3] = (melt_list_length((melt_ptr_t)(/*_.RLIST__V10*/ meltfptr[9])));; /*^compute*/ /*_#I__L10*/ meltfnum[4] = ((/*_#LIST_LENGTH__L9*/ meltfnum[3]) > (0));; MELT_LOCATION("warmelt-outobj.melt:3727:/ cond"); /*cond*/ if (/*_#I__L10*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V32*/ meltfptr[21] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3727:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check non empty rlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3727)?(3727):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V32*/ meltfptr[21] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V31*/ meltfptr[19] = /*_.IFELSE___V32*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3727:/ clear"); /*clear*/ /*_#LIST_LENGTH__L9*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_#I__L10*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V32*/ meltfptr[21] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V31*/ meltfptr[19] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3728:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.MODSRCNAME__V3*/ meltfptr[2]; /*_.COMPILE_LIST_SEXPR__V33*/ meltfptr[11] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_LIST_SEXPR*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.RLIST__V10*/ meltfptr[9]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V9*/ meltfptr[7] = /*_.COMPILE_LIST_SEXPR__V33*/ meltfptr[11];; MELT_LOCATION("warmelt-outobj.melt:3707:/ clear"); /*clear*/ /*_.RLIST__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#IS_STRING__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V29*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V31*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_LIST_SEXPR__V33*/ meltfptr[11] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3704:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V9*/ meltfptr[7];; MELT_LOCATION("warmelt-outobj.melt:3704:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V9*/ meltfptr[7] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("COMPILE_ONE_OR_MORE_FILES", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_129_warmelt_outobj_COMPILE_ONE_OR_MORE_FILES*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_130_warmelt_outobj_TRANSLATEFILE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_130_warmelt_outobj_TRANSLATEFILE_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 29 void* varptr[29]; #define MELTFRAM_NBVARNUM 9 long varnum[9]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<29; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 29; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("TRANSLATEFILE_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3733:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3734:/ locexp"); debugeputs(( "starting translatefile_docmd"));} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3735:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3735:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatefile_docmd cmd"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3735; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3735:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3736:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3736:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatefile_docmd moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3736; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3736:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3737:/ quasiblock"); /*_.PARMODENV__V9*/ meltfptr[8] = (/*!konst_1*/ meltfrout->tabval[1]);; MELT_LOCATION("warmelt-outobj.melt:3739:/ cond"); /*cond*/ if (/*_.MODULDATA__V3*/ meltfptr[2]) /*then*/ { /*^cond.then*/ /*_.CURENV__V10*/ meltfptr[9] = /*_.MODULDATA__V3*/ meltfptr[2];; } else {MELT_LOCATION("warmelt-outobj.melt:3739:/ cond.else"); /*_.CURENV__V10*/ meltfptr[9] = (/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2]);; } ; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arg");; /*^compute*/ /*_.INARG__V11*/ meltfptr[10] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o0)));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V12*/ meltfptr[11] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o1)));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3743:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3743:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatefile_docmd inarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3743; /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.INARG__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V13*/ meltfptr[12] = /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3743:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V13*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3744:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3744:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatefile_docmd outarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3744; /*_.DEBUG_MSG_FUN__V16*/ meltfptr[15] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.OUTARG__V12*/ meltfptr[11]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V15*/ meltfptr[13] = /*_.DEBUG_MSG_FUN__V16*/ meltfptr[15];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3744:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V16*/ meltfptr[15] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V15*/ meltfptr[13] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3745:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3745:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatefile_docmd parmodenv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3745; /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.PARMODENV__V9*/ meltfptr[8]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V17*/ meltfptr[15] = /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3745:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V17*/ meltfptr[15] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3746:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3746:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatefile_docmd initial_environment"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3746; /*_.DEBUG_MSG_FUN__V20*/ meltfptr[19] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2])), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V19*/ meltfptr[17] = /*_.DEBUG_MSG_FUN__V20*/ meltfptr[19];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3746:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V20*/ meltfptr[19] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V19*/ meltfptr[17] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3747:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L7*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CURENV__V10*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:3747:/ cond"); /*cond*/ if (/*_#IS_A__L7*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V22*/ meltfptr[21] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3747:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curenv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3747)?(3747):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V22*/ meltfptr[21] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V21*/ meltfptr[19] = /*_.IFELSE___V22*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3747:/ clear"); /*clear*/ /*_#IS_A__L7*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V22*/ meltfptr[21] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V21*/ meltfptr[19] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3748:/ quasiblock"); /*_#IS_STRING__L8*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V12*/ meltfptr[11])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3749:/ cond"); /*cond*/ if (/*_#IS_STRING__L8*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.BASNAM__V24*/ meltfptr[23] = /*_.OUTARG__V12*/ meltfptr[11];; } else {MELT_LOCATION("warmelt-outobj.melt:3749:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L9*/ meltfnum[8] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V11*/ meltfptr[10])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3750:/ cond"); /*cond*/ if (/*_#IS_STRING__L9*/ meltfnum[8]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V26*/ meltfptr[25] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V11*/ meltfptr[10]))));; /*^compute*/ /*_.IFELSE___V25*/ meltfptr[24] = /*_.MAKE_STRING_NAKEDBASENAME__V26*/ meltfptr[25];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3750:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V26*/ meltfptr[25] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3752:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid translatefile mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3753:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3753:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3751:/ quasiblock"); /*_.PROGN___V28*/ meltfptr[27] = /*_.RETURN___V27*/ meltfptr[25];; /*^compute*/ /*_.IFELSE___V25*/ meltfptr[24] = /*_.PROGN___V28*/ meltfptr[27];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3750:/ clear"); /*clear*/ /*_.RETURN___V27*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V28*/ meltfptr[27] = 0 ;} ; } ; /*_.BASNAM__V24*/ meltfptr[23] = /*_.IFELSE___V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3749:/ clear"); /*clear*/ /*_#IS_STRING__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V25*/ meltfptr[24] = 0 ;} ; } ; MELT_LOCATION("warmelt-outobj.melt:3756:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.BASNAM__V24*/ meltfptr[23]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V10*/ meltfptr[9]; /*_.COMPILE_ONE_OR_MORE_FILES__V29*/ meltfptr[25] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_ONE_OR_MORE_FILES*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.INARG__V11*/ meltfptr[10]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V23*/ meltfptr[21] = /*_.COMPILE_ONE_OR_MORE_FILES__V29*/ meltfptr[25];; MELT_LOCATION("warmelt-outobj.melt:3748:/ clear"); /*clear*/ /*_#IS_STRING__L8*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.BASNAM__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_ONE_OR_MORE_FILES__V29*/ meltfptr[25] = 0 ; /*_.LET___V8*/ meltfptr[6] = /*_.LET___V23*/ meltfptr[21];; MELT_LOCATION("warmelt-outobj.melt:3737:/ clear"); /*clear*/ /*_.PARMODENV__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.CURENV__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_.INARG__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V15*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V17*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V19*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V21*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V23*/ meltfptr[21] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3733:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V8*/ meltfptr[6];; MELT_LOCATION("warmelt-outobj.melt:3733:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V8*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("TRANSLATEFILE_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_130_warmelt_outobj_TRANSLATEFILE_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_131_warmelt_outobj_TRANSLATETOMODULE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_131_warmelt_outobj_TRANSLATETOMODULE_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 34 void* varptr[34]; #define MELTFRAM_NBVARNUM 12 long varnum[12]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<34; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 34; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("TRANSLATETOMODULE_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3769:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3770:/ locexp"); debugeputs(( "starting translatetomodule_docmd"));} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3771:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3771:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatetomodule_docmd cmd"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3771; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3771:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3772:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3772:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatetomodule_docmd moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3772; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3772:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3773:/ quasiblock"); /*_.PARMODENV__V8*/ meltfptr[6] = (/*!konst_1*/ meltfrout->tabval[1]);; MELT_LOCATION("warmelt-outobj.melt:3775:/ cond"); /*cond*/ if (/*_.MODULDATA__V3*/ meltfptr[2]) /*then*/ { /*^cond.then*/ /*_.CURENV__V9*/ meltfptr[8] = /*_.MODULDATA__V3*/ meltfptr[2];; } else {MELT_LOCATION("warmelt-outobj.melt:3775:/ cond.else"); /*_.CURENV__V9*/ meltfptr[8] = (/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2]);; } ; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arg");; /*^compute*/ /*_.INARG__V10*/ meltfptr[9] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o0)));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V11*/ meltfptr[10] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o1)));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3779:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3779:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatetomodule_docmd inarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3779; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3779:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3780:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3780:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatetomodule_docmd outarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3780; /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V14*/ meltfptr[12] = /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3780:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3781:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3781:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatetomodule_docmd parmodenv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3781; /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.PARMODENV__V8*/ meltfptr[6]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V16*/ meltfptr[14] = /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3781:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V16*/ meltfptr[14] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3782:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3782:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatetomodule_docmd initial_environment"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3782; /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2])), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V18*/ meltfptr[16] = /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3782:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V18*/ meltfptr[16] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3783:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L7*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CURENV__V9*/ meltfptr[8]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:3783:/ cond"); /*cond*/ if (/*_#IS_A__L7*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V21*/ meltfptr[20] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3783:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curenv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3783)?(3783):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V20*/ meltfptr[18] = /*_.IFELSE___V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3783:/ clear"); /*clear*/ /*_#IS_A__L7*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V20*/ meltfptr[18] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3784:/ quasiblock"); /*_#IS_STRING__L8*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3785:/ cond"); /*cond*/ if (/*_#IS_STRING__L8*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10]))));; /*^compute*/ /*_.BASNAM__V22*/ meltfptr[20] = /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3785:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_STRING__L9*/ meltfnum[8] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3786:/ cond"); /*cond*/ if (/*_#IS_STRING__L9*/ meltfnum[8]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]))));; /*^compute*/ /*_.IFELSE___V24*/ meltfptr[22] = /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3786:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3788:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid translatetomodule mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3789:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3789:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3787:/ quasiblock"); /*_.PROGN___V27*/ meltfptr[26] = /*_.RETURN___V26*/ meltfptr[24];; /*^compute*/ /*_.IFELSE___V24*/ meltfptr[22] = /*_.PROGN___V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3786:/ clear"); /*clear*/ /*_.RETURN___V26*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V27*/ meltfptr[26] = 0 ;} ; } ; /*_.BASNAM__V22*/ meltfptr[20] = /*_.IFELSE___V24*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3785:/ clear"); /*clear*/ /*_#IS_STRING__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V24*/ meltfptr[22] = 0 ;} ; } ; /*_.TMPSRCNAM__V28*/ meltfptr[24] = (meltgc_new_string_tempname_suffixed((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.BASNAM__V22*/ meltfptr[20])), ( ".c")));; MELT_LOCATION("warmelt-outobj.melt:3793:/ cond"); /*cond*/ if (/*_.OUTARG__V11*/ meltfptr[10]) /*then*/ { /*^cond.then*/ /*_.OUTNAM__V29*/ meltfptr[26] = /*_.OUTARG__V11*/ meltfptr[10];; } else {MELT_LOCATION("warmelt-outobj.melt:3793:/ cond.else"); /*_.OUTNAM__V29*/ meltfptr[26] = /*_.BASNAM__V22*/ meltfptr[20];; } ; /*^compute*/ /*_#FAILREMOVESRC__L10*/ meltfnum[8] = 0;; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3796:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[10] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3796:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatetomodule_docmd basnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[10]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3796; /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.BASNAM__V22*/ meltfptr[20]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V30*/ meltfptr[22] = /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3796:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[10] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V30*/ meltfptr[22] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3797:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[10] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3797:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatetomodule_docmd tmpsrcnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[10]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3797; /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.TMPSRCNAM__V28*/ meltfptr[24]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V32*/ meltfptr[30] = /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3797:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[10] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V32*/ meltfptr[30] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3798:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.TMPSRCNAM__V28*/ meltfptr[24]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V9*/ meltfptr[8]; /*_.COMPILE_ONE_OR_MORE_FILES__V34*/ meltfptr[32] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_ONE_OR_MORE_FILES*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:3799:/ locexp"); meltgc_generate_melt_module(/*_.TMPSRCNAM__V28*/ meltfptr[24],/*_.OUTNAM__V29*/ meltfptr[26]);;} ; { MELT_LOCATION("warmelt-outobj.melt:3802:/ locexp"); /*_#FAILREMOVESRC__L10*/ meltfnum[8] = (long) remove(melt_string_str((melt_ptr_t)/*_.TMPSRCNAM__V28*/ meltfptr[24])) ;} ; MELT_LOCATION("warmelt-outobj.melt:3805:/ cond"); /*cond*/ if (/*_#FAILREMOVESRC__L10*/ meltfnum[8]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3806:/ locexp"); warning (0, "MELT WARNING MSG [#%ld]::: %s - %s", melt_dbgcounter, ( "failed to remove temporary generated C file"), melt_string_str((melt_ptr_t)(/*_.TMPSRCNAM__V28*/ meltfptr[24])));} ; /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:3784:/ clear"); /*clear*/ /*_#IS_STRING__L8*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.BASNAM__V22*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.TMPSRCNAM__V28*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.OUTNAM__V29*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_#FAILREMOVESRC__L10*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V30*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V32*/ meltfptr[30] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_ONE_OR_MORE_FILES__V34*/ meltfptr[32] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3773:/ clear"); /*clear*/ /*_.PARMODENV__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.CURENV__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_.INARG__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V18*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V20*/ meltfptr[18] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3769:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("TRANSLATETOMODULE_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_131_warmelt_outobj_TRANSLATETOMODULE_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_132_warmelt_outobj_TRANSLATEDEBUG_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_132_warmelt_outobj_TRANSLATEDEBUG_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 42 void* varptr[42]; #define MELTFRAM_NBVARNUM 12 long varnum[12]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<42; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 42; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("TRANSLATEDEBUG_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3821:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3822:/ locexp"); debugeputs(( "starting translatedebug_docmd"));} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3823:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3823:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatedebug_docmd cmd"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3823; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3823:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3824:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3824:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translatedebug_docmd moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3824; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3824:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3825:/ quasiblock"); /*_.PARMODENV__V8*/ meltfptr[6] = (/*!konst_1*/ meltfrout->tabval[1]);; MELT_LOCATION("warmelt-outobj.melt:3827:/ cond"); /*cond*/ if (/*_.MODULDATA__V3*/ meltfptr[2]) /*then*/ { /*^cond.then*/ /*_.CURENV__V9*/ meltfptr[8] = /*_.MODULDATA__V3*/ meltfptr[2];; } else {MELT_LOCATION("warmelt-outobj.melt:3827:/ cond.else"); /*_.CURENV__V9*/ meltfptr[8] = (/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2]);; } ; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arg");; /*^compute*/ /*_.INARG__V10*/ meltfptr[9] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o0)));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V11*/ meltfptr[10] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o1)));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3831:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3831:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatedebug_docmd inarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3831; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3831:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3832:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3832:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatedebug_docmd outarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3832; /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V14*/ meltfptr[12] = /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3832:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3833:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3833:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatedebug_docmd parmodenv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3833; /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.PARMODENV__V8*/ meltfptr[6]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V16*/ meltfptr[14] = /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3833:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V16*/ meltfptr[14] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3834:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3834:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translatedebug_docmd initial_environment"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3834; /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2])), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V18*/ meltfptr[16] = /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3834:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L6*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V19*/ meltfptr[18] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V18*/ meltfptr[16] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3835:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L7*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CURENV__V9*/ meltfptr[8]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:3835:/ cond"); /*cond*/ if (/*_#IS_A__L7*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V21*/ meltfptr[20] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3835:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curenv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3835)?(3835):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V20*/ meltfptr[18] = /*_.IFELSE___V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3835:/ clear"); /*clear*/ /*_#IS_A__L7*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V20*/ meltfptr[18] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3836:/ quasiblock"); /*_#IS_STRING__L8*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3837:/ cond"); /*cond*/ if (/*_#IS_STRING__L8*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10]))));; /*^compute*/ /*_.BASNAM__V22*/ meltfptr[20] = /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3837:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V23*/ meltfptr[22] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_STRING__L9*/ meltfnum[8] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3838:/ cond"); /*cond*/ if (/*_#IS_STRING__L9*/ meltfnum[8]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]))));; /*^compute*/ /*_.IFELSE___V24*/ meltfptr[22] = /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3838:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V25*/ meltfptr[24] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3840:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid translatedebug mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3841:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3841:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3839:/ quasiblock"); /*_.PROGN___V27*/ meltfptr[26] = /*_.RETURN___V26*/ meltfptr[24];; /*^compute*/ /*_.IFELSE___V24*/ meltfptr[22] = /*_.PROGN___V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3838:/ clear"); /*clear*/ /*_.RETURN___V26*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V27*/ meltfptr[26] = 0 ;} ; } ; /*_.BASNAM__V22*/ meltfptr[20] = /*_.IFELSE___V24*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3837:/ clear"); /*clear*/ /*_#IS_STRING__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V24*/ meltfptr[22] = 0 ;} ; } ; MELT_LOCATION("warmelt-outobj.melt:3844:/ quasiblock"); /*_.SRCNAMBUF__V29*/ meltfptr[26] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[5])), (char*)0);; { MELT_LOCATION("warmelt-outobj.melt:3845:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.SRCNAMBUF__V29*/ meltfptr[26]), melt_string_str((melt_ptr_t)(/*_.BASNAM__V22*/ meltfptr[20])));} ; { MELT_LOCATION("warmelt-outobj.melt:3846:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.SRCNAMBUF__V29*/ meltfptr[26]), ( ".c"));} ; /*_.STRBUF2STRING__V30*/ meltfptr[22] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_strbuf_str((melt_ptr_t)(/*_.SRCNAMBUF__V29*/ meltfptr[26]))));; /*^compute*/ /*_.LET___V28*/ meltfptr[24] = /*_.STRBUF2STRING__V30*/ meltfptr[22];; MELT_LOCATION("warmelt-outobj.melt:3844:/ clear"); /*clear*/ /*_.SRCNAMBUF__V29*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.STRBUF2STRING__V30*/ meltfptr[22] = 0 ; /*_.SRCNAM__V31*/ meltfptr[26] = /*_.LET___V28*/ meltfptr[24];; MELT_LOCATION("warmelt-outobj.melt:3849:/ cond"); /*cond*/ if (/*_.OUTARG__V11*/ meltfptr[10]) /*then*/ { /*^cond.then*/ /*_.DBGMODULNAM__V32*/ meltfptr[22] = /*_.OUTARG__V11*/ meltfptr[10];; } else {MELT_LOCATION("warmelt-outobj.melt:3849:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3850:/ quasiblock"); /*_.DBGNAMBUF__V34*/ meltfptr[33] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[5])), (char*)0);; { MELT_LOCATION("warmelt-outobj.melt:3851:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.DBGNAMBUF__V34*/ meltfptr[33]), melt_string_str((melt_ptr_t)(/*_.BASNAM__V22*/ meltfptr[20])));} ; { MELT_LOCATION("warmelt-outobj.melt:3852:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.DBGNAMBUF__V34*/ meltfptr[33]), ( ".n.so"));} ; /*_.STRBUF2STRING__V35*/ meltfptr[34] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_strbuf_str((melt_ptr_t)(/*_.DBGNAMBUF__V34*/ meltfptr[33]))));; /*^compute*/ /*_.LET___V33*/ meltfptr[32] = /*_.STRBUF2STRING__V35*/ meltfptr[34];; MELT_LOCATION("warmelt-outobj.melt:3850:/ clear"); /*clear*/ /*_.DBGNAMBUF__V34*/ meltfptr[33] = 0 ; /*^clear*/ /*clear*/ /*_.STRBUF2STRING__V35*/ meltfptr[34] = 0 ; /*_.DBGMODULNAM__V32*/ meltfptr[22] = /*_.LET___V33*/ meltfptr[32];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3849:/ clear"); /*clear*/ /*_.LET___V33*/ meltfptr[32] = 0 ;} ; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3855:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[8] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3855:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatedebug_docmd basnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[8]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3855; /*_.DEBUG_MSG_FUN__V37*/ meltfptr[34] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.BASNAM__V22*/ meltfptr[20]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V36*/ meltfptr[33] = /*_.DEBUG_MSG_FUN__V37*/ meltfptr[34];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3855:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V37*/ meltfptr[34] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V36*/ meltfptr[33] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3856:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3856:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatedebug_docmd srcnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3856; /*_.DEBUG_MSG_FUN__V39*/ meltfptr[34] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.SRCNAM__V31*/ meltfptr[26]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V38*/ meltfptr[32] = /*_.DEBUG_MSG_FUN__V39*/ meltfptr[34];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3856:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L11*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V39*/ meltfptr[34] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V38*/ meltfptr[32] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3857:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.SRCNAM__V31*/ meltfptr[26]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V9*/ meltfptr[8]; /*_.COMPILE_ONE_OR_MORE_FILES__V40*/ meltfptr[34] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_ONE_OR_MORE_FILES*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3858:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[8] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3858:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translatedebug_docmd dbgmodulnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[8]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3858; /*_.DEBUG_MSG_FUN__V42*/ meltfptr[41] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.DBGMODULNAM__V32*/ meltfptr[22]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V41*/ meltfptr[40] = /*_.DEBUG_MSG_FUN__V42*/ meltfptr[41];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3858:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V42*/ meltfptr[41] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V41*/ meltfptr[40] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:3859:/ locexp"); meltgc_generate_melt_module(/*_.SRCNAM__V31*/ meltfptr[26],/*_.DBGMODULNAM__V32*/ meltfptr[22]);;} ; MELT_LOCATION("warmelt-outobj.melt:3836:/ clear"); /*clear*/ /*_#IS_STRING__L8*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.BASNAM__V22*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V28*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.SRCNAM__V31*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.DBGMODULNAM__V32*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V36*/ meltfptr[33] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V38*/ meltfptr[32] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_ONE_OR_MORE_FILES__V40*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V41*/ meltfptr[40] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3825:/ clear"); /*clear*/ /*_.PARMODENV__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.CURENV__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_.INARG__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V18*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V20*/ meltfptr[18] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3821:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("TRANSLATEDEBUG_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_132_warmelt_outobj_TRANSLATEDEBUG_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_133_warmelt_outobj_RUNFILE_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_133_warmelt_outobj_RUNFILE_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 35 void* varptr[35]; #define MELTFRAM_NBVARNUM 9 long varnum[9]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<35; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 35; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("RUNFILE_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3875:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3876:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3876:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start runfile_docmd cmd"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3876; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3876:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3877:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3877:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start runfile_docmd moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3877; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3877:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3878:/ quasiblock"); /*_.PARMODENV__V8*/ meltfptr[6] = (/*!konst_1*/ meltfrout->tabval[1]);; MELT_LOCATION("warmelt-outobj.melt:3880:/ cond"); /*cond*/ if (/*_.MODULDATA__V3*/ meltfptr[2]) /*then*/ { /*^cond.then*/ /*_.CURENV__V9*/ meltfptr[8] = /*_.MODULDATA__V3*/ meltfptr[2];; } else {MELT_LOCATION("warmelt-outobj.melt:3880:/ cond.else"); /*_.CURENV__V9*/ meltfptr[8] = (/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2]);; } ; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arg");; /*^compute*/ /*_.INARG__V10*/ meltfptr[9] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o0)));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V11*/ meltfptr[10] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o1)));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3884:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3884:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read runfile_mode parmodenv"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3884; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.PARMODENV__V8*/ meltfptr[6]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3884:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3885:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3885:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read runfile_mode initial_environment"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3885; /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2])), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V14*/ meltfptr[12] = /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3885:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3886:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L5*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CURENV__V9*/ meltfptr[8]), (melt_ptr_t)((/*!CLASS_ENVIRONMENT*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:3886:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V17*/ meltfptr[16] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3886:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curenv"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3886)?(3886):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V17*/ meltfptr[16] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V16*/ meltfptr[14] = /*_.IFELSE___V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3886:/ clear"); /*clear*/ /*_#IS_A__L5*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V17*/ meltfptr[16] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V16*/ meltfptr[14] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3887:/ quasiblock"); /*_.MODULNAM__V18*/ meltfptr[16] = (/*nil*/NULL);; /*^compute*/ /*_#IS_STRING__L6*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3890:/ cond"); /*cond*/ if (/*_#IS_STRING__L6*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V20*/ meltfptr[19] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.OUTARG__V11*/ meltfptr[10]))));; MELT_LOCATION("warmelt-outobj.melt:3891:/ compute"); /*_.MODULNAM__V18*/ meltfptr[16] = /*_.SETQ___V21*/ meltfptr[20] = /*_.MAKE_STRING_NAKEDBASENAME__V20*/ meltfptr[19];; MELT_LOCATION("warmelt-outobj.melt:3890:/ quasiblock"); /*_.PROGN___V22*/ meltfptr[21] = /*_.OUTARG__V11*/ meltfptr[10];; /*^compute*/ /*_.MODSRCNAME__V19*/ meltfptr[18] = /*_.PROGN___V22*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3890:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V22*/ meltfptr[21] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_STRING__L7*/ meltfnum[6] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3893:/ cond"); /*cond*/ if (/*_#IS_STRING__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V24*/ meltfptr[20] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]))));; MELT_LOCATION("warmelt-outobj.melt:3894:/ compute"); /*_.MODULNAM__V18*/ meltfptr[16] = /*_.SETQ___V25*/ meltfptr[21] = /*_.MAKE_STRING_NAKEDBASENAME__V24*/ meltfptr[20];; /*_.MAKE_STRING_TEMPNAME_SUFFIXED__V26*/ meltfptr[25] = (meltgc_new_string_tempname_suffixed((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9])), ( ".c")));; MELT_LOCATION("warmelt-outobj.melt:3893:/ quasiblock"); /*_.PROGN___V27*/ meltfptr[26] = /*_.MAKE_STRING_TEMPNAME_SUFFIXED__V26*/ meltfptr[25];; /*^compute*/ /*_.IFELSE___V23*/ meltfptr[19] = /*_.PROGN___V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3893:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V24*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V25*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_STRING_TEMPNAME_SUFFIXED__V26*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V27*/ meltfptr[26] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3897:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid runfile mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3898:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3898:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3896:/ quasiblock"); /*_.PROGN___V29*/ meltfptr[21] = /*_.RETURN___V28*/ meltfptr[20];; /*^compute*/ /*_.IFELSE___V23*/ meltfptr[19] = /*_.PROGN___V29*/ meltfptr[21];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3893:/ clear"); /*clear*/ /*_.RETURN___V28*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V29*/ meltfptr[21] = 0 ;} ; } ; /*_.MODSRCNAME__V19*/ meltfptr[18] = /*_.IFELSE___V23*/ meltfptr[19];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3890:/ clear"); /*clear*/ /*_#IS_STRING__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V23*/ meltfptr[19] = 0 ;} ; } ; MELT_LOCATION("warmelt-outobj.melt:3901:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MODSRCNAME__V19*/ meltfptr[18]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V9*/ meltfptr[8]; /*_.COMPILE_ONE_OR_MORE_FILES__V30*/ meltfptr[25] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_ONE_OR_MORE_FILES*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.INARG__V10*/ meltfptr[9]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3902:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3902:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after compilation runfile_mode modsrcname"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3902; /*_.DEBUG_MSG_FUN__V32*/ meltfptr[20] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODSRCNAME__V19*/ meltfptr[18]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V31*/ meltfptr[26] = /*_.DEBUG_MSG_FUN__V32*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3902:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V32*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V31*/ meltfptr[26] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3903:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L9*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3903:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after compilation runfile_mode modulnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L9*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3903; /*_.DEBUG_MSG_FUN__V34*/ meltfptr[19] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULNAM__V18*/ meltfptr[16]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V33*/ meltfptr[21] = /*_.DEBUG_MSG_FUN__V34*/ meltfptr[19];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3903:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L9*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V34*/ meltfptr[19] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V33*/ meltfptr[21] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_.LOAD_MELT_MODULE__V35*/ meltfptr[20] = (meltgc_load_melt_module((melt_ptr_t)(/*_.CURENV__V9*/ meltfptr[8]), melt_string_str((melt_ptr_t)(/*_.MODULNAM__V18*/ meltfptr[16]))));; { MELT_LOCATION("warmelt-outobj.melt:3905:/ locexp"); /*ignore*/(void)(/*_.LOAD_MELT_MODULE__V35*/ meltfptr[20]);} ; MELT_LOCATION("warmelt-outobj.melt:3887:/ clear"); /*clear*/ /*_.MODULNAM__V18*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_#IS_STRING__L6*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.MODSRCNAME__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_ONE_OR_MORE_FILES__V30*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V31*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V33*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.LOAD_MELT_MODULE__V35*/ meltfptr[20] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3878:/ clear"); /*clear*/ /*_.PARMODENV__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.CURENV__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_.INARG__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V16*/ meltfptr[14] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3875:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("RUNFILE_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_133_warmelt_outobj_RUNFILE_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_134_warmelt_outobj_TRANSLATEINIT_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_134_warmelt_outobj_TRANSLATEINIT_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 34 void* varptr[34]; #define MELTFRAM_NBVARNUM 8 long varnum[8]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; const char* loc_CSTRING__o2; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<34; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 34; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("TRANSLATEINIT_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3918:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3919:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3919:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translateinit_mode arg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3919; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3919:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3920:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3920:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start translateinit_mode moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3920; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3920:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3921:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3921:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "before read translateinit_mode initial_environment"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3921; /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)((/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[1])), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V8*/ meltfptr[6] = /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3921:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V9*/ meltfptr[8] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V8*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3922:/ quasiblock"); /*_.RLIST__V11*/ meltfptr[10] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[2]))));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arg");; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "arglist");; MELT_LOCATION("warmelt-outobj.melt:3925:/ cond"); /*cond*/ if (/*_?*/ meltfram__.loc_CSTRING__o0) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRINGCONST__V13*/ meltfptr[12] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o0)));; /*^compute*/ /*_.INARG__V12*/ meltfptr[11] = /*_.MAKE_STRINGCONST__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3925:/ clear"); /*clear*/ /*_.MAKE_STRINGCONST__V13*/ meltfptr[12] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3927:/ cond"); /*cond*/ if (/*_?*/ meltfram__.loc_CSTRING__o1) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.SPLIT_STRING_COMMA__V15*/ meltfptr[14] = meltgc_new_split_string(/*_?*/ meltfram__.loc_CSTRING__o1, ',', (melt_ptr_t) (/*!DISCR_STRING*/ meltfrout->tabval[3]));; /*^compute*/ /*_.IFELSE___V14*/ meltfptr[12] = /*_.SPLIT_STRING_COMMA__V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3927:/ clear"); /*clear*/ /*_.SPLIT_STRING_COMMA__V15*/ meltfptr[14] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3931:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid arg or arglist to translateinit mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3932:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3932:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3930:/ quasiblock"); /*_.PROGN___V17*/ meltfptr[16] = /*_.RETURN___V16*/ meltfptr[14];; /*^compute*/ /*_.IFELSE___V14*/ meltfptr[12] = /*_.PROGN___V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3927:/ clear"); /*clear*/ /*_.RETURN___V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V17*/ meltfptr[16] = 0 ;} ; } ; /*_.INARG__V12*/ meltfptr[11] = /*_.IFELSE___V14*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3925:/ clear"); /*clear*/ /*_.IFELSE___V14*/ meltfptr[12] = 0 ;} ; } ; /*_?*/ meltfram__.loc_CSTRING__o2 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V18*/ meltfptr[14] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o2)));; /*^compute*/ /*_#IS_STRING__L4*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V18*/ meltfptr[14])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3935:/ cond"); /*cond*/ if (/*_#IS_STRING__L4*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.BASNAM__V19*/ meltfptr[16] = /*_.OUTARG__V18*/ meltfptr[14];; } else {MELT_LOCATION("warmelt-outobj.melt:3935:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L5*/ meltfnum[4] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3936:/ cond"); /*cond*/ if (/*_#IS_STRING__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_STRING_NAKEDBASENAME__V21*/ meltfptr[20] = (meltgc_new_string_nakedbasename((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), melt_string_str((melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11]))));; /*^compute*/ /*_.IFELSE___V20*/ meltfptr[12] = /*_.MAKE_STRING_NAKEDBASENAME__V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3936:/ clear"); /*clear*/ /*_.MAKE_STRING_NAKEDBASENAME__V21*/ meltfptr[20] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3938:/ locexp"); error ("MELT ERROR MSG [#%ld]::: %s", melt_dbgcounter, ( "invalid translateinit mode"));} ; MELT_LOCATION("warmelt-outobj.melt:3939:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3939:/ finalreturn"); ; /*finalret*/ goto labend_rout ; MELT_LOCATION("warmelt-outobj.melt:3937:/ quasiblock"); /*_.PROGN___V23*/ meltfptr[22] = /*_.RETURN___V22*/ meltfptr[20];; /*^compute*/ /*_.IFELSE___V20*/ meltfptr[12] = /*_.PROGN___V23*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3936:/ clear"); /*clear*/ /*_.RETURN___V22*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V23*/ meltfptr[22] = 0 ;} ; } ; /*_.BASNAM__V19*/ meltfptr[16] = /*_.IFELSE___V20*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3935:/ clear"); /*clear*/ /*_#IS_STRING__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V20*/ meltfptr[12] = 0 ;} ; } ; /*_#IS_STRING__L6*/ meltfnum[4] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:3943:/ cond"); /*cond*/ if (/*_#IS_STRING__L6*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.READ_FILE__V25*/ meltfptr[22] = (meltgc_read_file (melt_string_str((melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11])), (char*)0));; MELT_LOCATION("warmelt-outobj.melt:3944:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.READ_FILE__V25*/ meltfptr[22]; /*_.LIST_APPEND2LIST__V26*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!LIST_APPEND2LIST*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.RLIST__V11*/ meltfptr[10]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFELSE___V24*/ meltfptr[20] = /*_.LIST_APPEND2LIST__V26*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3943:/ clear"); /*clear*/ /*_.READ_FILE__V25*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_APPEND2LIST__V26*/ meltfptr[12] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_LIST__L7*/ meltfnum[6] = (melt_magic_discr((melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11])) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3945:/ cond"); /*cond*/ if (/*_#IS_LIST__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:3947:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V29*/ meltfptr[28] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_8*/ meltfrout->tabval[8])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V29*/ meltfptr[28])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V29*/ meltfptr[28]))); ((meltclosure_ptr_t)/*_.LAMBDA___V29*/ meltfptr[28])->tabval[0] = (melt_ptr_t)(/*_.RLIST__V11*/ meltfptr[10]); ; /*_.LAMBDA___V28*/ meltfptr[12] = /*_.LAMBDA___V29*/ meltfptr[28];; MELT_LOCATION("warmelt-outobj.melt:3946:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V28*/ meltfptr[12]; /*_.LIST_EVERY__V30*/ meltfptr[29] = melt_apply ((meltclosure_ptr_t)((/*!LIST_EVERY*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.INARG__V12*/ meltfptr[11]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFELSE___V27*/ meltfptr[22] = /*_.LIST_EVERY__V30*/ meltfptr[29];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3945:/ clear"); /*clear*/ /*_.LAMBDA___V28*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_EVERY__V30*/ meltfptr[29] = 0 ;} ; } else {/*^cond.else*/ /*_.IFELSE___V27*/ meltfptr[22] = NULL;; } ; /*^compute*/ /*_.IFELSE___V24*/ meltfptr[20] = /*_.IFELSE___V27*/ meltfptr[22];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3943:/ clear"); /*clear*/ /*_#IS_LIST__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V27*/ meltfptr[22] = 0 ;} ; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3956:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3956:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "after read translateinit_mode rlist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3956; /*_.DEBUG_MSG_FUN__V32*/ meltfptr[29] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.RLIST__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V31*/ meltfptr[12] = /*_.DEBUG_MSG_FUN__V32*/ meltfptr[29];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3956:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V32*/ meltfptr[29] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V31*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3957:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[1]); /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.BASNAM__V19*/ meltfptr[16]; /*_.COMPILE_LIST_SEXPR__V33*/ meltfptr[22] = melt_apply ((meltclosure_ptr_t)((/*!COMPILE_LIST_SEXPR*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.RLIST__V11*/ meltfptr[10]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:3958:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:3958:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.LET___V10*/ meltfptr[8] = /*_.RETURN___V34*/ meltfptr[29];; MELT_LOCATION("warmelt-outobj.melt:3922:/ clear"); /*clear*/ /*_.RLIST__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.INARG__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o2 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V18*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_#IS_STRING__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.BASNAM__V19*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_#IS_STRING__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V24*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V31*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.COMPILE_LIST_SEXPR__V33*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.RETURN___V34*/ meltfptr[29] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3918:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V10*/ meltfptr[8];; MELT_LOCATION("warmelt-outobj.melt:3918:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V10*/ meltfptr[8] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("TRANSLATEINIT_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_134_warmelt_outobj_TRANSLATEINIT_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_135_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_135_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 11 void* varptr[11]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<11; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 11; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3947:/ getarg"); /*_.CURARG__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:3948:/ locexp"); inform(UNKNOWN_LOCATION, ("MELT INFORM [#%ld]: %s - %s"), melt_dbgcounter, ( "reading from file"), melt_string_str((melt_ptr_t)(/*_.CURARG__V2*/ meltfptr[1])));} ; MELT_LOCATION("warmelt-outobj.melt:3949:/ quasiblock"); /*_.CUREAD__V4*/ meltfptr[3] = (meltgc_read_file (melt_string_str((melt_ptr_t)(/*_.CURARG__V2*/ meltfptr[1])), (char*)0));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3951:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)((/*~RLIST*/ meltfclos->tabval[0]))) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:3951:/ cond"); /*cond*/ if (/*_#IS_LIST__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3951:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check rlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3951)?(3951):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3951:/ clear"); /*clear*/ /*_#IS_LIST__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3952:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST_OR_NULL__L2*/ meltfnum[0] = ((/*_.CUREAD__V4*/ meltfptr[3]) == NULL || (melt_unsafe_magic_discr((melt_ptr_t)(/*_.CUREAD__V4*/ meltfptr[3])) == OBMAG_LIST));; MELT_LOCATION("warmelt-outobj.melt:3952:/ cond"); /*cond*/ if (/*_#IS_LIST_OR_NULL__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:3952:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curead"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (3952)?(3952):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3952:/ clear"); /*clear*/ /*_#IS_LIST_OR_NULL__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:3953:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:3953:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "translateinit_mode curead"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 3953; /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CUREAD__V4*/ meltfptr[3]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V9*/ meltfptr[7] = /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:3953:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:3954:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREAD__V4*/ meltfptr[3]; /*_.LIST_APPEND2LIST__V11*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!LIST_APPEND2LIST*/ meltfrout->tabval[1])), (melt_ptr_t)((/*~RLIST*/ meltfclos->tabval[0])), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V3*/ meltfptr[2] = /*_.LIST_APPEND2LIST__V11*/ meltfptr[9];; MELT_LOCATION("warmelt-outobj.melt:3949:/ clear"); /*clear*/ /*_.CUREAD__V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_APPEND2LIST__V11*/ meltfptr[9] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3947:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V3*/ meltfptr[2];; MELT_LOCATION("warmelt-outobj.melt:3947:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.LET___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_135_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_136_warmelt_outobj_MAKEDOC_SCANINPUT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_136_warmelt_outobj_MAKEDOC_SCANINPUT_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 16 void* varptr[16]; #define MELTFRAM_NBVARNUM 2 long varnum[2]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<16; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 16; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_SCANINPUT", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:3999:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.ARGLIST__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.ARGLIST__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.XLIST__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.XLIST__V4*/ meltfptr[3])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4000:/ quasiblock"); /*_#NBFIL__L1*/ meltfnum[0] = (melt_list_length((melt_ptr_t)(/*_.ARGLIST__V3*/ meltfptr[2])));; /*^compute*/ /*_#XLISTLEN__L2*/ meltfnum[1] = (melt_list_length((melt_ptr_t)(/*_.XLIST__V4*/ meltfptr[3])));; MELT_LOCATION("warmelt-outobj.melt:4003:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 13, "MKDOC_DOCSYMAP");/*_.DOCSYMAP__V6*/ meltfptr[5] = slot; }; ; } else {/*^cond.else*/ /*_.DOCSYMAP__V6*/ meltfptr[5] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4004:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 11, "MKDOC_FORMALOCCMAP");/*_.FORMALOCCMAP__V7*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.FORMALOCCMAP__V7*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4006:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V9*/ meltfptr[8] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_3*/ meltfrout->tabval[3])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V9*/ meltfptr[8])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V9*/ meltfptr[8]))); ((meltclosure_ptr_t)/*_.LAMBDA___V9*/ meltfptr[8])->tabval[0] = (melt_ptr_t)(/*_.DOCSYMAP__V6*/ meltfptr[5]); ; /*_.ADD_DOCSYM__V8*/ meltfptr[7] = /*_.LAMBDA___V9*/ meltfptr[8];; MELT_LOCATION("warmelt-outobj.melt:4019:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V11*/ meltfptr[10] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_6*/ meltfrout->tabval[6])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V11*/ meltfptr[10])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V11*/ meltfptr[10]))); ((meltclosure_ptr_t)/*_.LAMBDA___V11*/ meltfptr[10])->tabval[0] = (melt_ptr_t)(/*_.DOCSYMAP__V6*/ meltfptr[5]); ; /*_.FETCH_DOCSYM__V10*/ meltfptr[9] = /*_.LAMBDA___V11*/ meltfptr[10];; MELT_LOCATION("warmelt-outobj.melt:4029:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V13*/ meltfptr[12] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_11*/ meltfrout->tabval[11])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V13*/ meltfptr[12])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V13*/ meltfptr[12]))); ((meltclosure_ptr_t)/*_.LAMBDA___V13*/ meltfptr[12])->tabval[0] = (melt_ptr_t)(/*_.FORMALOCCMAP__V7*/ meltfptr[6]); ; /*_.ADD_FORMAL_OCC__V12*/ meltfptr[11] = /*_.LAMBDA___V13*/ meltfptr[12];; { MELT_LOCATION("warmelt-outobj.melt:4045:/ locexp"); inform (UNKNOWN_LOCATION, "MELT makedoc [#%ld]: read and expanded %ld expressions from %ld files", melt_dbgcounter, /*_#XLISTLEN__L2*/ meltfnum[1], /*_#NBFIL__L1*/ meltfnum[0]); ;} ; MELT_LOCATION("warmelt-outobj.melt:4051:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V15*/ meltfptr[14] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_31*/ meltfrout->tabval[31])), (3)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V15*/ meltfptr[14])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V15*/ meltfptr[14]))); ((meltclosure_ptr_t)/*_.LAMBDA___V15*/ meltfptr[14])->tabval[0] = (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V15*/ meltfptr[14])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 1>= 0 && 1< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V15*/ meltfptr[14]))); ((meltclosure_ptr_t)/*_.LAMBDA___V15*/ meltfptr[14])->tabval[1] = (melt_ptr_t)(/*_.ADD_DOCSYM__V8*/ meltfptr[7]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V15*/ meltfptr[14])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 2>= 0 && 2< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V15*/ meltfptr[14]))); ((meltclosure_ptr_t)/*_.LAMBDA___V15*/ meltfptr[14])->tabval[2] = (melt_ptr_t)(/*_.ADD_FORMAL_OCC__V12*/ meltfptr[11]); ; /*_.LAMBDA___V14*/ meltfptr[13] = /*_.LAMBDA___V15*/ meltfptr[14];; MELT_LOCATION("warmelt-outobj.melt:4049:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V14*/ meltfptr[13]; /*_.LIST_EVERY__V16*/ meltfptr[15] = melt_apply ((meltclosure_ptr_t)((/*!LIST_EVERY*/ meltfrout->tabval[12])), (melt_ptr_t)(/*_.XLIST__V4*/ meltfptr[3]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V5*/ meltfptr[4] = /*_.LIST_EVERY__V16*/ meltfptr[15];; MELT_LOCATION("warmelt-outobj.melt:4000:/ clear"); /*clear*/ /*_#NBFIL__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#XLISTLEN__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.DOCSYMAP__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.FORMALOCCMAP__V7*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V8*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.FETCH_DOCSYM__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_FORMAL_OCC__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_EVERY__V16*/ meltfptr[15] = 0 ; MELT_LOCATION("warmelt-outobj.melt:3999:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V5*/ meltfptr[4];; MELT_LOCATION("warmelt-outobj.melt:3999:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.LET___V5*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_SCANINPUT", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_136_warmelt_outobj_MAKEDOC_SCANINPUT*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_137_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_137_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 13 void* varptr[13]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<13; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 13; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4006:/ getarg"); /*_.NAM__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ /*_.DISCRIM__V4*/ meltfptr[3] = (melt_discr((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])));; /*^compute*/ /*_#__L1*/ meltfnum[0] = ((/*_.DISCRIM__V4*/ meltfptr[3]) != ((/*!CLASS_SYMBOL*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4008:/ cond"); /*cond*/ if (/*_#__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_#IS_A__L3*/ meltfnum[2] = melt_is_instance_of((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])));; /*^compute*/ /*_#IF___L2*/ meltfnum[1] = /*_#IS_A__L3*/ meltfnum[2];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4008:/ clear"); /*clear*/ /*_#IS_A__L3*/ meltfnum[2] = 0 ;} ; } else {/*^cond.else*/ /*_#IF___L2*/ meltfnum[1] = 0;; } ; MELT_LOCATION("warmelt-outobj.melt:4008:/ cond"); /*cond*/ if (/*_#IF___L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4010:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.NAMED_NAME__V6*/ meltfptr[5] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V6*/ meltfptr[5] = NULL;; } ; /*^compute*/ /*_.GET_SYMBOLSTR__V7*/ meltfptr[6] = meltgc_named_symbol( melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V6*/ meltfptr[5])), MELT_GET);; MELT_LOCATION("warmelt-outobj.melt:4010:/ compute"); /*_.NAM__V2*/ meltfptr[1] = /*_.SETQ___V8*/ meltfptr[7] = /*_.GET_SYMBOLSTR__V7*/ meltfptr[6];; /*_.IFELSE___V5*/ meltfptr[4] = /*_.SETQ___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4008:/ clear"); /*clear*/ /*_.NAMED_NAME__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.GET_SYMBOLSTR__V7*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V8*/ meltfptr[7] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_STRING__L4*/ meltfnum[2] = (melt_magic_discr((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4011:/ cond"); /*cond*/ if (/*_#IS_STRING__L4*/ meltfnum[2]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.GET_SYMBOLSTR__V10*/ meltfptr[6] = meltgc_named_symbol( melt_string_str((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])), MELT_GET);; MELT_LOCATION("warmelt-outobj.melt:4012:/ compute"); /*_.NAM__V2*/ meltfptr[1] = /*_.SETQ___V11*/ meltfptr[7] = /*_.GET_SYMBOLSTR__V10*/ meltfptr[6];; /*_.IFELSE___V9*/ meltfptr[5] = /*_.SETQ___V11*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4011:/ clear"); /*clear*/ /*_.GET_SYMBOLSTR__V10*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V11*/ meltfptr[7] = 0 ;} ; } else {/*^cond.else*/ /*_.IFELSE___V9*/ meltfptr[5] = NULL;; } ; /*^compute*/ /*_.IFELSE___V5*/ meltfptr[4] = /*_.IFELSE___V9*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4008:/ clear"); /*clear*/ /*_#IS_STRING__L4*/ meltfnum[2] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V9*/ meltfptr[5] = 0 ;} ; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4014:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L5*/ meltfnum[2] = melt_is_instance_of((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SYMBOL*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4014:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[2]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4014:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check nam"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4014)?(4014):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V13*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V12*/ meltfptr[6] = /*_.IFELSE___V13*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4014:/ clear"); /*clear*/ /*_#IS_A__L5*/ meltfnum[2] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4015:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) ((/*~DOCSYMAP*/ meltfclos->tabval[0])), (meltobject_ptr_t) (/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)(/*_.DATA__V3*/ meltfptr[2]));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4006:/ clear"); /*clear*/ /*_.DISCRIM__V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#IF___L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_137_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_138_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_138_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 11 void* varptr[11]; #define MELTFRAM_NBVARNUM 4 long varnum[4]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<11; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 11; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4019:/ getarg"); /*_.NAM__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ /*_.DISCRIM__V3*/ meltfptr[2] = (melt_discr((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])));; /*^compute*/ /*_#__L1*/ meltfnum[0] = ((/*_.DISCRIM__V3*/ meltfptr[2]) != ((/*!CLASS_SYMBOL*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4021:/ cond"); /*cond*/ if (/*_#__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_#IS_A__L3*/ meltfnum[2] = melt_is_instance_of((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])));; /*^compute*/ /*_#IF___L2*/ meltfnum[1] = /*_#IS_A__L3*/ meltfnum[2];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4021:/ clear"); /*clear*/ /*_#IS_A__L3*/ meltfnum[2] = 0 ;} ; } else {/*^cond.else*/ /*_#IF___L2*/ meltfnum[1] = 0;; } ; MELT_LOCATION("warmelt-outobj.melt:4021:/ cond"); /*cond*/ if (/*_#IF___L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4023:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.NAMED_NAME__V5*/ meltfptr[4] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V5*/ meltfptr[4] = NULL;; } ; /*^compute*/ /*_.GET_SYMBOLSTR__V6*/ meltfptr[5] = meltgc_named_symbol( melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V5*/ meltfptr[4])), MELT_GET);; MELT_LOCATION("warmelt-outobj.melt:4023:/ compute"); /*_.NAM__V2*/ meltfptr[1] = /*_.SETQ___V7*/ meltfptr[6] = /*_.GET_SYMBOLSTR__V6*/ meltfptr[5];; /*_.IFELSE___V4*/ meltfptr[3] = /*_.SETQ___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4021:/ clear"); /*clear*/ /*_.NAMED_NAME__V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.GET_SYMBOLSTR__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V7*/ meltfptr[6] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ /*_#IS_STRING__L4*/ meltfnum[2] = (melt_magic_discr((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4024:/ cond"); /*cond*/ if (/*_#IS_STRING__L4*/ meltfnum[2]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.GET_SYMBOLSTR__V9*/ meltfptr[5] = meltgc_named_symbol( melt_string_str((melt_ptr_t)(/*_.NAM__V2*/ meltfptr[1])), MELT_GET);; MELT_LOCATION("warmelt-outobj.melt:4025:/ compute"); /*_.NAM__V2*/ meltfptr[1] = /*_.SETQ___V10*/ meltfptr[6] = /*_.GET_SYMBOLSTR__V9*/ meltfptr[5];; /*_.IFELSE___V8*/ meltfptr[4] = /*_.SETQ___V10*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4024:/ clear"); /*clear*/ /*_.GET_SYMBOLSTR__V9*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V10*/ meltfptr[6] = 0 ;} ; } else {/*^cond.else*/ /*_.IFELSE___V8*/ meltfptr[4] = NULL;; } ; /*^compute*/ /*_.IFELSE___V4*/ meltfptr[3] = /*_.IFELSE___V8*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4021:/ clear"); /*clear*/ /*_#IS_STRING__L4*/ meltfnum[2] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[4] = 0 ;} ; } ; /*_.MAPOBJECT_GET__V11*/ meltfptr[5] = melt_get_mapobjects((meltmapobjects_ptr_t)((/*~DOCSYMAP*/ meltfclos->tabval[0])), (meltobject_ptr_t)(/*_.NAM__V2*/ meltfptr[1]));; MELT_LOCATION("warmelt-outobj.melt:4019:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.MAPOBJECT_GET__V11*/ meltfptr[5];; MELT_LOCATION("warmelt-outobj.melt:4019:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.DISCRIM__V3*/ meltfptr[2] = 0 ; /*^clear*/ /*clear*/ /*_#__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#IF___L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.MAPOBJECT_GET__V11*/ meltfptr[5] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_138_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_139_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_139_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 11 void* varptr[11]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<11; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 11; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4029:/ getarg"); /*_.FORMBIND__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DEF__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4030:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.FORMBIND__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_FORMAL_BINDING*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4030:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4030:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check formbind"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4030)?(4030):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4030:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4031:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4031:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4031:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check def"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4031)?(4031):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4031:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4032:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FORMBIND__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_ANY_BINDING*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FORMBIND__V2*/ meltfptr[1]), 0, "BINDER");/*_.FORMSYM__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.FORMSYM__V8*/ meltfptr[6] = NULL;; } ; /*^compute*/ /*_.FORMOCCLIST__V9*/ meltfptr[8] = melt_get_mapobjects((meltmapobjects_ptr_t)((/*~FORMALOCCMAP*/ meltfclos->tabval[0])), (meltobject_ptr_t)(/*_.FORMSYM__V8*/ meltfptr[6]));; /*^compute*/ /*_#NULL__L3*/ meltfnum[0] = ((/*_.FORMOCCLIST__V9*/ meltfptr[8]) == NULL);; MELT_LOCATION("warmelt-outobj.melt:4035:/ cond"); /*cond*/ if (/*_#NULL__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_LIST__V10*/ meltfptr[9] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[3]))));; MELT_LOCATION("warmelt-outobj.melt:4037:/ compute"); /*_.FORMOCCLIST__V9*/ meltfptr[8] = /*_.SETQ___V11*/ meltfptr[10] = /*_.MAKE_LIST__V10*/ meltfptr[9];; { MELT_LOCATION("warmelt-outobj.melt:4038:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) ((/*~FORMALOCCMAP*/ meltfclos->tabval[0])), (meltobject_ptr_t) (/*_.FORMSYM__V8*/ meltfptr[6]), (melt_ptr_t)(/*_.FORMOCCLIST__V9*/ meltfptr[8]));} ; MELT_LOCATION("warmelt-outobj.melt:4036:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4035:/ clear"); /*clear*/ /*_.MAKE_LIST__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V11*/ meltfptr[10] = 0 ;} ; } /*noelse*/ ; { MELT_LOCATION("warmelt-outobj.melt:4039:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.FORMOCCLIST__V9*/ meltfptr[8]), (melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2]));} ; MELT_LOCATION("warmelt-outobj.melt:4032:/ clear"); /*clear*/ /*_.FORMSYM__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.FORMOCCLIST__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_#NULL__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4029:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_139_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_140_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_140_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 154 void* varptr[154]; #define MELTFRAM_NBVARNUM 13 long varnum[13]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<154; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 154; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4051:/ getarg"); /*_.CUREXP__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4052:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4052:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd curexp"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4052; /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V3*/ meltfptr[2] = /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4052:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4053:/ block"); /*anyblock*/{ /*^objgoto*/ /*objgoto*/ goto mtch1_0; ; /*objlabel*/ mtch1_0: MELT_LOCATION("warmelt-outobj.melt:4057:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V6*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.SOBJ_PREDEF__V7*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.SCLASS_CLABIND__V8*/ meltfptr[7] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[1]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V5*/ meltfptr[3] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V6*/ meltfptr[5] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SOBJ_PREDEF");/*_.SOBJ_PREDEF__V7*/ meltfptr[6] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 5, "SCLASS_CLABIND");/*_.SCLASS_CLABIND__V8*/ meltfptr[7] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4061:/ objgoto"); /*objgoto*/ goto mtch1_1; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4057:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4100:/ objgoto"); /*objgoto*/ goto mtch1_4; ;} ; } ; /*objlabel*/ mtch1_1: MELT_LOCATION("warmelt-outobj.melt:4061:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V10*/ meltfptr[9] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V6*/ meltfptr[5]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V6*/ meltfptr[5]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V9*/ meltfptr[8] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V6*/ meltfptr[5]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V10*/ meltfptr[9] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4065:/ objgoto"); /*objgoto*/ goto mtch1_2; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4061:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4100:/ objgoto"); /*objgoto*/ goto mtch1_4; ;} ; } ; /*objlabel*/ mtch1_2: MELT_LOCATION("warmelt-outobj.melt:4065:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.CBIND_CLASS__V11*/ meltfptr[5] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SCLASS_CLABIND__V8*/ meltfptr[7]), ((/*!CLASS_CLASS_BINDING*/ meltfrout->tabval[3]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SCLASS_CLABIND__V8*/ meltfptr[7]), 3, "CBIND_CLASS");/*_.CBIND_CLASS__V11*/ meltfptr[5] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4057:/ objgoto"); /*objgoto*/ goto mtch1_3; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4065:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4100:/ objgoto"); /*objgoto*/ goto mtch1_4; ;} ; } ; /*objlabel*/ mtch1_3: MELT_LOCATION("warmelt-outobj.melt:4057:/ objlabel"); ; /*^quasiblock*/ /*_.CLAS__V12*/ meltfptr[7] = /*_.CBIND_CLASS__V11*/ meltfptr[5];; /*^compute*/ /*_.DNAM__V13*/ meltfptr[12] = /*_.SDEF_NAME__V5*/ meltfptr[3];; /*^compute*/ /*_.DOCLOC__V14*/ meltfptr[13] = /*_.LOCA_LOCATION__V9*/ meltfptr[8];; /*^compute*/ /*_.DOCONT__V15*/ meltfptr[14] = /*_.SEXP_CONTENTS__V10*/ meltfptr[9];; /*^compute*/ /*_.PREDEF__V16*/ meltfptr[15] = /*_.SOBJ_PREDEF__V7*/ meltfptr[6];; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4067:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4067:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd defclass clas"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4067; /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V17*/ meltfptr[16] = /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4067:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V18*/ meltfptr[17] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V17*/ meltfptr[16] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4068:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L3*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:4068:/ cond"); /*cond*/ if (/*_#IS_A__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V20*/ meltfptr[19] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4068:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check clas"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4068)?(4068):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V20*/ meltfptr[19] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V19*/ meltfptr[17] = /*_.IFELSE___V20*/ meltfptr[19];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4068:/ clear"); /*clear*/ /*_#IS_A__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V20*/ meltfptr[19] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V19*/ meltfptr[17] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4069:/ cond"); /*cond*/ if (/*_.PREDEF__V16*/ meltfptr[15]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4070:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 12, "MKDOC_PREDEFMAP");/*_.MKDOC_PREDEFMAP__V21*/ meltfptr[19] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_PREDEFMAP__V21*/ meltfptr[19] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4070:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) (/*_.MKDOC_PREDEFMAP__V21*/ meltfptr[19]), (meltobject_ptr_t) (/*_.PREDEF__V16*/ meltfptr[15]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4069:/ clear"); /*clear*/ /*_.MKDOC_PREDEFMAP__V21*/ meltfptr[19] = 0 ;} ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4071:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V22*/ meltfptr[19] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V13*/ meltfptr[12]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4072:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 7, "MKDOC_CLASSES");/*_.MKDOC_CLASSES__V23*/ meltfptr[22] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_CLASSES__V23*/ meltfptr[22] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4072:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_CLASSES__V23*/ meltfptr[22]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:4075:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), 6, "CLASS_FIELDS");/*_.CLASS_FIELDS__V24*/ meltfptr[23] = slot; }; ; } else {/*^cond.else*/ /*_.CLASS_FIELDS__V24*/ meltfptr[23] = NULL;; } ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.CLASS_FIELDS__V24*/ meltfptr[23]); for (/*_#FLDIX__L4*/ meltfnum[0] = 0; (/*_#FLDIX__L4*/ meltfnum[0] >= 0) && (/*_#FLDIX__L4*/ meltfnum[0] < cit1__EACHTUP_ln); /*_#FLDIX__L4*/ meltfnum[0]++) { /*_.CURFLD__V25*/ meltfptr[24] = melt_multiple_nth((melt_ptr_t)(/*_.CLASS_FIELDS__V24*/ meltfptr[23]), /*_#FLDIX__L4*/ meltfnum[0]); MELT_LOCATION("warmelt-outobj.melt:4077:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_FIELD*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V25*/ meltfptr[24]), 2, "FLD_OWNCLASS");/*_.FLD_OWNCLASS__V26*/ meltfptr[25] = slot; }; ; } else {/*^cond.else*/ /*_.FLD_OWNCLASS__V26*/ meltfptr[25] = NULL;; } ; /*^compute*/ /*_#__L5*/ meltfnum[4] = ((/*_.FLD_OWNCLASS__V26*/ meltfptr[25]) == (/*_.CLAS__V12*/ meltfptr[7]));; MELT_LOCATION("warmelt-outobj.melt:4077:/ cond"); /*cond*/ if (/*_#__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4079:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V25*/ meltfptr[24]), 1, "NAMED_NAME");/*_.NAMED_NAME__V27*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V27*/ meltfptr[26] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4079:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CURFLD__V25*/ meltfptr[24]; /*_.ADD_DOCSYM__V28*/ meltfptr[27] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.NAMED_NAME__V27*/ meltfptr[26]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4080:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 6, "MKDOC_FIELDS");/*_.MKDOC_FIELDS__V29*/ meltfptr[28] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_FIELDS__V29*/ meltfptr[28] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4080:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_FIELDS__V29*/ meltfptr[28]), (melt_ptr_t)(/*_.CURFLD__V25*/ meltfptr[24]));} ; MELT_LOCATION("warmelt-outobj.melt:4078:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4077:/ clear"); /*clear*/ /*_.NAMED_NAME__V27*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V28*/ meltfptr[27] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_FIELDS__V29*/ meltfptr[28] = 0 ;} ; } /*noelse*/ ; if (/*_#FLDIX__L4*/ meltfnum[0]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4074:/ clear"); /*clear*/ /*_.CURFLD__V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_#FLDIX__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.FLD_OWNCLASS__V26*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_#__L5*/ meltfnum[4] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4084:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 14, "MKDOC_SUBCLASSMAP");/*_.SUBCLMAP__V30*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.SUBCLMAP__V30*/ meltfptr[26] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4086:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]), 5, "CLASS_ANCESTORS");/*_.CLASS_ANCESTORS__V31*/ meltfptr[27] = slot; }; ; } else {/*^cond.else*/ /*_.CLASS_ANCESTORS__V31*/ meltfptr[27] = NULL;; } ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit2__EACHTUP: */ long cit2__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.CLASS_ANCESTORS__V31*/ meltfptr[27]); for (/*_#ANCIX__L6*/ meltfnum[5] = 0; (/*_#ANCIX__L6*/ meltfnum[5] >= 0) && (/*_#ANCIX__L6*/ meltfnum[5] < cit2__EACHTUP_ln); /*_#ANCIX__L6*/ meltfnum[5]++) { /*_.CURANC__V32*/ meltfptr[28] = melt_multiple_nth((melt_ptr_t)(/*_.CLASS_ANCESTORS__V31*/ meltfptr[27]), /*_#ANCIX__L6*/ meltfnum[5]); MELT_LOCATION("warmelt-outobj.melt:4088:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 14, "MKDOC_SUBCLASSMAP");/*_.MKDOC_SUBCLASSMAP__V33*/ meltfptr[32] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_SUBCLASSMAP__V33*/ meltfptr[32] = NULL;; } ; /*^compute*/ /*_.CURANCSUBCL__V34*/ meltfptr[33] = melt_get_mapobjects((meltmapobjects_ptr_t)(/*_.MKDOC_SUBCLASSMAP__V33*/ meltfptr[32]), (meltobject_ptr_t)(/*_.CURANC__V32*/ meltfptr[28]));; /*^compute*/ /*_#NULL__L7*/ meltfnum[6] = ((/*_.CURANCSUBCL__V34*/ meltfptr[33]) == NULL);; MELT_LOCATION("warmelt-outobj.melt:4089:/ cond"); /*cond*/ if (/*_#NULL__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*_.MAKE_LIST__V35*/ meltfptr[34] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[8]))));; MELT_LOCATION("warmelt-outobj.melt:4091:/ compute"); /*_.CURANCSUBCL__V34*/ meltfptr[33] = /*_.SETQ___V36*/ meltfptr[35] = /*_.MAKE_LIST__V35*/ meltfptr[34];; MELT_LOCATION("warmelt-outobj.melt:4093:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 14, "MKDOC_SUBCLASSMAP");/*_.MKDOC_SUBCLASSMAP__V37*/ meltfptr[36] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_SUBCLASSMAP__V37*/ meltfptr[36] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4092:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) (/*_.MKDOC_SUBCLASSMAP__V37*/ meltfptr[36]), (meltobject_ptr_t) (/*_.CURANC__V32*/ meltfptr[28]), (melt_ptr_t)(/*_.CURANCSUBCL__V34*/ meltfptr[33]));} ; MELT_LOCATION("warmelt-outobj.melt:4090:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4089:/ clear"); /*clear*/ /*_.MAKE_LIST__V35*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.SETQ___V36*/ meltfptr[35] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_SUBCLASSMAP__V37*/ meltfptr[36] = 0 ;} ; } /*noelse*/ ; { MELT_LOCATION("warmelt-outobj.melt:4095:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.CURANCSUBCL__V34*/ meltfptr[33]), (melt_ptr_t)(/*_.CLAS__V12*/ meltfptr[7]));} ; MELT_LOCATION("warmelt-outobj.melt:4088:/ clear"); /*clear*/ /*_.MKDOC_SUBCLASSMAP__V33*/ meltfptr[32] = 0 ; /*^clear*/ /*clear*/ /*_.CURANCSUBCL__V34*/ meltfptr[33] = 0 ; /*^clear*/ /*clear*/ /*_#NULL__L7*/ meltfnum[6] = 0 ; if (/*_#ANCIX__L6*/ meltfnum[5]<0) break; } /* end cit2__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4085:/ clear"); /*clear*/ /*_.CURANC__V32*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_#ANCIX__L6*/ meltfnum[5] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4084:/ clear"); /*clear*/ /*_.SUBCLMAP__V30*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.CLASS_ANCESTORS__V31*/ meltfptr[27] = 0 ; MELT_LOCATION("warmelt-outobj.melt:4057:/ clear"); /*clear*/ /*_.CLAS__V12*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.DNAM__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.PREDEF__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V19*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V22*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_CLASSES__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.CLASS_FIELDS__V24*/ meltfptr[23] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_4: MELT_LOCATION("warmelt-outobj.melt:4100:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V38*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V39*/ meltfptr[35] = 0 ; /*^clear*/ /*clear*/ /*_.SOBJ_PREDEF__V40*/ meltfptr[36] = 0 ; /*^clear*/ /*clear*/ /*_.SINST_CLASS__V41*/ meltfptr[32] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFSELECTOR*/ meltfrout->tabval[9]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V38*/ meltfptr[34] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V39*/ meltfptr[35] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SOBJ_PREDEF");/*_.SOBJ_PREDEF__V40*/ meltfptr[36] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 5, "SINST_CLASS");/*_.SINST_CLASS__V41*/ meltfptr[32] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4104:/ objgoto"); /*objgoto*/ goto mtch1_5; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4100:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4116:/ objgoto"); /*objgoto*/ goto mtch1_7; ;} ; } ; /*objlabel*/ mtch1_5: MELT_LOCATION("warmelt-outobj.melt:4104:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V42*/ meltfptr[33] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V43*/ meltfptr[26] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V39*/ meltfptr[35]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V39*/ meltfptr[35]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V42*/ meltfptr[33] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V39*/ meltfptr[35]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V43*/ meltfptr[26] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4100:/ objgoto"); /*objgoto*/ goto mtch1_6; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4104:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4116:/ objgoto"); /*objgoto*/ goto mtch1_7; ;} ; } ; /*objlabel*/ mtch1_6: MELT_LOCATION("warmelt-outobj.melt:4100:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V44*/ meltfptr[27] = /*_.SDEF_NAME__V38*/ meltfptr[34];; /*^compute*/ /*_.DOCLOC__V45*/ meltfptr[7] = /*_.LOCA_LOCATION__V42*/ meltfptr[33];; /*^compute*/ /*_.DOCONT__V46*/ meltfptr[12] = /*_.SEXP_CONTENTS__V43*/ meltfptr[26];; /*^compute*/ /*_.ICLA__V47*/ meltfptr[13] = /*_.SINST_CLASS__V41*/ meltfptr[32];; /*^compute*/ /*_.PREDEF__V48*/ meltfptr[14] = /*_.SOBJ_PREDEF__V40*/ meltfptr[36];; MELT_LOCATION("warmelt-outobj.melt:4110:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 5, "MKDOC_SELECTORS");/*_.MKDOC_SELECTORS__V49*/ meltfptr[15] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_SELECTORS__V49*/ meltfptr[15] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4110:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_SELECTORS__V49*/ meltfptr[15]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:4111:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V50*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V44*/ meltfptr[27]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4112:/ cond"); /*cond*/ if (/*_.PREDEF__V48*/ meltfptr[14]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4113:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 12, "MKDOC_PREDEFMAP");/*_.MKDOC_PREDEFMAP__V51*/ meltfptr[17] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_PREDEFMAP__V51*/ meltfptr[17] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4113:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) (/*_.MKDOC_PREDEFMAP__V51*/ meltfptr[17]), (meltobject_ptr_t) (/*_.PREDEF__V48*/ meltfptr[14]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4112:/ clear"); /*clear*/ /*_.MKDOC_PREDEFMAP__V51*/ meltfptr[17] = 0 ;} ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4100:/ clear"); /*clear*/ /*_.DNAM__V44*/ meltfptr[27] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V45*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V46*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.ICLA__V47*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.PREDEF__V48*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_SELECTORS__V49*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V50*/ meltfptr[16] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_7: MELT_LOCATION("warmelt-outobj.melt:4116:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V52*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V53*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.SOBJ_PREDEF__V54*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.SINST_CLASS__V55*/ meltfptr[35] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFINSTANCE*/ meltfrout->tabval[10]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V52*/ meltfptr[19] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V53*/ meltfptr[22] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SOBJ_PREDEF");/*_.SOBJ_PREDEF__V54*/ meltfptr[23] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 5, "SINST_CLASS");/*_.SINST_CLASS__V55*/ meltfptr[35] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4120:/ objgoto"); /*objgoto*/ goto mtch1_8; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4116:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4133:/ objgoto"); /*objgoto*/ goto mtch1_10; ;} ; } ; /*objlabel*/ mtch1_8: MELT_LOCATION("warmelt-outobj.melt:4120:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V56*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V57*/ meltfptr[27] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V53*/ meltfptr[22]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V53*/ meltfptr[22]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V56*/ meltfptr[17] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V53*/ meltfptr[22]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V57*/ meltfptr[27] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4116:/ objgoto"); /*objgoto*/ goto mtch1_9; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4120:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4133:/ objgoto"); /*objgoto*/ goto mtch1_10; ;} ; } ; /*objlabel*/ mtch1_9: MELT_LOCATION("warmelt-outobj.melt:4116:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V58*/ meltfptr[7] = /*_.SDEF_NAME__V52*/ meltfptr[19];; /*^compute*/ /*_.DOCLOC__V59*/ meltfptr[12] = /*_.LOCA_LOCATION__V56*/ meltfptr[17];; /*^compute*/ /*_.DOCONT__V60*/ meltfptr[13] = /*_.SEXP_CONTENTS__V57*/ meltfptr[27];; /*^compute*/ /*_.ICLA__V61*/ meltfptr[14] = /*_.SINST_CLASS__V55*/ meltfptr[35];; /*^compute*/ /*_.PREDEF__V62*/ meltfptr[15] = /*_.SOBJ_PREDEF__V54*/ meltfptr[23];; MELT_LOCATION("warmelt-outobj.melt:4126:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V63*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V58*/ meltfptr[7]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4127:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 8, "MKDOC_INSTANCES");/*_.MKDOC_INSTANCES__V64*/ meltfptr[22] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_INSTANCES__V64*/ meltfptr[22] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4127:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_INSTANCES__V64*/ meltfptr[22]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:4128:/ cond"); /*cond*/ if (/*_.PREDEF__V62*/ meltfptr[15]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4129:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 12, "MKDOC_PREDEFMAP");/*_.MKDOC_PREDEFMAP__V65*/ meltfptr[64] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_PREDEFMAP__V65*/ meltfptr[64] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4129:/ locexp"); meltgc_put_mapobjects( (meltmapobjects_ptr_t) (/*_.MKDOC_PREDEFMAP__V65*/ meltfptr[64]), (meltobject_ptr_t) (/*_.PREDEF__V62*/ meltfptr[15]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4128:/ clear"); /*clear*/ /*_.MKDOC_PREDEFMAP__V65*/ meltfptr[64] = 0 ;} ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4116:/ clear"); /*clear*/ /*_.DNAM__V58*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V59*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V60*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.ICLA__V61*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.PREDEF__V62*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V63*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_INSTANCES__V64*/ meltfptr[22] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_10: MELT_LOCATION("warmelt-outobj.melt:4133:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V66*/ meltfptr[64] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V67*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.SFORMAL_ARGS__V68*/ meltfptr[12] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFPRIMITIVE*/ meltfrout->tabval[11]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V66*/ meltfptr[64] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V67*/ meltfptr[7] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SFORMAL_ARGS");/*_.SFORMAL_ARGS__V68*/ meltfptr[12] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4137:/ objgoto"); /*objgoto*/ goto mtch1_11; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4133:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4151:/ objgoto"); /*objgoto*/ goto mtch1_13; ;} ; } ; /*objlabel*/ mtch1_11: MELT_LOCATION("warmelt-outobj.melt:4137:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V69*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V70*/ meltfptr[14] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V67*/ meltfptr[7]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V67*/ meltfptr[7]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V69*/ meltfptr[13] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V67*/ meltfptr[7]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V70*/ meltfptr[14] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4133:/ objgoto"); /*objgoto*/ goto mtch1_12; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4137:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4151:/ objgoto"); /*objgoto*/ goto mtch1_13; ;} ; } ; /*objlabel*/ mtch1_12: MELT_LOCATION("warmelt-outobj.melt:4133:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V71*/ meltfptr[15] = /*_.SDEF_NAME__V66*/ meltfptr[64];; /*^compute*/ /*_.DOCLOC__V72*/ meltfptr[16] = /*_.LOCA_LOCATION__V69*/ meltfptr[13];; /*^compute*/ /*_.DOCONT__V73*/ meltfptr[22] = /*_.SEXP_CONTENTS__V70*/ meltfptr[14];; /*^compute*/ /*_.FORMARGS__V74*/ meltfptr[7] = /*_.SFORMAL_ARGS__V68*/ meltfptr[12];; MELT_LOCATION("warmelt-outobj.melt:4142:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V75*/ meltfptr[74] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V71*/ meltfptr[15]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4143:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 1, "MKDOC_PRIMITIVES");/*_.MKDOC_PRIMITIVES__V76*/ meltfptr[75] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_PRIMITIVES__V76*/ meltfptr[75] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4143:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_PRIMITIVES__V76*/ meltfptr[75]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit3__EACHTUP: */ long cit3__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.FORMARGS__V74*/ meltfptr[7]); for (/*_#FORMIX__L8*/ meltfnum[6] = 0; (/*_#FORMIX__L8*/ meltfnum[6] >= 0) && (/*_#FORMIX__L8*/ meltfnum[6] < cit3__EACHTUP_ln); /*_#FORMIX__L8*/ meltfnum[6]++) { /*_.CURFORMB__V77*/ meltfptr[76] = melt_multiple_nth((melt_ptr_t)(/*_.FORMARGS__V74*/ meltfptr[7]), /*_#FORMIX__L8*/ meltfnum[6]); MELT_LOCATION("warmelt-outobj.melt:4147:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_FORMAL_OCC__V78*/ meltfptr[77] = melt_apply ((meltclosure_ptr_t)((/*~ADD_FORMAL_OCC*/ meltfclos->tabval[2])), (melt_ptr_t)(/*_.CURFORMB__V77*/ meltfptr[76]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; if (/*_#FORMIX__L8*/ meltfnum[6]<0) break; } /* end cit3__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4144:/ clear"); /*clear*/ /*_.CURFORMB__V77*/ meltfptr[76] = 0 ; /*^clear*/ /*clear*/ /*_#FORMIX__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_FORMAL_OCC__V78*/ meltfptr[77] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4133:/ clear"); /*clear*/ /*_.DNAM__V71*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V72*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V73*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.FORMARGS__V74*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V75*/ meltfptr[74] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_PRIMITIVES__V76*/ meltfptr[75] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_13: MELT_LOCATION("warmelt-outobj.melt:4151:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V79*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V80*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.SFORMAL_ARGS__V81*/ meltfptr[22] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFUN*/ meltfrout->tabval[12]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V79*/ meltfptr[15] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V80*/ meltfptr[16] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SFORMAL_ARGS");/*_.SFORMAL_ARGS__V81*/ meltfptr[22] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4155:/ objgoto"); /*objgoto*/ goto mtch1_14; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4151:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4169:/ objgoto"); /*objgoto*/ goto mtch1_16; ;} ; } ; /*objlabel*/ mtch1_14: MELT_LOCATION("warmelt-outobj.melt:4155:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V82*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V83*/ meltfptr[74] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V80*/ meltfptr[16]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V80*/ meltfptr[16]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V82*/ meltfptr[7] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V80*/ meltfptr[16]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V83*/ meltfptr[74] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4151:/ objgoto"); /*objgoto*/ goto mtch1_15; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4155:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4169:/ objgoto"); /*objgoto*/ goto mtch1_16; ;} ; } ; /*objlabel*/ mtch1_15: MELT_LOCATION("warmelt-outobj.melt:4151:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V84*/ meltfptr[75] = /*_.SDEF_NAME__V79*/ meltfptr[15];; /*^compute*/ /*_.DOCLOC__V85*/ meltfptr[16] = /*_.LOCA_LOCATION__V82*/ meltfptr[7];; /*^compute*/ /*_.DOCONT__V86*/ meltfptr[85] = /*_.SEXP_CONTENTS__V83*/ meltfptr[74];; /*^compute*/ /*_.FORMARGS__V87*/ meltfptr[86] = /*_.SFORMAL_ARGS__V81*/ meltfptr[22];; MELT_LOCATION("warmelt-outobj.melt:4160:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V88*/ meltfptr[87] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V84*/ meltfptr[75]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4161:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 2, "MKDOC_FUNCTIONS");/*_.MKDOC_FUNCTIONS__V89*/ meltfptr[88] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_FUNCTIONS__V89*/ meltfptr[88] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4161:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_FUNCTIONS__V89*/ meltfptr[88]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit4__EACHTUP: */ long cit4__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.FORMARGS__V87*/ meltfptr[86]); for (/*_#FORMIX__L9*/ meltfnum[8] = 0; (/*_#FORMIX__L9*/ meltfnum[8] >= 0) && (/*_#FORMIX__L9*/ meltfnum[8] < cit4__EACHTUP_ln); /*_#FORMIX__L9*/ meltfnum[8]++) { /*_.CURFORMB__V90*/ meltfptr[89] = melt_multiple_nth((melt_ptr_t)(/*_.FORMARGS__V87*/ meltfptr[86]), /*_#FORMIX__L9*/ meltfnum[8]); MELT_LOCATION("warmelt-outobj.melt:4165:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_FORMAL_OCC__V91*/ meltfptr[90] = melt_apply ((meltclosure_ptr_t)((/*~ADD_FORMAL_OCC*/ meltfclos->tabval[2])), (melt_ptr_t)(/*_.CURFORMB__V90*/ meltfptr[89]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; if (/*_#FORMIX__L9*/ meltfnum[8]<0) break; } /* end cit4__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4162:/ clear"); /*clear*/ /*_.CURFORMB__V90*/ meltfptr[89] = 0 ; /*^clear*/ /*clear*/ /*_#FORMIX__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_FORMAL_OCC__V91*/ meltfptr[90] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4151:/ clear"); /*clear*/ /*_.DNAM__V84*/ meltfptr[75] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V85*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V86*/ meltfptr[85] = 0 ; /*^clear*/ /*clear*/ /*_.FORMARGS__V87*/ meltfptr[86] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V88*/ meltfptr[87] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_FUNCTIONS__V89*/ meltfptr[88] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_16: MELT_LOCATION("warmelt-outobj.melt:4169:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V92*/ meltfptr[75] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V93*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.SFORMAL_ARGS__V94*/ meltfptr[85] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFCITERATOR*/ meltfrout->tabval[13]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V92*/ meltfptr[75] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V93*/ meltfptr[16] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SFORMAL_ARGS");/*_.SFORMAL_ARGS__V94*/ meltfptr[85] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4173:/ objgoto"); /*objgoto*/ goto mtch1_17; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4169:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4187:/ objgoto"); /*objgoto*/ goto mtch1_19; ;} ; } ; /*objlabel*/ mtch1_17: MELT_LOCATION("warmelt-outobj.melt:4173:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V95*/ meltfptr[86] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V96*/ meltfptr[87] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V93*/ meltfptr[16]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V93*/ meltfptr[16]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V95*/ meltfptr[86] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V93*/ meltfptr[16]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V96*/ meltfptr[87] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4169:/ objgoto"); /*objgoto*/ goto mtch1_18; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4173:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4187:/ objgoto"); /*objgoto*/ goto mtch1_19; ;} ; } ; /*objlabel*/ mtch1_18: MELT_LOCATION("warmelt-outobj.melt:4169:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V97*/ meltfptr[88] = /*_.SDEF_NAME__V92*/ meltfptr[75];; /*^compute*/ /*_.DOCLOC__V98*/ meltfptr[16] = /*_.LOCA_LOCATION__V95*/ meltfptr[86];; /*^compute*/ /*_.DOCONT__V99*/ meltfptr[98] = /*_.SEXP_CONTENTS__V96*/ meltfptr[87];; /*^compute*/ /*_.FORMARGS__V100*/ meltfptr[99] = /*_.SFORMAL_ARGS__V94*/ meltfptr[85];; MELT_LOCATION("warmelt-outobj.melt:4178:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V101*/ meltfptr[100] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V97*/ meltfptr[88]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4179:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 3, "MKDOC_CITERATORS");/*_.MKDOC_CITERATORS__V102*/ meltfptr[101] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_CITERATORS__V102*/ meltfptr[101] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4179:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_CITERATORS__V102*/ meltfptr[101]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit5__EACHTUP: */ long cit5__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.FORMARGS__V100*/ meltfptr[99]); for (/*_#FORMIX__L10*/ meltfnum[9] = 0; (/*_#FORMIX__L10*/ meltfnum[9] >= 0) && (/*_#FORMIX__L10*/ meltfnum[9] < cit5__EACHTUP_ln); /*_#FORMIX__L10*/ meltfnum[9]++) { /*_.CURFORMB__V103*/ meltfptr[102] = melt_multiple_nth((melt_ptr_t)(/*_.FORMARGS__V100*/ meltfptr[99]), /*_#FORMIX__L10*/ meltfnum[9]); MELT_LOCATION("warmelt-outobj.melt:4183:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_FORMAL_OCC__V104*/ meltfptr[103] = melt_apply ((meltclosure_ptr_t)((/*~ADD_FORMAL_OCC*/ meltfclos->tabval[2])), (melt_ptr_t)(/*_.CURFORMB__V103*/ meltfptr[102]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; if (/*_#FORMIX__L10*/ meltfnum[9]<0) break; } /* end cit5__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4180:/ clear"); /*clear*/ /*_.CURFORMB__V103*/ meltfptr[102] = 0 ; /*^clear*/ /*clear*/ /*_#FORMIX__L10*/ meltfnum[9] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_FORMAL_OCC__V104*/ meltfptr[103] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4169:/ clear"); /*clear*/ /*_.DNAM__V97*/ meltfptr[88] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V98*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V99*/ meltfptr[98] = 0 ; /*^clear*/ /*clear*/ /*_.FORMARGS__V100*/ meltfptr[99] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V101*/ meltfptr[100] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_CITERATORS__V102*/ meltfptr[101] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_19: MELT_LOCATION("warmelt-outobj.melt:4187:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V105*/ meltfptr[88] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V106*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.SFORMAL_ARGS__V107*/ meltfptr[98] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFCMATCHER*/ meltfrout->tabval[14]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V105*/ meltfptr[88] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V106*/ meltfptr[16] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SFORMAL_ARGS");/*_.SFORMAL_ARGS__V107*/ meltfptr[98] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4191:/ objgoto"); /*objgoto*/ goto mtch1_20; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4187:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4205:/ objgoto"); /*objgoto*/ goto mtch1_22; ;} ; } ; /*objlabel*/ mtch1_20: MELT_LOCATION("warmelt-outobj.melt:4191:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V108*/ meltfptr[99] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V109*/ meltfptr[100] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V106*/ meltfptr[16]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V106*/ meltfptr[16]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V108*/ meltfptr[99] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V106*/ meltfptr[16]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V109*/ meltfptr[100] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4187:/ objgoto"); /*objgoto*/ goto mtch1_21; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4191:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4205:/ objgoto"); /*objgoto*/ goto mtch1_22; ;} ; } ; /*objlabel*/ mtch1_21: MELT_LOCATION("warmelt-outobj.melt:4187:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V110*/ meltfptr[101] = /*_.SDEF_NAME__V105*/ meltfptr[88];; /*^compute*/ /*_.DOCLOC__V111*/ meltfptr[16] = /*_.LOCA_LOCATION__V108*/ meltfptr[99];; /*^compute*/ /*_.DOCONT__V112*/ meltfptr[111] = /*_.SEXP_CONTENTS__V109*/ meltfptr[100];; /*^compute*/ /*_.FORMARGS__V113*/ meltfptr[112] = /*_.SFORMAL_ARGS__V107*/ meltfptr[98];; MELT_LOCATION("warmelt-outobj.melt:4196:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V114*/ meltfptr[113] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.DNAM__V110*/ meltfptr[101]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4197:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 4, "MKDOC_CMATCHERS");/*_.MKDOC_CMATCHERS__V115*/ meltfptr[114] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_CMATCHERS__V115*/ meltfptr[114] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4197:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_CMATCHERS__V115*/ meltfptr[114]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit6__EACHTUP: */ long cit6__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.FORMARGS__V113*/ meltfptr[112]); for (/*_#FORMIX__L11*/ meltfnum[10] = 0; (/*_#FORMIX__L11*/ meltfnum[10] >= 0) && (/*_#FORMIX__L11*/ meltfnum[10] < cit6__EACHTUP_ln); /*_#FORMIX__L11*/ meltfnum[10]++) { /*_.CURFORMB__V116*/ meltfptr[115] = melt_multiple_nth((melt_ptr_t)(/*_.FORMARGS__V113*/ meltfptr[112]), /*_#FORMIX__L11*/ meltfnum[10]); MELT_LOCATION("warmelt-outobj.melt:4201:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_FORMAL_OCC__V117*/ meltfptr[116] = melt_apply ((meltclosure_ptr_t)((/*~ADD_FORMAL_OCC*/ meltfclos->tabval[2])), (melt_ptr_t)(/*_.CURFORMB__V116*/ meltfptr[115]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; if (/*_#FORMIX__L11*/ meltfnum[10]<0) break; } /* end cit6__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4198:/ clear"); /*clear*/ /*_.CURFORMB__V116*/ meltfptr[115] = 0 ; /*^clear*/ /*clear*/ /*_#FORMIX__L11*/ meltfnum[10] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_FORMAL_OCC__V117*/ meltfptr[116] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4187:/ clear"); /*clear*/ /*_.DNAM__V110*/ meltfptr[101] = 0 ; /*^clear*/ /*clear*/ /*_.DOCLOC__V111*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V112*/ meltfptr[111] = 0 ; /*^clear*/ /*clear*/ /*_.FORMARGS__V113*/ meltfptr[112] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V114*/ meltfptr[113] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_CMATCHERS__V115*/ meltfptr[114] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_22: MELT_LOCATION("warmelt-outobj.melt:4205:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V118*/ meltfptr[101] = 0 ; /*^clear*/ /*clear*/ /*_.SEXPMAC_MNAME__V119*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.SEXPMAC_DOC__V120*/ meltfptr[111] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_EXPORT_PATMACRO*/ meltfrout->tabval[15]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V118*/ meltfptr[101] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SEXPMAC_MNAME");/*_.SEXPMAC_MNAME__V119*/ meltfptr[16] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SEXPMAC_DOC");/*_.SEXPMAC_DOC__V120*/ meltfptr[111] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4210:/ objgoto"); /*objgoto*/ goto mtch1_23; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4205:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4219:/ objgoto"); /*objgoto*/ goto mtch1_25; ;} ; } ; /*objlabel*/ mtch1_23: MELT_LOCATION("warmelt-outobj.melt:4210:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V121*/ meltfptr[112] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V122*/ meltfptr[113] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SEXPMAC_DOC__V120*/ meltfptr[111]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_DOC__V120*/ meltfptr[111]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V121*/ meltfptr[112] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_DOC__V120*/ meltfptr[111]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V122*/ meltfptr[113] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4205:/ objgoto"); /*objgoto*/ goto mtch1_24; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4210:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4219:/ objgoto"); /*objgoto*/ goto mtch1_25; ;} ; } ; /*objlabel*/ mtch1_24: MELT_LOCATION("warmelt-outobj.melt:4205:/ objlabel"); ; /*^quasiblock*/ /*_.DOCLOC__V123*/ meltfptr[114] = /*_.LOCA_LOCATION__V121*/ meltfptr[112];; /*^compute*/ /*_.DOCONT__V124*/ meltfptr[111] = /*_.SEXP_CONTENTS__V122*/ meltfptr[113];; /*^compute*/ /*_.LOC__V125*/ meltfptr[124] = /*_.LOCA_LOCATION__V118*/ meltfptr[101];; /*^compute*/ /*_.MNAME__V126*/ meltfptr[125] = /*_.SEXPMAC_MNAME__V119*/ meltfptr[16];; MELT_LOCATION("warmelt-outobj.melt:4214:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V127*/ meltfptr[126] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.MNAME__V126*/ meltfptr[125]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4215:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 10, "MKDOC_PATMACROS");/*_.MKDOC_PATMACROS__V128*/ meltfptr[127] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_PATMACROS__V128*/ meltfptr[127] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4215:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_PATMACROS__V128*/ meltfptr[127]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:4205:/ clear"); /*clear*/ /*_.DOCLOC__V123*/ meltfptr[114] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V124*/ meltfptr[111] = 0 ; /*^clear*/ /*clear*/ /*_.LOC__V125*/ meltfptr[124] = 0 ; /*^clear*/ /*clear*/ /*_.MNAME__V126*/ meltfptr[125] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V127*/ meltfptr[126] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_PATMACROS__V128*/ meltfptr[127] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_25: MELT_LOCATION("warmelt-outobj.melt:4219:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V129*/ meltfptr[114] = 0 ; /*^clear*/ /*clear*/ /*_.SEXPMAC_MNAME__V130*/ meltfptr[111] = 0 ; /*^clear*/ /*clear*/ /*_.SEXPMAC_DOC__V131*/ meltfptr[124] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[16]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V129*/ meltfptr[114] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SEXPMAC_MNAME");/*_.SEXPMAC_MNAME__V130*/ meltfptr[111] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 4, "SEXPMAC_DOC");/*_.SEXPMAC_DOC__V131*/ meltfptr[124] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4224:/ objgoto"); /*objgoto*/ goto mtch1_26; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4219:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4233:/ objgoto"); /*objgoto*/ goto mtch1_28; ;} ; } ; /*objlabel*/ mtch1_26: MELT_LOCATION("warmelt-outobj.melt:4224:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V132*/ meltfptr[125] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V133*/ meltfptr[126] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SEXPMAC_DOC__V131*/ meltfptr[124]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_DOC__V131*/ meltfptr[124]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V132*/ meltfptr[125] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_DOC__V131*/ meltfptr[124]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V133*/ meltfptr[126] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4219:/ objgoto"); /*objgoto*/ goto mtch1_27; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4224:/ cond.else"); /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4233:/ objgoto"); /*objgoto*/ goto mtch1_28; ;} ; } ; /*objlabel*/ mtch1_27: MELT_LOCATION("warmelt-outobj.melt:4219:/ objlabel"); ; /*^quasiblock*/ /*_.DOCLOC__V134*/ meltfptr[127] = /*_.LOCA_LOCATION__V132*/ meltfptr[125];; /*^compute*/ /*_.DOCONT__V135*/ meltfptr[124] = /*_.SEXP_CONTENTS__V133*/ meltfptr[126];; /*^compute*/ /*_.LOC__V136*/ meltfptr[135] = /*_.LOCA_LOCATION__V129*/ meltfptr[114];; /*^compute*/ /*_.MNAME__V137*/ meltfptr[136] = /*_.SEXPMAC_MNAME__V130*/ meltfptr[111];; MELT_LOCATION("warmelt-outobj.melt:4228:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREXP__V2*/ meltfptr[1]; /*_.ADD_DOCSYM__V138*/ meltfptr[137] = melt_apply ((meltclosure_ptr_t)((/*~ADD_DOCSYM*/ meltfclos->tabval[1])), (melt_ptr_t)(/*_.MNAME__V137*/ meltfptr[136]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4229:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)((/*~MDINFO*/ meltfclos->tabval[0])), 9, "MKDOC_MACROS");/*_.MKDOC_MACROS__V139*/ meltfptr[138] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_MACROS__V139*/ meltfptr[138] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4229:/ locexp"); meltgc_append_list((melt_ptr_t)(/*_.MKDOC_MACROS__V139*/ meltfptr[138]), (melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]));} ; MELT_LOCATION("warmelt-outobj.melt:4219:/ clear"); /*clear*/ /*_.DOCLOC__V134*/ meltfptr[127] = 0 ; /*^clear*/ /*clear*/ /*_.DOCONT__V135*/ meltfptr[124] = 0 ; /*^clear*/ /*clear*/ /*_.LOC__V136*/ meltfptr[135] = 0 ; /*^clear*/ /*clear*/ /*_.MNAME__V137*/ meltfptr[136] = 0 ; /*^clear*/ /*clear*/ /*_.ADD_DOCSYM__V138*/ meltfptr[137] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_MACROS__V139*/ meltfptr[138] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1_28: MELT_LOCATION("warmelt-outobj.melt:4233:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V140*/ meltfptr[127] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_DOC__V141*/ meltfptr[124] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.CUREXP__V2*/ meltfptr[1]), ((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[17]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V140*/ meltfptr[127] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1]), 3, "SDEF_DOC");/*_.SDEF_DOC__V141*/ meltfptr[124] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4237:/ objgoto"); /*objgoto*/ goto mtch1_29; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4233:/ cond.else"); /*^block*/ /*anyblock*/{ /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ;} ; } ; /*objlabel*/ mtch1_29: MELT_LOCATION("warmelt-outobj.melt:4237:/ objlabel"); ; /*^clear*/ /*clear*/ /*_.LOCA_LOCATION__V142*/ meltfptr[135] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V143*/ meltfptr[136] = 0 ; /*^cond*/ /*cond*/ if ( /*normtesterinst*/ (melt_is_instance_of((/*_.SDEF_DOC__V141*/ meltfptr[124]), ((/*!CLASS_SEXPR*/ meltfrout->tabval[2]))))) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V141*/ meltfptr[124]), 1, "LOCA_LOCATION");/*_.LOCA_LOCATION__V142*/ meltfptr[135] = slot; }; ; /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SDEF_DOC__V141*/ meltfptr[124]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V143*/ meltfptr[136] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4233:/ objgoto"); /*objgoto*/ goto mtch1_30; ;} ; } else {MELT_LOCATION("warmelt-outobj.melt:4237:/ cond.else"); /*^block*/ /*anyblock*/{ /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ;} ; } ; /*objlabel*/ mtch1_30: MELT_LOCATION("warmelt-outobj.melt:4233:/ objlabel"); ; /*^quasiblock*/ /*_.DNAM__V144*/ meltfptr[137] = /*_.SDEF_NAME__V140*/ meltfptr[127];; /*^compute*/ /*_.DOC__V145*/ meltfptr[138] = /*_.SDEF_DOC__V141*/ meltfptr[124];; /*^compute*/ /*_.DOCL__V146*/ meltfptr[124] = /*_.SEXP_CONTENTS__V143*/ meltfptr[136];; /*^compute*/ /*_.LOC__V147*/ meltfptr[146] = /*_.LOCA_LOCATION__V142*/ meltfptr[135];; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4238:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[11] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4238:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd dnam"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[11]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4238; /*_.DEBUG_MSG_FUN__V149*/ meltfptr[148] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.DNAM__V144*/ meltfptr[137]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V148*/ meltfptr[147] = /*_.DEBUG_MSG_FUN__V149*/ meltfptr[148];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4238:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L12*/ meltfnum[11] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V149*/ meltfptr[148] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V148*/ meltfptr[147] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4239:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L13*/ meltfnum[11] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4239:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd doc"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L13*/ meltfnum[11]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4239; /*_.DEBUG_MSG_FUN__V151*/ meltfptr[150] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.DOC__V145*/ meltfptr[138]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V150*/ meltfptr[148] = /*_.DEBUG_MSG_FUN__V151*/ meltfptr[150];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4239:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L13*/ meltfnum[11] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V151*/ meltfptr[150] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V150*/ meltfptr[148] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4240:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.DNAM__V144*/ meltfptr[137]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.DNAM__V144*/ meltfptr[137]), 1, "NAMED_NAME");/*_.NAMED_NAME__V152*/ meltfptr[150] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V152*/ meltfptr[150] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4240:/ locexp"); melt_inform_str((melt_ptr_t)(/*_.LOC__V147*/ meltfptr[146]), ( "makedoc: got documented "), (melt_ptr_t)(/*_.NAMED_NAME__V152*/ meltfptr[150]));} ; /*_.DISCRIM__V153*/ meltfptr[152] = (melt_discr((melt_ptr_t)(/*_.CUREXP__V2*/ meltfptr[1])));; MELT_LOCATION("warmelt-outobj.melt:4241:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.DISCRIM__V153*/ meltfptr[152]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.DISCRIM__V153*/ meltfptr[152]), 1, "NAMED_NAME");/*_.NAMED_NAME__V154*/ meltfptr[153] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V154*/ meltfptr[153] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4241:/ locexp"); melt_warning_str(0, (melt_ptr_t)(/*_.LOC__V147*/ meltfptr[146]), ( "makedoc: unimplemented for class "), (melt_ptr_t)(/*_.NAMED_NAME__V154*/ meltfptr[153]));} ; MELT_LOCATION("warmelt-outobj.melt:4233:/ clear"); /*clear*/ /*_.DNAM__V144*/ meltfptr[137] = 0 ; /*^clear*/ /*clear*/ /*_.DOC__V145*/ meltfptr[138] = 0 ; /*^clear*/ /*clear*/ /*_.DOCL__V146*/ meltfptr[124] = 0 ; /*^clear*/ /*clear*/ /*_.LOC__V147*/ meltfptr[146] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V148*/ meltfptr[147] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V150*/ meltfptr[148] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V152*/ meltfptr[150] = 0 ; /*^clear*/ /*clear*/ /*_.DISCRIM__V153*/ meltfptr[152] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V154*/ meltfptr[153] = 0 ; /*^objgoto*/ /*objgoto*/ goto mtch1__end /*endmatch*/; ; /*objlabel*/ mtch1__end: MELT_LOCATION("warmelt-outobj.melt:4053:/ objlabel"); ;} ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4051:/ clear"); /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_140_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_141_warmelt_outobj_MAKEDOC_OUTDEFLOC(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_141_warmelt_outobj_MAKEDOC_OUTDEFLOC_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 10 void* varptr[10]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ const char* loc_CSTRING__o0; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<10; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 10; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTDEFLOC", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4250:/ getarg"); /*_.OUTB__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DEF__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_CSTRING) goto lab_endgetargs; /*_?*/ meltfram__.loc_CSTRING__o0 = xargtab_[1].bp_cstring; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4251:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4251:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4251:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4251)?(4251):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4251:/ clear"); /*clear*/ /*_#IS_STRBUF__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4252:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4252:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4252:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check def"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4252)?(4252):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4252:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4253:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_LOCATED*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.DEF__V3*/ meltfptr[2]), 1, "LOCA_LOCATION");/*_.LOC__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.LOC__V8*/ meltfptr[6] = NULL;; } ; /*^compute*/ /*_#NULL__L3*/ meltfnum[0] = ((/*_.LOC__V8*/ meltfptr[6]) == NULL);; MELT_LOCATION("warmelt-outobj.melt:4255:/ cond"); /*cond*/ if (/*_#NULL__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:4255:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V9*/ meltfptr[8] = /*_.RETURN___V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4255:/ clear"); /*clear*/ /*_.RETURN___V10*/ meltfptr[9] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V9*/ meltfptr[8] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4256:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (/*_?*/ meltfram__.loc_CSTRING__o0));} ; { MELT_LOCATION("warmelt-outobj.melt:4257:/ locexp"); /*add2sbufteximixloc*/ if (melt_magic_discr((melt_ptr_t)(/*_.LOC__V8*/ meltfptr[6])) == OBMAG_MIXLOC) { location_t loc = melt_location_mixloc((melt_ptr_t)/*_.LOC__V8*/ meltfptr[6]); meltgc_strbuf_printf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), "file @file{%s}, line %d", lbasename (LOCATION_FILE (loc)), LOCATION_LINE (loc)); } /*end add2sbufteximixloc*/;} ; { MELT_LOCATION("warmelt-outobj.melt:4258:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "."));} ; { MELT_LOCATION("warmelt-outobj.melt:4259:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4253:/ clear"); /*clear*/ /*_.LOC__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_#NULL__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V9*/ meltfptr[8] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4250:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTDEFLOC", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_141_warmelt_outobj_MAKEDOC_OUTDEFLOC*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_142_warmelt_outobj_MAKEDOC_OUTFORMALS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_142_warmelt_outobj_MAKEDOC_OUTFORMALS_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 13 void* varptr[13]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ const char* loc_CSTRING__o0; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<13; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 13; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTFORMALS", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4264:/ getarg"); /*_.OUTB__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.FARGS__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.FARGS__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_CSTRING) goto lab_endgetargs; /*_?*/ meltfram__.loc_CSTRING__o0 = xargtab_[1].bp_cstring; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4265:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4265:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4265:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4265)?(4265):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4265:/ clear"); /*clear*/ /*_#IS_STRBUF__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_#MULTIPLE_LENGTH__L2*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.FARGS__V3*/ meltfptr[2])));; /*^compute*/ /*_#I__L3*/ meltfnum[2] = ((/*_#MULTIPLE_LENGTH__L2*/ meltfnum[0]) > (0));; MELT_LOCATION("warmelt-outobj.melt:4266:/ cond"); /*cond*/ if (/*_#I__L3*/ meltfnum[2]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4268:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4269:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (/*_?*/ meltfram__.loc_CSTRING__o0));} ; { MELT_LOCATION("warmelt-outobj.melt:4270:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4271:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@multitable @columnfractions 0.05 0.15 0.4"));} ; { MELT_LOCATION("warmelt-outobj.melt:4272:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4273:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@headitem index @tab type @tab name"));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.FARGS__V3*/ meltfptr[2]); for (/*_#FIX__L4*/ meltfnum[3] = 0; (/*_#FIX__L4*/ meltfnum[3] >= 0) && (/*_#FIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#FIX__L4*/ meltfnum[3]++) { /*_.CURFBIND__V6*/ meltfptr[4] = melt_multiple_nth((melt_ptr_t)(/*_.FARGS__V3*/ meltfptr[2]), /*_#FIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4277:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L5*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.CURFBIND__V6*/ meltfptr[4]), (melt_ptr_t)((/*!CLASS_FORMAL_BINDING*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4277:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4277:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfbind"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4277)?(4277):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[6] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4277:/ clear"); /*clear*/ /*_#IS_A__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4278:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4279:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@item @i{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4280:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (/*_#FIX__L4*/ meltfnum[3]));} ; { MELT_LOCATION("warmelt-outobj.melt:4281:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "} @tab @slanted{"));} ; MELT_LOCATION("warmelt-outobj.melt:4286:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFBIND__V6*/ meltfptr[4]), (melt_ptr_t)((/*!CLASS_FORMAL_BINDING*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFBIND__V6*/ meltfptr[4]), 1, "FBIND_TYPE");/*_.FBIND_TYPE__V9*/ meltfptr[7] = slot; }; ; } else {/*^cond.else*/ /*_.FBIND_TYPE__V9*/ meltfptr[7] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4285:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FBIND_TYPE__V9*/ meltfptr[7]), (melt_ptr_t)((/*!CLASS_CTYPE*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FBIND_TYPE__V9*/ meltfptr[7]), 2, "CTYPE_KEYWORD");/*_.CTYPE_KEYWORD__V10*/ meltfptr[9] = slot; }; ; } else {/*^cond.else*/ /*_.CTYPE_KEYWORD__V10*/ meltfptr[9] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4284:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CTYPE_KEYWORD__V10*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CTYPE_KEYWORD__V10*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V11*/ meltfptr[10] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V11*/ meltfptr[10] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4282:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V11*/ meltfptr[10])));} ; MELT_LOCATION("warmelt-outobj.melt:4287:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFBIND__V6*/ meltfptr[4]), (melt_ptr_t)((/*!CLASS_ANY_BINDING*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFBIND__V6*/ meltfptr[4]), 0, "BINDER");/*_.BINDER__V12*/ meltfptr[11] = slot; }; ; } else {/*^cond.else*/ /*_.BINDER__V12*/ meltfptr[11] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4287:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.BINDER__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.BINDER__V12*/ meltfptr[11]), 1, "NAMED_NAME");/*_.ARGNAM__V13*/ meltfptr[12] = slot; }; ; } else {/*^cond.else*/ /*_.ARGNAM__V13*/ meltfptr[12] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4288:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "} @tab @code{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4289:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.ARGNAM__V13*/ meltfptr[12])));} ; { MELT_LOCATION("warmelt-outobj.melt:4290:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4291:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4292:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@vindex "));} ; { MELT_LOCATION("warmelt-outobj.melt:4293:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.ARGNAM__V13*/ meltfptr[12])));} ; { MELT_LOCATION("warmelt-outobj.melt:4294:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4287:/ clear"); /*clear*/ /*_.BINDER__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.ARGNAM__V13*/ meltfptr[12] = 0 ; if (/*_#FIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4274:/ clear"); /*clear*/ /*_.CURFBIND__V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_#FIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.FBIND_TYPE__V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.CTYPE_KEYWORD__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V11*/ meltfptr[10] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; { MELT_LOCATION("warmelt-outobj.melt:4297:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4298:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@end multitable"));} ; { MELT_LOCATION("warmelt-outobj.melt:4299:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4267:/ quasiblock"); /*epilog*/ } ; } /*noelse*/ ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4264:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#I__L3*/ meltfnum[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTFORMALS", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_142_warmelt_outobj_MAKEDOC_OUTFORMALS*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_143_warmelt_outobj_MAKEDOC_OUTDOC(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_143_warmelt_outobj_MAKEDOC_OUTDOC_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 18 void* varptr[18]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ const char* loc_CSTRING__o0; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<18; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 18; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTDOC", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4304:/ getarg"); /*_.OUTB__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.DOC__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.DOC__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_CSTRING) goto lab_endgetargs; /*_?*/ meltfram__.loc_CSTRING__o0 = xargtab_[1].bp_cstring; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4305:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4305:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4305:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4305)?(4305):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4305:/ clear"); /*clear*/ /*_#IS_STRBUF__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; /*^compute*/ /*_#IS_NOT_A__L2*/ meltfnum[0] = !melt_is_instance_of((melt_ptr_t)(/*_.DOC__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_SEXPR*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4306:/ cond"); /*cond*/ if (/*_#IS_NOT_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ /*^quasiblock*/ /*_.RETVAL___V1*/ meltfptr[0] = NULL;; MELT_LOCATION("warmelt-outobj.melt:4306:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*_.IF___V6*/ meltfptr[4] = /*_.RETURN___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4306:/ clear"); /*clear*/ /*_.RETURN___V7*/ meltfptr[6] = 0 ;} ; } else {/*^cond.else*/ /*_.IF___V6*/ meltfptr[4] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4307:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4308:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (/*_?*/ meltfram__.loc_CSTRING__o0));} ; MELT_LOCATION("warmelt-outobj.melt:4311:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.DOC__V3*/ meltfptr[2]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V8*/ meltfptr[6] = slot; }; ; /*citerblock FOREACH_IN_LIST*/ { /* start cit1__EACHLIST */ for (/*_.CURPAIR__V9*/ meltfptr[8] = melt_list_first(/*_.SEXP_CONTENTS__V8*/ meltfptr[6]); melt_magic_discr(/*_.CURPAIR__V9*/ meltfptr[8]) == OBMAG_PAIR; /*_.CURPAIR__V9*/ meltfptr[8] = melt_pair_tail(/*_.CURPAIR__V9*/ meltfptr[8])) { /*_.CURELEM__V10*/ meltfptr[9] = melt_pair_head(/*_.CURPAIR__V9*/ meltfptr[8]); /*_#IS_STRING__L3*/ meltfnum[2] = (melt_magic_discr((melt_ptr_t)(/*_.CURELEM__V10*/ meltfptr[9])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4314:/ cond"); /*cond*/ if (/*_#IS_STRING__L3*/ meltfnum[2]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4315:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.CURELEM__V10*/ meltfptr[9])));} ; /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ; /*epilog*/ } ; } else {MELT_LOCATION("warmelt-outobj.melt:4314:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#IS_A__L4*/ meltfnum[3] = melt_is_instance_of((melt_ptr_t)(/*_.CURELEM__V10*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4316:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[3]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4317:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4318:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURELEM__V10*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V13*/ meltfptr[12] = slot; }; ; { /*^locexp*/ meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V13*/ meltfptr[12])));} ; { MELT_LOCATION("warmelt-outobj.melt:4319:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "}"));} ; MELT_LOCATION("warmelt-outobj.melt:4316:/ quasiblock"); /*epilog*/ /*^clear*/ /*clear*/ /*_.NAMED_NAME__V13*/ meltfptr[12] = 0 ;} ; } else {/*^cond.else*/ /*_.IFELSE___V12*/ meltfptr[11] = NULL;; } ; /*^compute*/ /*_.IFELSE___V11*/ meltfptr[10] = /*_.IFELSE___V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4314:/ clear"); /*clear*/ /*_#IS_A__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V12*/ meltfptr[11] = 0 ;} ; } ; } /* end cit1__EACHLIST */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4310:/ clear"); /*clear*/ /*_.CURPAIR__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.CURELEM__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#IS_STRING__L3*/ meltfnum[2] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ;} /*endciterblock FOREACH_IN_LIST*/ ; { MELT_LOCATION("warmelt-outobj.melt:4323:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4326:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.DOC__V3*/ meltfptr[2]), 2, "SEXP_CONTENTS");/*_.SEXP_CONTENTS__V14*/ meltfptr[12] = slot; }; ; /*citerblock FOREACH_IN_LIST*/ { /* start cit2__EACHLIST */ for (/*_.CURPAIR__V15*/ meltfptr[11] = melt_list_first(/*_.SEXP_CONTENTS__V14*/ meltfptr[12]); melt_magic_discr(/*_.CURPAIR__V15*/ meltfptr[11]) == OBMAG_PAIR; /*_.CURPAIR__V15*/ meltfptr[11] = melt_pair_tail(/*_.CURPAIR__V15*/ meltfptr[11])) { /*_.CURELEM__V16*/ meltfptr[15] = melt_pair_head(/*_.CURPAIR__V15*/ meltfptr[11]); /*_#IS_A__L5*/ meltfnum[3] = melt_is_instance_of((melt_ptr_t)(/*_.CURELEM__V16*/ meltfptr[15]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4329:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[3]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4330:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4331:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURELEM__V16*/ meltfptr[15]), 1, "NAMED_NAME");/*_.NAMED_NAME__V18*/ meltfptr[17] = slot; }; ; { /*^locexp*/ meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V18*/ meltfptr[17])));} ; { MELT_LOCATION("warmelt-outobj.melt:4332:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V2*/ meltfptr[1]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4329:/ quasiblock"); /*epilog*/ /*^clear*/ /*clear*/ /*_.NAMED_NAME__V18*/ meltfptr[17] = 0 ;} ; } else {/*^cond.else*/ /*_.IFELSE___V17*/ meltfptr[16] = NULL;; } ; } /* end cit2__EACHLIST */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4325:/ clear"); /*clear*/ /*_.CURPAIR__V15*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.CURELEM__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_#IS_A__L5*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V17*/ meltfptr[16] = 0 ;} /*endciterblock FOREACH_IN_LIST*/ ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4304:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_#IS_NOT_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IF___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.SEXP_CONTENTS__V14*/ meltfptr[12] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTDOC", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_143_warmelt_outobj_MAKEDOC_OUTDOC*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_144_warmelt_outobj_MAKEDOC_OUTCLASSDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_144_warmelt_outobj_MAKEDOC_OUTCLASSDEF_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 46 void* varptr[46]; #define MELTFRAM_NBVARNUM 20 long varnum[20]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<46; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 46; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTCLASSDEF", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4340:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.CLADEF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_LONG) goto lab_endgetargs; /*_#CLAIX__L1*/ meltfnum[0] = xargtab_[2].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4341:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4341:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4341:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4341)?(4341):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4341:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4342:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L3*/ meltfnum[1] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4342:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L3*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4342:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4342)?(4342):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4342:/ clear"); /*clear*/ /*_#IS_STRBUF__L3*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4343:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L4*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4343:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V10*/ meltfptr[9] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4343:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cladef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4343)?(4343):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V9*/ meltfptr[7] = /*_.IFELSE___V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4343:/ clear"); /*clear*/ /*_#IS_A__L4*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4344:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3]), 5, "SCLASS_CLABIND");/*_.SCLASS_CLABIND__V11*/ meltfptr[9] = slot; }; ; } else {/*^cond.else*/ /*_.SCLASS_CLABIND__V11*/ meltfptr[9] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4344:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SCLASS_CLABIND__V11*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_CLASS_BINDING*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SCLASS_CLABIND__V11*/ meltfptr[9]), 3, "CBIND_CLASS");/*_.CLA__V12*/ meltfptr[11] = slot; }; ; } else {/*^cond.else*/ /*_.CLA__V12*/ meltfptr[11] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4345:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), 5, "CLASS_ANCESTORS");/*_.CLANCS__V13*/ meltfptr[12] = slot; }; ; } else {/*^cond.else*/ /*_.CLANCS__V13*/ meltfptr[12] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4346:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), 6, "CLASS_FIELDS");/*_.CLFLDS__V14*/ meltfptr[13] = slot; }; ; } else {/*^cond.else*/ /*_.CLFLDS__V14*/ meltfptr[13] = NULL;; } ; /*^compute*/ /*_#NBCLANC__L5*/ meltfnum[1] = (melt_multiple_length((melt_ptr_t)(/*_.CLANCS__V13*/ meltfptr[12])));; /*^compute*/ /*_#NBCLFLDS__L6*/ meltfnum[5] = (melt_multiple_length((melt_ptr_t)(/*_.CLFLDS__V14*/ meltfptr[13])));; MELT_LOCATION("warmelt-outobj.melt:4349:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLADEF__V4*/ meltfptr[3]), 3, "SDEF_DOC");/*_.DOC__V15*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.DOC__V15*/ meltfptr[14] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4350:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 14, "MKDOC_SUBCLASSMAP");/*_.MKDOC_SUBCLASSMAP__V16*/ meltfptr[15] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_SUBCLASSMAP__V16*/ meltfptr[15] = NULL;; } ; /*^compute*/ /*_.SUBCLALIST__V17*/ meltfptr[16] = melt_get_mapobjects((meltmapobjects_ptr_t)(/*_.MKDOC_SUBCLASSMAP__V16*/ meltfptr[15]), (meltobject_ptr_t)(/*_.CLA__V12*/ meltfptr[11]));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4352:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L7*/ meltfnum[6] = melt_is_instance_of((melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[3])));; MELT_LOCATION("warmelt-outobj.melt:4352:/ cond"); /*cond*/ if (/*_#IS_A__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V19*/ meltfptr[18] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4352:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cla"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4352)?(4352):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V18*/ meltfptr[17] = /*_.IFELSE___V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4352:/ clear"); /*clear*/ /*_#IS_A__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V18*/ meltfptr[17] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4353:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4354:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4355:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), 1, "NAMED_NAME");/*_.NAMED_NAME__V20*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V20*/ meltfptr[18] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4355:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V20*/ meltfptr[18])));} ; { MELT_LOCATION("warmelt-outobj.melt:4356:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4357:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4358:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4359:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLA__V12*/ meltfptr[11]), 1, "NAMED_NAME");/*_.NAMED_NAME__V21*/ meltfptr[20] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V21*/ meltfptr[20] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4359:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V21*/ meltfptr[20])));} ; { MELT_LOCATION("warmelt-outobj.melt:4360:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4361:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CLADEF__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_cstring = "Class defined at "; /*_.MAKEDOC_OUTDEFLOC__V22*/ meltfptr[21] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDEFLOC*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; /*_#I__L8*/ meltfnum[6] = ((/*_#NBCLANC__L5*/ meltfnum[1]) > (0));; MELT_LOCATION("warmelt-outobj.melt:4363:/ cond"); /*cond*/ if (/*_#I__L8*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4365:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4366:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@strong{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4367:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#NBCLANC__L5*/ meltfnum[1]));} ; { MELT_LOCATION("warmelt-outobj.melt:4368:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " ancestors:}"));} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.CLANCS__V13*/ meltfptr[12]); for (/*_#ANCIX__L9*/ meltfnum[8] = 0; (/*_#ANCIX__L9*/ meltfnum[8] >= 0) && (/*_#ANCIX__L9*/ meltfnum[8] < cit1__EACHTUP_ln); /*_#ANCIX__L9*/ meltfnum[8]++) { /*_.CURANC__V23*/ meltfptr[22] = melt_multiple_nth((melt_ptr_t)(/*_.CLANCS__V13*/ meltfptr[12]), /*_#ANCIX__L9*/ meltfnum[8]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4372:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[9] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4372:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_outclassdef curanc"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[9]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4372; /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.CURANC__V23*/ meltfptr[22]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V24*/ meltfptr[23] = /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4372:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L10*/ meltfnum[9] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V25*/ meltfptr[24] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V24*/ meltfptr[23] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4373:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L11*/ meltfnum[9] = melt_is_instance_of((melt_ptr_t)(/*_.CURANC__V23*/ meltfptr[22]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[3])));; MELT_LOCATION("warmelt-outobj.melt:4373:/ cond"); /*cond*/ if (/*_#IS_A__L11*/ meltfnum[9]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V27*/ meltfptr[26] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4373:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curanc"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4373)?(4373):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V27*/ meltfptr[26] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V26*/ meltfptr[24] = /*_.IFELSE___V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4373:/ clear"); /*clear*/ /*_#IS_A__L11*/ meltfnum[9] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V27*/ meltfptr[26] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V26*/ meltfptr[24] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4374:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " @code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4375:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURANC__V23*/ meltfptr[22]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURANC__V23*/ meltfptr[22]), 1, "NAMED_NAME");/*_.NAMED_NAME__V28*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V28*/ meltfptr[26] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4375:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V28*/ meltfptr[26])));} ; { MELT_LOCATION("warmelt-outobj.melt:4376:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; if (/*_#ANCIX__L9*/ meltfnum[8]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4369:/ clear"); /*clear*/ /*_.CURANC__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_#ANCIX__L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V26*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V28*/ meltfptr[26] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; { MELT_LOCATION("warmelt-outobj.melt:4378:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "."));} ; { MELT_LOCATION("warmelt-outobj.melt:4379:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4364:/ quasiblock"); /*epilog*/ } ; } /*noelse*/ ; /*_#I__L12*/ meltfnum[9] = ((/*_#NBCLFLDS__L6*/ meltfnum[5]) > (0));; MELT_LOCATION("warmelt-outobj.melt:4382:/ cond"); /*cond*/ if (/*_#I__L12*/ meltfnum[9]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4384:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4385:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@strong{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4386:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#NBCLFLDS__L6*/ meltfnum[5]));} ; { MELT_LOCATION("warmelt-outobj.melt:4387:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " fields:}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4388:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4389:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@multitable @columnfractions 0.08 0.4 0.4"));} ; { MELT_LOCATION("warmelt-outobj.melt:4390:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4391:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@headitem offset @tab name @tab class"));} ; { MELT_LOCATION("warmelt-outobj.melt:4392:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit2__EACHTUP: */ long cit2__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.CLFLDS__V14*/ meltfptr[13]); for (/*_#FLDIX__L13*/ meltfnum[12] = 0; (/*_#FLDIX__L13*/ meltfnum[12] >= 0) && (/*_#FLDIX__L13*/ meltfnum[12] < cit2__EACHTUP_ln); /*_#FLDIX__L13*/ meltfnum[12]++) { /*_.CURFLD__V29*/ meltfptr[28] = melt_multiple_nth((melt_ptr_t)(/*_.CLFLDS__V14*/ meltfptr[13]), /*_#FLDIX__L13*/ meltfnum[12]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4396:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4396:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_outclassdef curfld"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4396; /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V30*/ meltfptr[29] = /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4396:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L14*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V30*/ meltfptr[29] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4397:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L15*/ meltfnum[13] = melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (melt_ptr_t)((/*!CLASS_FIELD*/ meltfrout->tabval[8])));; MELT_LOCATION("warmelt-outobj.melt:4397:/ cond"); /*cond*/ if (/*_#IS_A__L15*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V33*/ meltfptr[32] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4397:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfld"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4397)?(4397):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V33*/ meltfptr[32] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V32*/ meltfptr[30] = /*_.IFELSE___V33*/ meltfptr[32];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4397:/ clear"); /*clear*/ /*_#IS_A__L15*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V33*/ meltfptr[32] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V32*/ meltfptr[30] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4398:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4399:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@item "));} ; { MELT_LOCATION("warmelt-outobj.melt:4400:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#FLDIX__L13*/ meltfnum[12]));} ; MELT_LOCATION("warmelt-outobj.melt:4401:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (melt_ptr_t)((/*!CLASS_FIELD*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), 2, "FLD_OWNCLASS");/*_.FLDCLA__V34*/ meltfptr[32] = slot; }; ; } else {/*^cond.else*/ /*_.FLDCLA__V34*/ meltfptr[32] = NULL;; } ; /*^compute*/ /*_#__L16*/ meltfnum[13] = ((/*_.FLDCLA__V34*/ meltfptr[32]) == (/*_.CLA__V12*/ meltfptr[11]));; MELT_LOCATION("warmelt-outobj.melt:4402:/ cond"); /*cond*/ if (/*_#__L16*/ meltfnum[13]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4404:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " @tab @strong{"));} ; MELT_LOCATION("warmelt-outobj.melt:4405:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), 1, "NAMED_NAME");/*_.NAMED_NAME__V35*/ meltfptr[34] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V35*/ meltfptr[34] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4405:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V35*/ meltfptr[34])));} ; { MELT_LOCATION("warmelt-outobj.melt:4406:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "} @tab @emph{@code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4407:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FLDCLA__V34*/ meltfptr[32]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FLDCLA__V34*/ meltfptr[32]), 1, "NAMED_NAME");/*_.NAMED_NAME__V36*/ meltfptr[35] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V36*/ meltfptr[35] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4407:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V36*/ meltfptr[35])));} ; { MELT_LOCATION("warmelt-outobj.melt:4408:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4409:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4410:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4411:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), 1, "NAMED_NAME");/*_.NAMED_NAME__V37*/ meltfptr[36] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V37*/ meltfptr[36] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4411:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V37*/ meltfptr[36])));} ; { MELT_LOCATION("warmelt-outobj.melt:4412:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4403:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4402:/ clear"); /*clear*/ /*_.NAMED_NAME__V35*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V36*/ meltfptr[35] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V37*/ meltfptr[36] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4415:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " @tab @emph{"));} ; MELT_LOCATION("warmelt-outobj.melt:4416:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURFLD__V29*/ meltfptr[28]), 1, "NAMED_NAME");/*_.NAMED_NAME__V38*/ meltfptr[34] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V38*/ meltfptr[34] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4416:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V38*/ meltfptr[34])));} ; { MELT_LOCATION("warmelt-outobj.melt:4417:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4418:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4419:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@tab @code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4420:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FLDCLA__V34*/ meltfptr[32]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FLDCLA__V34*/ meltfptr[32]), 1, "NAMED_NAME");/*_.NAMED_NAME__V39*/ meltfptr[35] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V39*/ meltfptr[35] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4420:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V39*/ meltfptr[35])));} ; { MELT_LOCATION("warmelt-outobj.melt:4421:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "} "));} ; MELT_LOCATION("warmelt-outobj.melt:4414:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4402:/ clear"); /*clear*/ /*_.NAMED_NAME__V38*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V39*/ meltfptr[35] = 0 ;} ; } ; { MELT_LOCATION("warmelt-outobj.melt:4423:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4401:/ clear"); /*clear*/ /*_.FLDCLA__V34*/ meltfptr[32] = 0 ; /*^clear*/ /*clear*/ /*_#__L16*/ meltfnum[13] = 0 ; if (/*_#FLDIX__L13*/ meltfnum[12]<0) break; } /* end cit2__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4393:/ clear"); /*clear*/ /*_.CURFLD__V29*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_#FLDIX__L13*/ meltfnum[12] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V30*/ meltfptr[29] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V32*/ meltfptr[30] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; { MELT_LOCATION("warmelt-outobj.melt:4426:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@end multitable"));} ; { MELT_LOCATION("warmelt-outobj.melt:4427:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4383:/ quasiblock"); /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4431:/ cond"); /*cond*/ if (/*_.SUBCLALIST__V17*/ meltfptr[16]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4432:/ quasiblock"); /*^apply*/ /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[10]); /*_.RAWSUBCLATUP__V40*/ meltfptr[36] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.SUBCLALIST__V17*/ meltfptr[16]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDSUBCLATUP__V41*/ meltfptr[34] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWSUBCLATUP__V40*/ meltfptr[36]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[11])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[10])));; /*^compute*/ /*_#NBSUBCLA__L17*/ meltfnum[13] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDSUBCLATUP__V41*/ meltfptr[34])));; { MELT_LOCATION("warmelt-outobj.melt:4438:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4439:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L18*/ meltfnum[17] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4439:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_outclassdef sortedsubclatup"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L18*/ meltfnum[17]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4439; /*_.DEBUG_MSG_FUN__V43*/ meltfptr[32] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.SORTEDSUBCLATUP__V41*/ meltfptr[34]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V42*/ meltfptr[35] = /*_.DEBUG_MSG_FUN__V43*/ meltfptr[32];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4439:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L18*/ meltfnum[17] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V43*/ meltfptr[32] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V42*/ meltfptr[35] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4440:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@strong{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4441:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#NBSUBCLA__L17*/ meltfnum[13]));} ; { MELT_LOCATION("warmelt-outobj.melt:4442:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " sub-classes:}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4443:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit3__EACHTUP: */ long cit3__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDSUBCLATUP__V41*/ meltfptr[34]); for (/*_#SCLIX__L19*/ meltfnum[17] = 0; (/*_#SCLIX__L19*/ meltfnum[17] >= 0) && (/*_#SCLIX__L19*/ meltfnum[17] < cit3__EACHTUP_ln); /*_#SCLIX__L19*/ meltfnum[17]++) { /*_.SUBCLA__V44*/ meltfptr[32] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDSUBCLATUP__V41*/ meltfptr[34]), /*_#SCLIX__L19*/ meltfnum[17]); /*_#I__L20*/ meltfnum[19] = ((/*_#SCLIX__L19*/ meltfnum[17]) > (0));; MELT_LOCATION("warmelt-outobj.melt:4447:/ cond"); /*cond*/ if (/*_#I__L20*/ meltfnum[19]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4448:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( ","));} ; /*epilog*/ } ; } /*noelse*/ ; { MELT_LOCATION("warmelt-outobj.melt:4449:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " @code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4450:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SUBCLA__V44*/ meltfptr[32]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SUBCLA__V44*/ meltfptr[32]), 1, "NAMED_NAME");/*_.NAMED_NAME__V45*/ meltfptr[44] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V45*/ meltfptr[44] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4450:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V45*/ meltfptr[44])));} ; { MELT_LOCATION("warmelt-outobj.melt:4451:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; if (/*_#SCLIX__L19*/ meltfnum[17]<0) break; } /* end cit3__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4444:/ clear"); /*clear*/ /*_.SUBCLA__V44*/ meltfptr[32] = 0 ; /*^clear*/ /*clear*/ /*_#SCLIX__L19*/ meltfnum[17] = 0 ; /*^clear*/ /*clear*/ /*_#I__L20*/ meltfnum[19] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V45*/ meltfptr[44] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; { MELT_LOCATION("warmelt-outobj.melt:4453:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "."));} ; { MELT_LOCATION("warmelt-outobj.melt:4454:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4432:/ clear"); /*clear*/ /*_.RAWSUBCLATUP__V40*/ meltfptr[36] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDSUBCLATUP__V41*/ meltfptr[34] = 0 ; /*^clear*/ /*clear*/ /*_#NBSUBCLA__L17*/ meltfnum[13] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V42*/ meltfptr[35] = 0 ; /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4458:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DOC__V15*/ meltfptr[14]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{class description:} "; /*_.MAKEDOC_OUTDOC__V46*/ meltfptr[36] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[12])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4459:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4344:/ clear"); /*clear*/ /*_.SCLASS_CLABIND__V11*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.CLA__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.CLANCS__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.CLFLDS__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_#NBCLANC__L5*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_#NBCLFLDS__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.DOC__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_SUBCLASSMAP__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.SUBCLALIST__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V20*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDEFLOC__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_#I__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_#I__L12*/ meltfnum[9] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V46*/ meltfptr[36] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4340:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTCLASSDEF", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_144_warmelt_outobj_MAKEDOC_OUTCLASSDEF*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_145_warmelt_outobj_MAKEDOC_GENMACRO(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_145_warmelt_outobj_MAKEDOC_GENMACRO_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 22 void* varptr[22]; #define MELTFRAM_NBVARNUM 7 long varnum[7]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<22; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 22; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENMACRO", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4465:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4466:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4466:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4466:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4466)?(4466):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4466:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4467:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4467:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4467:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4467)?(4467):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4467:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4468:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT macros"));} ; { MELT_LOCATION("warmelt-outobj.melt:4469:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4470:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT macros"));} ; { MELT_LOCATION("warmelt-outobj.melt:4471:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4472:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4473:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 9, "MKDOC_MACROS");/*_.MACLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.MACLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4474:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.UNSORTEDMACTUPLE__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.MACLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDMACTUPLE__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.UNSORTEDMACTUPLE__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; { MELT_LOCATION("warmelt-outobj.melt:4479:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDMACTUPLE__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4480:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4481:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " documented macros."));} ; { MELT_LOCATION("warmelt-outobj.melt:4482:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4483:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDMACTUPLE__V10*/ meltfptr[9]); for (/*_#MACIX__L4*/ meltfnum[3] = 0; (/*_#MACIX__L4*/ meltfnum[3] >= 0) && (/*_#MACIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#MACIX__L4*/ meltfnum[3]++) { /*_.CURMAC__V11*/ meltfptr[10] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDMACTUPLE__V10*/ meltfptr[9]), /*_#MACIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4487:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4487:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genmacro curmac"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4487; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4487:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4488:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L6*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[5])));; MELT_LOCATION("warmelt-outobj.melt:4488:/ cond"); /*cond*/ if (/*_#IS_A__L6*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V15*/ meltfptr[14] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4488:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curmac"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4488)?(4488):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V14*/ meltfptr[12] = /*_.IFELSE___V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4488:/ clear"); /*clear*/ /*_#IS_A__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4489:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), 2, "SEXPMAC_MNAME");/*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4489:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SEXPMAC_MNAME__V16*/ meltfptr[14]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_MNAME__V16*/ meltfptr[14]), 1, "NAMED_NAME");/*_.MNAM__V17*/ meltfptr[16] = slot; }; ; } else {/*^cond.else*/ /*_.MNAM__V17*/ meltfptr[16] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4490:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_LOCATED*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), 1, "LOCA_LOCATION");/*_.MLOC__V18*/ meltfptr[17] = slot; }; ; } else {/*^cond.else*/ /*_.MLOC__V18*/ meltfptr[17] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4491:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURMAC__V11*/ meltfptr[10]), 4, "SEXPMAC_DOC");/*_.MDOC__V19*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.MDOC__V19*/ meltfptr[18] = NULL;; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4493:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L7*/ meltfnum[4] = (melt_magic_discr((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4493:/ cond"); /*cond*/ if (/*_#IS_STRING__L7*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V21*/ meltfptr[20] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4493:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mnam"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4493)?(4493):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V20*/ meltfptr[19] = /*_.IFELSE___V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4493:/ clear"); /*clear*/ /*_#IS_STRING__L7*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V20*/ meltfptr[19] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4494:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4495:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4496:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])));} ; { MELT_LOCATION("warmelt-outobj.melt:4497:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4498:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4499:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; { MELT_LOCATION("warmelt-outobj.melt:4500:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])));} ; { MELT_LOCATION("warmelt-outobj.melt:4501:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4503:/ cond"); /*cond*/ if (/*_.MLOC__V18*/ meltfptr[17]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4505:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "Macro defined at "));} ; { MELT_LOCATION("warmelt-outobj.melt:4506:/ locexp"); /*add2sbufteximixloc*/ if (melt_magic_discr((melt_ptr_t)(/*_.MLOC__V18*/ meltfptr[17])) == OBMAG_MIXLOC) { location_t loc = melt_location_mixloc((melt_ptr_t)/*_.MLOC__V18*/ meltfptr[17]); meltgc_strbuf_printf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), "file @file{%s}, line %d", lbasename (LOCATION_FILE (loc)), LOCATION_LINE (loc)); } /*end add2sbufteximixloc*/;} ; { MELT_LOCATION("warmelt-outobj.melt:4507:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "."));} ; { MELT_LOCATION("warmelt-outobj.melt:4508:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4504:/ quasiblock"); /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4510:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MDOC__V19*/ meltfptr[18]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{macro description:} "; /*_.MAKEDOC_OUTDOC__V22*/ meltfptr[20] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[8])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4511:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4489:/ clear"); /*clear*/ /*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MNAM__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.MLOC__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.MDOC__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V22*/ meltfptr[20] = 0 ; if (/*_#MACIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4484:/ clear"); /*clear*/ /*_.CURMAC__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_#MACIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4473:/ clear"); /*clear*/ /*_.MACLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.UNSORTEDMACTUPLE__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDMACTUPLE__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4465:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENMACRO", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_145_warmelt_outobj_MAKEDOC_GENMACRO*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_146_warmelt_outobj_MAKEDOC_GENPATMACRO(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_146_warmelt_outobj_MAKEDOC_GENPATMACRO_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 22 void* varptr[22]; #define MELTFRAM_NBVARNUM 7 long varnum[7]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<22; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 22; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENPATMACRO", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4519:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4520:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4520:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4520:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4520)?(4520):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4520:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4521:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4521:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4521:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4521)?(4521):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4521:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4522:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT patterns"));} ; { MELT_LOCATION("warmelt-outobj.melt:4523:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4524:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT pattern macros"));} ; { MELT_LOCATION("warmelt-outobj.melt:4525:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4526:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4527:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 10, "MKDOC_PATMACROS");/*_.PATMACLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.PATMACLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4528:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.UNSORTEDPATMACTUPLE__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.PATMACLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDPATMACTUPLE__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.UNSORTEDPATMACTUPLE__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; { MELT_LOCATION("warmelt-outobj.melt:4533:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDPATMACTUPLE__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4534:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4535:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " documented pattern-macros."));} ; { MELT_LOCATION("warmelt-outobj.melt:4536:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDPATMACTUPLE__V10*/ meltfptr[9]); for (/*_#PMACIX__L4*/ meltfnum[3] = 0; (/*_#PMACIX__L4*/ meltfnum[3] >= 0) && (/*_#PMACIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#PMACIX__L4*/ meltfnum[3]++) { /*_.PATMAC__V11*/ meltfptr[10] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDPATMACTUPLE__V10*/ meltfptr[9]), /*_#PMACIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4540:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4540:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genpatmacro patmac"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4540; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4540:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4541:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L6*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_PATMACRO*/ meltfrout->tabval[5])));; MELT_LOCATION("warmelt-outobj.melt:4541:/ cond"); /*cond*/ if (/*_#IS_A__L6*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V15*/ meltfptr[14] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4541:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check patmac"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4541)?(4541):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V14*/ meltfptr[12] = /*_.IFELSE___V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4541:/ clear"); /*clear*/ /*_#IS_A__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4542:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4543:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), 2, "SEXPMAC_MNAME");/*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4543:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SEXPMAC_MNAME__V16*/ meltfptr[14]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SEXPMAC_MNAME__V16*/ meltfptr[14]), 1, "NAMED_NAME");/*_.MNAM__V17*/ meltfptr[16] = slot; }; ; } else {/*^cond.else*/ /*_.MNAM__V17*/ meltfptr[16] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4544:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_LOCATED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), 1, "LOCA_LOCATION");/*_.MLOC__V18*/ meltfptr[17] = slot; }; ; } else {/*^cond.else*/ /*_.MLOC__V18*/ meltfptr[17] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4545:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_EXPORT_MACRO*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PATMAC__V11*/ meltfptr[10]), 4, "SEXPMAC_DOC");/*_.MDOC__V19*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.MDOC__V19*/ meltfptr[18] = NULL;; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4547:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L7*/ meltfnum[4] = (melt_magic_discr((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4547:/ cond"); /*cond*/ if (/*_#IS_STRING__L7*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V21*/ meltfptr[20] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4547:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mnam"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4547)?(4547):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V20*/ meltfptr[19] = /*_.IFELSE___V21*/ meltfptr[20];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4547:/ clear"); /*clear*/ /*_#IS_STRING__L7*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V21*/ meltfptr[20] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V20*/ meltfptr[19] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4548:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4549:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; { MELT_LOCATION("warmelt-outobj.melt:4550:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])));} ; { MELT_LOCATION("warmelt-outobj.melt:4551:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4552:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4553:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; { MELT_LOCATION("warmelt-outobj.melt:4554:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.MNAM__V17*/ meltfptr[16])));} ; { MELT_LOCATION("warmelt-outobj.melt:4555:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4557:/ cond"); /*cond*/ if (/*_.MLOC__V18*/ meltfptr[17]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4559:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "Pattern macro defined at "));} ; { MELT_LOCATION("warmelt-outobj.melt:4560:/ locexp"); /*add2sbufteximixloc*/ if (melt_magic_discr((melt_ptr_t)(/*_.MLOC__V18*/ meltfptr[17])) == OBMAG_MIXLOC) { location_t loc = melt_location_mixloc((melt_ptr_t)/*_.MLOC__V18*/ meltfptr[17]); meltgc_strbuf_printf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), "file @file{%s}, line %d", lbasename (LOCATION_FILE (loc)), LOCATION_LINE (loc)); } /*end add2sbufteximixloc*/;} ; { MELT_LOCATION("warmelt-outobj.melt:4561:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "."));} ; { MELT_LOCATION("warmelt-outobj.melt:4562:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4558:/ quasiblock"); /*epilog*/ } ; } /*noelse*/ ; MELT_LOCATION("warmelt-outobj.melt:4564:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.MDOC__V19*/ meltfptr[18]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{pattern macro description:} "; /*_.MAKEDOC_OUTDOC__V22*/ meltfptr[20] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4565:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4543:/ clear"); /*clear*/ /*_.SEXPMAC_MNAME__V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MNAM__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.MLOC__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.MDOC__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V22*/ meltfptr[20] = 0 ; if (/*_#PMACIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4537:/ clear"); /*clear*/ /*_.PATMAC__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_#PMACIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4527:/ clear"); /*clear*/ /*_.PATMACLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.UNSORTEDPATMACTUPLE__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDPATMACTUPLE__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4519:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENPATMACRO", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_146_warmelt_outobj_MAKEDOC_GENPATMACRO*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_147_warmelt_outobj_MAKEDOC_GENCLASS(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_147_warmelt_outobj_MAKEDOC_GENCLASS_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 33 void* varptr[33]; #define MELTFRAM_NBVARNUM 12 long varnum[12]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<33; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 33; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENCLASS", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4574:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4575:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4575:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4575:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4575)?(4575):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4575:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4576:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4576:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4576:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4576)?(4576):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4576:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4577:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT classes"));} ; { MELT_LOCATION("warmelt-outobj.melt:4578:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4579:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT classes"));} ; { MELT_LOCATION("warmelt-outobj.melt:4580:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4581:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4582:/ quasiblock"); /*_.QUOTEDONE__V8*/ meltfptr[6] = (/*!konst_1*/ meltfrout->tabval[1]);; /*^compute*/ /*_.QUOTEDZERO__V9*/ meltfptr[8] = (/*!konst_2*/ meltfrout->tabval[2]);; /*^compute*/ /*_.QUOTEDMINUSONE__V10*/ meltfptr[9] = (/*!konst_3*/ meltfrout->tabval[3]);; MELT_LOCATION("warmelt-outobj.melt:4588:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 7, "MKDOC_CLASSES");/*_.MKDOC_CLASSES__V11*/ meltfptr[10] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_CLASSES__V11*/ meltfptr[10] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4590:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V13*/ meltfptr[12] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_8*/ meltfrout->tabval[8])), (0)); ; /*_.LAMBDA___V12*/ meltfptr[11] = /*_.LAMBDA___V13*/ meltfptr[12];; MELT_LOCATION("warmelt-outobj.melt:4587:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[5]); /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V12*/ meltfptr[11]; /*_.UNSORTEDCLASSESTUPLE__V14*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.MKDOC_CLASSES__V11*/ meltfptr[10]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4595:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V16*/ meltfptr[15] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_10*/ meltfrout->tabval[10])), (3)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V16*/ meltfptr[15])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V16*/ meltfptr[15]))); ((meltclosure_ptr_t)/*_.LAMBDA___V16*/ meltfptr[15])->tabval[0] = (melt_ptr_t)(/*_.QUOTEDZERO__V9*/ meltfptr[8]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V16*/ meltfptr[15])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 1>= 0 && 1< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V16*/ meltfptr[15]))); ((meltclosure_ptr_t)/*_.LAMBDA___V16*/ meltfptr[15])->tabval[1] = (melt_ptr_t)(/*_.QUOTEDMINUSONE__V10*/ meltfptr[9]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V16*/ meltfptr[15])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 2>= 0 && 2< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V16*/ meltfptr[15]))); ((meltclosure_ptr_t)/*_.LAMBDA___V16*/ meltfptr[15])->tabval[2] = (melt_ptr_t)(/*_.QUOTEDONE__V8*/ meltfptr[6]); ; /*_.CMPCLASSDEPTHNAME__V15*/ meltfptr[14] = /*_.LAMBDA___V16*/ meltfptr[15];; MELT_LOCATION("warmelt-outobj.melt:4625:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V18*/ meltfptr[17] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_12*/ meltfrout->tabval[12])), (3)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V18*/ meltfptr[17])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V18*/ meltfptr[17]))); ((meltclosure_ptr_t)/*_.LAMBDA___V18*/ meltfptr[17])->tabval[0] = (melt_ptr_t)(/*_.QUOTEDZERO__V9*/ meltfptr[8]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V18*/ meltfptr[17])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 1>= 0 && 1< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V18*/ meltfptr[17]))); ((meltclosure_ptr_t)/*_.LAMBDA___V18*/ meltfptr[17])->tabval[1] = (melt_ptr_t)(/*_.QUOTEDMINUSONE__V10*/ meltfptr[9]); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V18*/ meltfptr[17])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 2>= 0 && 2< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V18*/ meltfptr[17]))); ((meltclosure_ptr_t)/*_.LAMBDA___V18*/ meltfptr[17])->tabval[2] = (melt_ptr_t)(/*_.QUOTEDONE__V8*/ meltfptr[6]); ; /*_.CMPCLASSNAME__V17*/ meltfptr[16] = /*_.LAMBDA___V18*/ meltfptr[17];; /*^compute*/ /*_.DEPTHSORTEDCLASSESTUPLE__V19*/ meltfptr[18] = meltgc_sort_multiple((melt_ptr_t)(/*_.UNSORTEDCLASSESTUPLE__V14*/ meltfptr[13]), (melt_ptr_t)(/*_.CMPCLASSDEPTHNAME__V15*/ meltfptr[14]), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[5])));; MELT_LOCATION("warmelt-outobj.melt:4648:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V21*/ meltfptr[20] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_16*/ meltfrout->tabval[16])), (0)); ; /*_.CMPCLASSDEF__V20*/ meltfptr[19] = /*_.LAMBDA___V21*/ meltfptr[20];; MELT_LOCATION("warmelt-outobj.melt:4655:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 7, "MKDOC_CLASSES");/*_.MKDOC_CLASSES__V22*/ meltfptr[21] = slot; }; ; } else {/*^cond.else*/ /*_.MKDOC_CLASSES__V22*/ meltfptr[21] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4655:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[5]); /*_.LIST_TO_MULTIPLE__V23*/ meltfptr[22] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.MKDOC_CLASSES__V22*/ meltfptr[21]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.ALPHASORTEDCLASSDEFTUPLE__V24*/ meltfptr[23] = meltgc_sort_multiple((melt_ptr_t)(/*_.LIST_TO_MULTIPLE__V23*/ meltfptr[22]), (melt_ptr_t)(/*_.CMPCLASSDEF__V20*/ meltfptr[19]), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[5])));; /*^compute*/ /*_#DEPTHIX__L3*/ meltfnum[0] = -1;; /*^compute*/ /*_#PREVCLAIX__L4*/ meltfnum[3] = -1;; { MELT_LOCATION("warmelt-outobj.melt:4662:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "Table of classes sorted by inheritance depth."));} ; { MELT_LOCATION("warmelt-outobj.melt:4663:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4664:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@table @strong"));} ; { MELT_LOCATION("warmelt-outobj.melt:4665:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.DEPTHSORTEDCLASSESTUPLE__V19*/ meltfptr[18]); for (/*_#CLAIX__L5*/ meltfnum[4] = 0; (/*_#CLAIX__L5*/ meltfnum[4] >= 0) && (/*_#CLAIX__L5*/ meltfnum[4] < cit1__EACHTUP_ln); /*_#CLAIX__L5*/ meltfnum[4]++) { /*_.CURCLA__V25*/ meltfptr[24] = melt_multiple_nth((melt_ptr_t)(/*_.DEPTHSORTEDCLASSESTUPLE__V19*/ meltfptr[18]), /*_#CLAIX__L5*/ meltfnum[4]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4669:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L6*/ meltfnum[5] = melt_is_instance_of((melt_ptr_t)(/*_.CURCLA__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[17])));; MELT_LOCATION("warmelt-outobj.melt:4669:/ cond"); /*cond*/ if (/*_#IS_A__L6*/ meltfnum[5]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V27*/ meltfptr[26] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4669:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curcla"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4669)?(4669):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V27*/ meltfptr[26] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V26*/ meltfptr[25] = /*_.IFELSE___V27*/ meltfptr[26];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4669:/ clear"); /*clear*/ /*_#IS_A__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V27*/ meltfptr[26] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V26*/ meltfptr[25] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4670:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCLA__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[17])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCLA__V25*/ meltfptr[24]), 5, "CLASS_ANCESTORS");/*_.CLASS_ANCESTORS__V28*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.CLASS_ANCESTORS__V28*/ meltfptr[26] = NULL;; } ; /*^compute*/ /*_#NBANC__L7*/ meltfnum[5] = (melt_multiple_length((melt_ptr_t)(/*_.CLASS_ANCESTORS__V28*/ meltfptr[26])));; /*^compute*/ /*_#I__L8*/ meltfnum[7] = ((/*_#DEPTHIX__L3*/ meltfnum[0]) < (/*_#NBANC__L7*/ meltfnum[5]));; MELT_LOCATION("warmelt-outobj.melt:4671:/ cond"); /*cond*/ if (/*_#I__L8*/ meltfnum[7]) /*then*/ { /*^cond.then*/ /*^block*/ /*anyblock*/{ MELT_LOCATION("warmelt-outobj.melt:4673:/ compute"); /*_#DEPTHIX__L3*/ meltfnum[0] = /*_#SETQ___L9*/ meltfnum[8] = /*_#NBANC__L7*/ meltfnum[5];; MELT_LOCATION("warmelt-outobj.melt:4674:/ compute"); /*_#PREVCLAIX__L4*/ meltfnum[3] = /*_#SETQ___L10*/ meltfnum[9] = /*_#CLAIX__L5*/ meltfnum[4];; { MELT_LOCATION("warmelt-outobj.melt:4675:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4676:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@item "));} ; { MELT_LOCATION("warmelt-outobj.melt:4677:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#DEPTHIX__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4678:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( ": "));} ; { MELT_LOCATION("warmelt-outobj.melt:4679:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4672:/ quasiblock"); /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4671:/ clear"); /*clear*/ /*_#SETQ___L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_#SETQ___L10*/ meltfnum[9] = 0 ;} ; } else {/*^cond.else*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:4680:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( ","));} ; /*epilog*/ } ; } ; { MELT_LOCATION("warmelt-outobj.melt:4682:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " @code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4683:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCLA__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[18])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCLA__V25*/ meltfptr[24]), 1, "NAMED_NAME");/*_.NAMED_NAME__V29*/ meltfptr[28] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V29*/ meltfptr[28] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4683:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V29*/ meltfptr[28])));} ; { MELT_LOCATION("warmelt-outobj.melt:4684:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; MELT_LOCATION("warmelt-outobj.melt:4670:/ clear"); /*clear*/ /*_.CLASS_ANCESTORS__V28*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_#NBANC__L7*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_#I__L8*/ meltfnum[7] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V29*/ meltfptr[28] = 0 ; if (/*_#CLAIX__L5*/ meltfnum[4]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4666:/ clear"); /*clear*/ /*_.CURCLA__V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_#CLAIX__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V26*/ meltfptr[25] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; { MELT_LOCATION("warmelt-outobj.melt:4687:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4688:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@end table"));} ; { MELT_LOCATION("warmelt-outobj.melt:4689:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit2__EACHTUP: */ long cit2__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.ALPHASORTEDCLASSDEFTUPLE__V24*/ meltfptr[23]); for (/*_#CLAIX__L11*/ meltfnum[8] = 0; (/*_#CLAIX__L11*/ meltfnum[8] >= 0) && (/*_#CLAIX__L11*/ meltfnum[8] < cit2__EACHTUP_ln); /*_#CLAIX__L11*/ meltfnum[8]++) { /*_.CURCLADEF__V30*/ meltfptr[26] = melt_multiple_nth((melt_ptr_t)(/*_.ALPHASORTEDCLASSDEFTUPLE__V24*/ meltfptr[23]), /*_#CLAIX__L11*/ meltfnum[8]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4693:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L12*/ meltfnum[9] = melt_is_instance_of((melt_ptr_t)(/*_.CURCLADEF__V30*/ meltfptr[26]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[19])));; MELT_LOCATION("warmelt-outobj.melt:4693:/ cond"); /*cond*/ if (/*_#IS_A__L12*/ meltfnum[9]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V32*/ meltfptr[31] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4693:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curcladef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4693)?(4693):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V32*/ meltfptr[31] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V31*/ meltfptr[28] = /*_.IFELSE___V32*/ meltfptr[31];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4693:/ clear"); /*clear*/ /*_#IS_A__L12*/ meltfnum[9] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V32*/ meltfptr[31] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V31*/ meltfptr[28] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4694:/ apply"); /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V3*/ meltfptr[2]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURCLADEF__V30*/ meltfptr[26]; /*^apply.arg*/ argtab[2].bp_long = /*_#CLAIX__L11*/ meltfnum[8]; /*_.MAKEDOC_OUTCLASSDEF__V33*/ meltfptr[31] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTCLASSDEF*/ meltfrout->tabval[20])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; if (/*_#CLAIX__L11*/ meltfnum[8]<0) break; } /* end cit2__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4690:/ clear"); /*clear*/ /*_.CURCLADEF__V30*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_#CLAIX__L11*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V31*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTCLASSDEF__V33*/ meltfptr[31] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4582:/ clear"); /*clear*/ /*_.QUOTEDONE__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.QUOTEDZERO__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.QUOTEDMINUSONE__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_CLASSES__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.UNSORTEDCLASSESTUPLE__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.CMPCLASSDEPTHNAME__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.CMPCLASSNAME__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.DEPTHSORTEDCLASSESTUPLE__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.CMPCLASSDEF__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MKDOC_CLASSES__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_TO_MULTIPLE__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.ALPHASORTEDCLASSDEFTUPLE__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_#DEPTHIX__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#PREVCLAIX__L4*/ meltfnum[3] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4574:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENCLASS", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_147_warmelt_outobj_MAKEDOC_GENCLASS*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_148_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_148_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 6 void* varptr[6]; #define MELTFRAM_NBVARNUM 1 long varnum[1]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<6; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 6; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4590:/ getarg"); /*_.CLDEF__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4591:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CLDEF__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4591:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V4*/ meltfptr[3] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4591:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cldef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4591)?(4591):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V3*/ meltfptr[2] = /*_.IFELSE___V4*/ meltfptr[3];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4591:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V4*/ meltfptr[3] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V3*/ meltfptr[2] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4592:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CLDEF__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CLDEF__V2*/ meltfptr[1]), 5, "SCLASS_CLABIND");/*_.SCLASS_CLABIND__V5*/ meltfptr[3] = slot; }; ; } else {/*^cond.else*/ /*_.SCLASS_CLABIND__V5*/ meltfptr[3] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4592:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SCLASS_CLABIND__V5*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_CLASS_BINDING*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SCLASS_CLABIND__V5*/ meltfptr[3]), 3, "CBIND_CLASS");/*_.CBIND_CLASS__V6*/ meltfptr[5] = slot; }; ; } else {/*^cond.else*/ /*_.CBIND_CLASS__V6*/ meltfptr[5] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4590:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.CBIND_CLASS__V6*/ meltfptr[5];; MELT_LOCATION("warmelt-outobj.melt:4590:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V3*/ meltfptr[2] = 0 ; /*^clear*/ /*clear*/ /*_.SCLASS_CLABIND__V5*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.CBIND_CLASS__V6*/ meltfptr[5] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_148_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_149_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_149_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 20 void* varptr[20]; #define MELTFRAM_NBVARNUM 9 long varnum[9]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<20; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 20; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4595:/ getarg"); /*_.CL0__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.CL1__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4596:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CL0__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4596:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4596:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cl0"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4596)?(4596):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4596:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4597:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4597:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4597:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cl1"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4597)?(4597):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4597:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4598:/ quasiblock"); /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL0__V2*/ meltfptr[1]), 5, "CLASS_ANCESTORS");/*_.CL0ANC__V9*/ meltfptr[8] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4599:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2]), 5, "CLASS_ANCESTORS");/*_.CL1ANC__V10*/ meltfptr[9] = slot; }; ; /*_#NBCL0ANC__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.CL0ANC__V9*/ meltfptr[8])));; /*^compute*/ /*_#NBCL1ANC__L4*/ meltfnum[3] = (melt_multiple_length((melt_ptr_t)(/*_.CL1ANC__V10*/ meltfptr[9])));; MELT_LOCATION("warmelt-outobj.melt:4602:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL0__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.CL0NAM__V11*/ meltfptr[10] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4603:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2]), 1, "NAMED_NAME");/*_.CL1NAM__V12*/ meltfptr[11] = slot; }; ; /*_#__L5*/ meltfnum[4] = ((/*_.CL0__V2*/ meltfptr[1]) == (/*_.CL1__V3*/ meltfptr[2]));; MELT_LOCATION("warmelt-outobj.melt:4606:/ cond"); /*cond*/ if (/*_#__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[12] = (/*~QUOTEDZERO*/ meltfclos->tabval[0]);; } else {MELT_LOCATION("warmelt-outobj.melt:4606:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#I__L6*/ meltfnum[5] = ((/*_#NBCL0ANC__L3*/ meltfnum[0]) < (/*_#NBCL1ANC__L4*/ meltfnum[3]));; MELT_LOCATION("warmelt-outobj.melt:4608:/ cond"); /*cond*/ if (/*_#I__L6*/ meltfnum[5]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V14*/ meltfptr[13] = (/*~QUOTEDMINUSONE*/ meltfclos->tabval[1]);; } else {MELT_LOCATION("warmelt-outobj.melt:4608:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#I__L7*/ meltfnum[6] = ((/*_#NBCL0ANC__L3*/ meltfnum[0]) > (/*_#NBCL1ANC__L4*/ meltfnum[3]));; MELT_LOCATION("warmelt-outobj.melt:4610:/ cond"); /*cond*/ if (/*_#I__L7*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V15*/ meltfptr[14] = (/*~QUOTEDONE*/ meltfclos->tabval[2]);; } else {MELT_LOCATION("warmelt-outobj.melt:4610:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#STRING___L8*/ meltfnum[7] = melt_string_less((melt_ptr_t)(/*_.CL0NAM__V11*/ meltfptr[10]), (melt_ptr_t)(/*_.CL1NAM__V12*/ meltfptr[11]));; MELT_LOCATION("warmelt-outobj.melt:4612:/ cond"); /*cond*/ if (/*_#STRING___L8*/ meltfnum[7]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V16*/ meltfptr[15] = (/*~QUOTEDMINUSONE*/ meltfclos->tabval[1]);; } else {MELT_LOCATION("warmelt-outobj.melt:4612:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#STRING___L9*/ meltfnum[8] = melt_string_less((melt_ptr_t)(/*_.CL1NAM__V12*/ meltfptr[11]), (melt_ptr_t)(/*_.CL0NAM__V11*/ meltfptr[10]));; MELT_LOCATION("warmelt-outobj.melt:4614:/ cond"); /*cond*/ if (/*_#STRING___L9*/ meltfnum[8]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V17*/ meltfptr[16] = (/*~QUOTEDONE*/ meltfclos->tabval[2]);; } else {MELT_LOCATION("warmelt-outobj.melt:4614:/ cond.else"); /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4618:/ cppif.then"); /*^block*/ /*anyblock*/{ /*^cond*/ /*cond*/ if ((/*nil*/NULL)) /*then*/ { /*^cond.then*/ /*_.IFELSE___V19*/ meltfptr[18] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4618:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "cmpclassdepthname same name different classes!"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4618)?(4618):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V18*/ meltfptr[17] = /*_.IFELSE___V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4618:/ clear"); /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V18*/ meltfptr[17] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4616:/ quasiblock"); /*_.PROGN___V20*/ meltfptr[18] = (/*nil*/NULL);; /*^compute*/ /*_.IFELSE___V17*/ meltfptr[16] = /*_.PROGN___V20*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4614:/ clear"); /*clear*/ /*_.IFCPP___V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V20*/ meltfptr[18] = 0 ;} ; } ; /*_.IFELSE___V16*/ meltfptr[15] = /*_.IFELSE___V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4612:/ clear"); /*clear*/ /*_#STRING___L9*/ meltfnum[8] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V17*/ meltfptr[16] = 0 ;} ; } ; /*_.IFELSE___V15*/ meltfptr[14] = /*_.IFELSE___V16*/ meltfptr[15];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4610:/ clear"); /*clear*/ /*_#STRING___L8*/ meltfnum[7] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V16*/ meltfptr[15] = 0 ;} ; } ; /*_.IFELSE___V14*/ meltfptr[13] = /*_.IFELSE___V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4608:/ clear"); /*clear*/ /*_#I__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ;} ; } ; /*_.IFELSE___V13*/ meltfptr[12] = /*_.IFELSE___V14*/ meltfptr[13];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4606:/ clear"); /*clear*/ /*_#I__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V14*/ meltfptr[13] = 0 ;} ; } ; /*_.LET___V8*/ meltfptr[6] = /*_.IFELSE___V13*/ meltfptr[12];; MELT_LOCATION("warmelt-outobj.melt:4598:/ clear"); /*clear*/ /*_.CL0ANC__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.CL1ANC__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#NBCL0ANC__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_#NBCL1ANC__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.CL0NAM__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.CL1NAM__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_#__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ; MELT_LOCATION("warmelt-outobj.melt:4595:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V8*/ meltfptr[6];; MELT_LOCATION("warmelt-outobj.melt:4595:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V8*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_149_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_150_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_150_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 16 void* varptr[16]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<16; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 16; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4625:/ getarg"); /*_.CL0__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.CL1__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4626:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CL0__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4626:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4626:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cl0"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4626)?(4626):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4626:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4627:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_CLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4627:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4627:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cl1"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4627)?(4627):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4627:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4628:/ quasiblock"); /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL0__V2*/ meltfptr[1]), 1, "NAMED_NAME");/*_.CL0NAM__V9*/ meltfptr[8] = slot; }; ; MELT_LOCATION("warmelt-outobj.melt:4629:/ getslot"); { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CL1__V3*/ meltfptr[2]), 1, "NAMED_NAME");/*_.CL1NAM__V10*/ meltfptr[9] = slot; }; ; /*_#__L3*/ meltfnum[0] = ((/*_.CL0__V2*/ meltfptr[1]) == (/*_.CL1__V3*/ meltfptr[2]));; MELT_LOCATION("warmelt-outobj.melt:4632:/ cond"); /*cond*/ if (/*_#__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V11*/ meltfptr[10] = (/*~QUOTEDZERO*/ meltfclos->tabval[0]);; } else {MELT_LOCATION("warmelt-outobj.melt:4632:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#STRING___L4*/ meltfnum[3] = melt_string_less((melt_ptr_t)(/*_.CL0NAM__V9*/ meltfptr[8]), (melt_ptr_t)(/*_.CL1NAM__V10*/ meltfptr[9]));; MELT_LOCATION("warmelt-outobj.melt:4634:/ cond"); /*cond*/ if (/*_#STRING___L4*/ meltfnum[3]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V12*/ meltfptr[11] = (/*~QUOTEDMINUSONE*/ meltfclos->tabval[1]);; } else {MELT_LOCATION("warmelt-outobj.melt:4634:/ cond.else"); /*^block*/ /*anyblock*/{ /*_#STRING___L5*/ meltfnum[4] = melt_string_less((melt_ptr_t)(/*_.CL1NAM__V10*/ meltfptr[9]), (melt_ptr_t)(/*_.CL0NAM__V9*/ meltfptr[8]));; MELT_LOCATION("warmelt-outobj.melt:4636:/ cond"); /*cond*/ if (/*_#STRING___L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[12] = (/*~QUOTEDONE*/ meltfclos->tabval[2]);; } else {MELT_LOCATION("warmelt-outobj.melt:4636:/ cond.else"); /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4640:/ cppif.then"); /*^block*/ /*anyblock*/{ /*^cond*/ /*cond*/ if ((/*nil*/NULL)) /*then*/ { /*^cond.then*/ /*_.IFELSE___V15*/ meltfptr[14] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4640:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "cmpclassname same name different classes!"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4640)?(4640):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V14*/ meltfptr[13] = /*_.IFELSE___V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4640:/ clear"); /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[13] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4638:/ quasiblock"); /*_.PROGN___V16*/ meltfptr[14] = (/*nil*/NULL);; /*^compute*/ /*_.IFELSE___V13*/ meltfptr[12] = /*_.PROGN___V16*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4636:/ clear"); /*clear*/ /*_.IFCPP___V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.PROGN___V16*/ meltfptr[14] = 0 ;} ; } ; /*_.IFELSE___V12*/ meltfptr[11] = /*_.IFELSE___V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4634:/ clear"); /*clear*/ /*_#STRING___L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ;} ; } ; /*_.IFELSE___V11*/ meltfptr[10] = /*_.IFELSE___V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4632:/ clear"); /*clear*/ /*_#STRING___L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V12*/ meltfptr[11] = 0 ;} ; } ; /*_.LET___V8*/ meltfptr[6] = /*_.IFELSE___V11*/ meltfptr[10];; MELT_LOCATION("warmelt-outobj.melt:4628:/ clear"); /*clear*/ /*_.CL0NAM__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.CL1NAM__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V11*/ meltfptr[10] = 0 ; MELT_LOCATION("warmelt-outobj.melt:4625:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V8*/ meltfptr[6];; MELT_LOCATION("warmelt-outobj.melt:4625:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V8*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_150_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_151_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_151_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 10 void* varptr[10]; #define MELTFRAM_NBVARNUM 2 long varnum[2]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<10; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 10; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4648:/ getarg"); /*_.CDF0__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.CDF1__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.CDF1__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4649:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CDF0__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4649:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4649:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cdf0"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4649)?(4649):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4649:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4650:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.CDF1__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCLASS*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4650:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4650:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check cdf1"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4650)?(4650):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4650:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4651:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CDF0__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CDF0__V2*/ meltfptr[1]), 2, "SDEF_NAME");/*_.SDEF_NAME__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.SDEF_NAME__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4651:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CDF1__V3*/ meltfptr[2]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CDF1__V3*/ meltfptr[2]), 2, "SDEF_NAME");/*_.SDEF_NAME__V9*/ meltfptr[8] = slot; }; ; } else {/*^cond.else*/ /*_.SDEF_NAME__V9*/ meltfptr[8] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4651:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.SDEF_NAME__V9*/ meltfptr[8]; /*_.COMPARE_NAMED_ALPHA__V10*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.SDEF_NAME__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4648:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.COMPARE_NAMED_ALPHA__V10*/ meltfptr[9];; MELT_LOCATION("warmelt-outobj.melt:4648:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.SDEF_NAME__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.COMPARE_NAMED_ALPHA__V10*/ meltfptr[9] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_151_warmelt_outobj_LAMBDA_*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_152_warmelt_outobj_MAKEDOC_OUTPRIMITIVEDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_152_warmelt_outobj_MAKEDOC_OUTPRIMITIVEDEF_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 21 void* varptr[21]; #define MELTFRAM_NBVARNUM 4 long varnum[4]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<21; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 21; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTPRIMITIVEDEF", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4701:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.PRIMDEF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_LONG) goto lab_endgetargs; /*_#PRIMIX__L1*/ meltfnum[0] = xargtab_[2].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4702:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4702:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4702:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4702)?(4702):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4702:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4703:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L3*/ meltfnum[1] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4703:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L3*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4703:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4703)?(4703):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4703:/ clear"); /*clear*/ /*_#IS_STRBUF__L3*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4704:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L4*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFPRIMITIVE*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4704:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V10*/ meltfptr[9] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4704:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check primdef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4704)?(4704):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V9*/ meltfptr[7] = /*_.IFELSE___V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4704:/ clear"); /*clear*/ /*_#IS_A__L4*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4705:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), 2, "SDEF_NAME");/*_.PNAM__V11*/ meltfptr[9] = slot; }; ; } else {/*^cond.else*/ /*_.PNAM__V11*/ meltfptr[9] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4706:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION_FORMAL*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), 4, "SFORMAL_ARGS");/*_.ARGS__V12*/ meltfptr[11] = slot; }; ; } else {/*^cond.else*/ /*_.ARGS__V12*/ meltfptr[11] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4707:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFPRIMITIVE*/ meltfrout->tabval[1])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), 5, "SPRIM_TYPE");/*_.TYPE__V13*/ meltfptr[12] = slot; }; ; } else {/*^cond.else*/ /*_.TYPE__V13*/ meltfptr[12] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4708:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PRIMDEF__V4*/ meltfptr[3]), 3, "SDEF_DOC");/*_.DOC__V14*/ meltfptr[13] = slot; }; ; } else {/*^cond.else*/ /*_.DOC__V14*/ meltfptr[13] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4710:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4711:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4712:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PNAM__V11*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PNAM__V11*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V15*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V15*/ meltfptr[14] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4712:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V15*/ meltfptr[14])));} ; { MELT_LOCATION("warmelt-outobj.melt:4713:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4714:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4715:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4716:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.PNAM__V11*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.PNAM__V11*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V16*/ meltfptr[15] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V16*/ meltfptr[15] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4716:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V16*/ meltfptr[15])));} ; { MELT_LOCATION("warmelt-outobj.melt:4717:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4718:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.PRIMDEF__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_cstring = "Primitive defined at "; /*_.MAKEDOC_OUTDEFLOC__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDEFLOC*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4719:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4720:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@strong{result type:} @code{"));} ; MELT_LOCATION("warmelt-outobj.melt:4721:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.TYPE__V13*/ meltfptr[12]), (melt_ptr_t)((/*!CLASS_CTYPE*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.TYPE__V13*/ meltfptr[12]), 2, "CTYPE_KEYWORD");/*_.CTYPE_KEYWORD__V18*/ meltfptr[17] = slot; }; ; } else {/*^cond.else*/ /*_.CTYPE_KEYWORD__V18*/ meltfptr[17] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4721:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CTYPE_KEYWORD__V18*/ meltfptr[17]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CTYPE_KEYWORD__V18*/ meltfptr[17]), 1, "NAMED_NAME");/*_.NAMED_NAME__V19*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V19*/ meltfptr[18] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4721:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V19*/ meltfptr[18])));} ; { MELT_LOCATION("warmelt-outobj.melt:4722:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4723:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4724:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.ARGS__V12*/ meltfptr[11]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{primitive formals:}"; /*_.MAKEDOC_OUTFORMALS__V20*/ meltfptr[19] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4726:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DOC__V14*/ meltfptr[13]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{primitive description:} "; /*_.MAKEDOC_OUTDOC__V21*/ meltfptr[20] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[8])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4727:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4705:/ clear"); /*clear*/ /*_.PNAM__V11*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.ARGS__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.TYPE__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.DOC__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDEFLOC__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.CTYPE_KEYWORD__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V21*/ meltfptr[20] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4701:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTPRIMITIVEDEF", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_152_warmelt_outobj_MAKEDOC_OUTPRIMITIVEDEF*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_153_warmelt_outobj_MAKEDOC_GENPRIMITIVE(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_153_warmelt_outobj_MAKEDOC_GENPRIMITIVE_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 14 void* varptr[14]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<14; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 14; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENPRIMITIVE", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4731:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4732:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4732:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4732:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4732)?(4732):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4732:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4733:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4733:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4733:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4733)?(4733):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4733:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4734:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT primitives"));} ; { MELT_LOCATION("warmelt-outobj.melt:4735:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4736:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT primitives"));} ; { MELT_LOCATION("warmelt-outobj.melt:4737:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4738:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4739:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 1, "MKDOC_PRIMITIVES");/*_.RAWPRIMLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.RAWPRIMLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4740:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.RAWPRIMTUP__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.RAWPRIMLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDPRIMTUP__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWPRIMTUP__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; { MELT_LOCATION("warmelt-outobj.melt:4743:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDPRIMTUP__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4744:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4745:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " primitives."));} ; { MELT_LOCATION("warmelt-outobj.melt:4746:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDPRIMTUP__V10*/ meltfptr[9]); for (/*_#PRIMIX__L4*/ meltfnum[3] = 0; (/*_#PRIMIX__L4*/ meltfnum[3] >= 0) && (/*_#PRIMIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#PRIMIX__L4*/ meltfnum[3]++) { /*_.CURPRIMDEF__V11*/ meltfptr[10] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDPRIMTUP__V10*/ meltfptr[9]), /*_#PRIMIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4750:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L5*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.CURPRIMDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFPRIMITIVE*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:4750:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[12] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4750:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curprim"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4750)?(4750):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V12*/ meltfptr[11] = /*_.IFELSE___V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4750:/ clear"); /*clear*/ /*_#IS_A__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4751:/ apply"); /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V3*/ meltfptr[2]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURPRIMDEF__V11*/ meltfptr[10]; /*^apply.arg*/ argtab[2].bp_long = /*_#PRIMIX__L4*/ meltfnum[3]; /*_.MAKEDOC_OUTPRIMITIVEDEF__V14*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTPRIMITIVEDEF*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4752:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; if (/*_#PRIMIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4747:/ clear"); /*clear*/ /*_.CURPRIMDEF__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_#PRIMIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTPRIMITIVEDEF__V14*/ meltfptr[12] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4739:/ clear"); /*clear*/ /*_.RAWPRIMLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.RAWPRIMTUP__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDPRIMTUP__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4731:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENPRIMITIVE", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_153_warmelt_outobj_MAKEDOC_GENPRIMITIVE*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_154_warmelt_outobj_MAKEDOC_OUTFUNCTIONDEF(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_154_warmelt_outobj_MAKEDOC_OUTFUNCTIONDEF_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 18 void* varptr[18]; #define MELTFRAM_NBVARNUM 4 long varnum[4]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<18; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 18; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_OUTFUNCTIONDEF", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4760:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); /*getarg#2*/ /*^getarg*/ if (xargdescr_[1] != BPAR_PTR) goto lab_endgetargs; /*_.FUNDEF__V4*/ meltfptr[3] = (xargtab_[1].bp_aptr) ? (*(xargtab_[1].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3])) != NULL); /*getarg#3*/ /*^getarg*/ if (xargdescr_[2] != BPAR_LONG) goto lab_endgetargs; /*_#PRIMIX__L1*/ meltfnum[0] = xargtab_[2].bp_long; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4761:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4761:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4761:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4761)?(4761):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4761:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4762:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L3*/ meltfnum[1] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4762:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L3*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4762:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4762)?(4762):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4762:/ clear"); /*clear*/ /*_#IS_STRBUF__L3*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4763:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L4*/ meltfnum[1] = melt_is_instance_of((melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFUN*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4763:/ cond"); /*cond*/ if (/*_#IS_A__L4*/ meltfnum[1]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V10*/ meltfptr[9] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4763:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check fundef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4763)?(4763):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V9*/ meltfptr[7] = /*_.IFELSE___V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4763:/ clear"); /*clear*/ /*_#IS_A__L4*/ meltfnum[1] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4764:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), 2, "SDEF_NAME");/*_.FNAM__V11*/ meltfptr[9] = slot; }; ; } else {/*^cond.else*/ /*_.FNAM__V11*/ meltfptr[9] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4765:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION_FORMAL*/ meltfrout->tabval[3])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), 4, "SFORMAL_ARGS");/*_.ARGS__V12*/ meltfptr[11] = slot; }; ; } else {/*^cond.else*/ /*_.ARGS__V12*/ meltfptr[11] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4766:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[2])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FUNDEF__V4*/ meltfptr[3]), 3, "SDEF_DOC");/*_.DOC__V13*/ meltfptr[12] = slot; }; ; } else {/*^cond.else*/ /*_.DOC__V13*/ meltfptr[12] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4768:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4769:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4770:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FNAM__V11*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FNAM__V11*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V14*/ meltfptr[13] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V14*/ meltfptr[13] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4770:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V14*/ meltfptr[13])));} ; { MELT_LOCATION("warmelt-outobj.melt:4771:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4772:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4773:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4774:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FNAM__V11*/ meltfptr[9]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[4])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FNAM__V11*/ meltfptr[9]), 1, "NAMED_NAME");/*_.NAMED_NAME__V15*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V15*/ meltfptr[14] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4774:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V15*/ meltfptr[14])));} ; { MELT_LOCATION("warmelt-outobj.melt:4775:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4776:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.FUNDEF__V4*/ meltfptr[3]; /*^apply.arg*/ argtab[1].bp_cstring = "Function defined at "; /*_.MAKEDOC_OUTDEFLOC__V16*/ meltfptr[15] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDEFLOC*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4777:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4778:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.ARGS__V12*/ meltfptr[11]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{Function formals:}"; /*_.MAKEDOC_OUTFORMALS__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4780:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.DOC__V13*/ meltfptr[12]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{Function description:} "; /*_.MAKEDOC_OUTDOC__V18*/ meltfptr[17] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4781:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4764:/ clear"); /*clear*/ /*_.FNAM__V11*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.ARGS__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.DOC__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDEFLOC__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V18*/ meltfptr[17] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4760:/ clear"); /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_OUTFUNCTIONDEF", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_154_warmelt_outobj_MAKEDOC_OUTFUNCTIONDEF*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_155_warmelt_outobj_MAKEDOC_GENFUNCTION(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_155_warmelt_outobj_MAKEDOC_GENFUNCTION_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 14 void* varptr[14]; #define MELTFRAM_NBVARNUM 5 long varnum[5]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<14; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 14; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENFUNCTION", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4785:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4786:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4786:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4786:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4786)?(4786):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4786:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4787:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4787:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4787:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4787)?(4787):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4787:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4788:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT functions"));} ; { MELT_LOCATION("warmelt-outobj.melt:4789:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4790:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT functions"));} ; { MELT_LOCATION("warmelt-outobj.melt:4791:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4792:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4793:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 2, "MKDOC_FUNCTIONS");/*_.RAWFUNLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.RAWFUNLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4794:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.RAWFUNTUP__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.RAWFUNLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDFUNTUP__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWFUNTUP__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; { MELT_LOCATION("warmelt-outobj.melt:4797:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDFUNTUP__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4798:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4799:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " functions."));} ; { MELT_LOCATION("warmelt-outobj.melt:4800:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDFUNTUP__V10*/ meltfptr[9]); for (/*_#FUNIX__L4*/ meltfnum[3] = 0; (/*_#FUNIX__L4*/ meltfnum[3] >= 0) && (/*_#FUNIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#FUNIX__L4*/ meltfnum[3]++) { /*_.CURFUNDEF__V11*/ meltfptr[10] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDFUNTUP__V10*/ meltfptr[9]), /*_#FUNIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4804:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L5*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.CURFUNDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFUN*/ meltfrout->tabval[4])));; MELT_LOCATION("warmelt-outobj.melt:4804:/ cond"); /*cond*/ if (/*_#IS_A__L5*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V13*/ meltfptr[12] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4804:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curfun"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4804)?(4804):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V12*/ meltfptr[11] = /*_.IFELSE___V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4804:/ clear"); /*clear*/ /*_#IS_A__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4805:/ apply"); /*apply*/{ union meltparam_un argtab[3]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V3*/ meltfptr[2]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.CURFUNDEF__V11*/ meltfptr[10]; /*^apply.arg*/ argtab[2].bp_long = /*_#FUNIX__L4*/ meltfnum[3]; /*_.MAKEDOC_OUTFUNCTIONDEF__V14*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFUNCTIONDEF*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR BPARSTR_PTR BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4806:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; if (/*_#FUNIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4801:/ clear"); /*clear*/ /*_.CURFUNDEF__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_#FUNIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFUNCTIONDEF__V14*/ meltfptr[12] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4793:/ clear"); /*clear*/ /*_.RAWFUNLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.RAWFUNTUP__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDFUNTUP__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4785:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENFUNCTION", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_155_warmelt_outobj_MAKEDOC_GENFUNCTION*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_156_warmelt_outobj_MAKEDOC_GENCITERATOR(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_156_warmelt_outobj_MAKEDOC_GENCITERATOR_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 34 void* varptr[34]; #define MELTFRAM_NBVARNUM 9 long varnum[9]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<34; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 34; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENCITERATOR", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4814:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4815:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4815:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4815:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4815)?(4815):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4815:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4816:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4816:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4816:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4816)?(4816):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4816:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4817:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT c-iterators"));} ; { MELT_LOCATION("warmelt-outobj.melt:4818:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4819:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT c-iterators"));} ; { MELT_LOCATION("warmelt-outobj.melt:4820:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4821:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4822:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 3, "MKDOC_CITERATORS");/*_.RAWCITERLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.RAWCITERLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4823:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.RAWCITERTUP__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.RAWCITERLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDCITERTUP__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWCITERTUP__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4826:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4826:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genciterator rawciterlist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4826; /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.RAWCITERLIST__V8*/ meltfptr[6]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V11*/ meltfptr[10] = /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4826:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V12*/ meltfptr[11] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V11*/ meltfptr[10] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4827:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4827:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genciterator sortedcitertup"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4827; /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.SORTEDCITERTUP__V10*/ meltfptr[9]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V13*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4827:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V14*/ meltfptr[13] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V13*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4828:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L5*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDCITERTUP__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4829:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L5*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4830:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " c-iterators."));} ; { MELT_LOCATION("warmelt-outobj.melt:4831:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDCITERTUP__V10*/ meltfptr[9]); for (/*_#CITIX__L6*/ meltfnum[5] = 0; (/*_#CITIX__L6*/ meltfnum[5] >= 0) && (/*_#CITIX__L6*/ meltfnum[5] < cit1__EACHTUP_ln); /*_#CITIX__L6*/ meltfnum[5]++) { /*_.CURCITERDEF__V15*/ meltfptr[13] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDCITERTUP__V10*/ meltfptr[9]), /*_#CITIX__L6*/ meltfnum[5]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4835:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4835:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genciterator curciter"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4835; /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V16*/ meltfptr[15] = /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4835:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L7*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V17*/ meltfptr[16] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V16*/ meltfptr[15] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4836:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L8*/ meltfnum[6] = melt_is_instance_of((melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCITERATOR*/ meltfrout->tabval[5])));; MELT_LOCATION("warmelt-outobj.melt:4836:/ cond"); /*cond*/ if (/*_#IS_A__L8*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V19*/ meltfptr[18] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4836:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curciterdef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4836)?(4836):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V18*/ meltfptr[16] = /*_.IFELSE___V19*/ meltfptr[18];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4836:/ clear"); /*clear*/ /*_#IS_A__L8*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V19*/ meltfptr[18] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V18*/ meltfptr[16] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4837:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (melt_ptr_t)((/*!CLASS_LOCATED*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), 1, "LOCA_LOCATION");/*_.SLOC__V20*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.SLOC__V20*/ meltfptr[18] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4838:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), 2, "SDEF_NAME");/*_.SNAM__V21*/ meltfptr[20] = slot; }; ; } else {/*^cond.else*/ /*_.SNAM__V21*/ meltfptr[20] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4839:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), 3, "SDEF_DOC");/*_.SDOC__V22*/ meltfptr[21] = slot; }; ; } else {/*^cond.else*/ /*_.SDOC__V22*/ meltfptr[21] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4840:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCITERATOR*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCITERDEF__V15*/ meltfptr[13]), 5, "SCITERDEF_CITERATOR");/*_.CITER__V23*/ meltfptr[22] = slot; }; ; } else {/*^cond.else*/ /*_.CITER__V23*/ meltfptr[22] = NULL;; } ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4842:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L9*/ meltfnum[6] = melt_is_instance_of((melt_ptr_t)(/*_.CITER__V23*/ meltfptr[22]), (melt_ptr_t)((/*!CLASS_CITERATOR*/ meltfrout->tabval[8])));; MELT_LOCATION("warmelt-outobj.melt:4842:/ cond"); /*cond*/ if (/*_#IS_A__L9*/ meltfnum[6]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V25*/ meltfptr[24] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4842:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check citer"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4842)?(4842):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V25*/ meltfptr[24] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V24*/ meltfptr[23] = /*_.IFELSE___V25*/ meltfptr[24];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4842:/ clear"); /*clear*/ /*_#IS_A__L9*/ meltfnum[6] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V25*/ meltfptr[24] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V24*/ meltfptr[23] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4843:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4844:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4845:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SNAM__V21*/ meltfptr[20]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[9])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SNAM__V21*/ meltfptr[20]), 1, "NAMED_NAME");/*_.NAMED_NAME__V26*/ meltfptr[24] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V26*/ meltfptr[24] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4845:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V26*/ meltfptr[24])));} ; { MELT_LOCATION("warmelt-outobj.melt:4846:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4847:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4848:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4849:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SNAM__V21*/ meltfptr[20]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[9])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SNAM__V21*/ meltfptr[20]), 1, "NAMED_NAME");/*_.NAMED_NAME__V27*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V27*/ meltfptr[26] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4849:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V27*/ meltfptr[26])));} ; { MELT_LOCATION("warmelt-outobj.melt:4850:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4851:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CURCITERDEF__V15*/ meltfptr[13]; /*^apply.arg*/ argtab[1].bp_cstring = "C-iterator defined at "; /*_.MAKEDOC_OUTDEFLOC__V28*/ meltfptr[27] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDEFLOC*/ meltfrout->tabval[10])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4852:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4853:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CITER__V23*/ meltfptr[22]), (melt_ptr_t)((/*!CLASS_CITERATOR*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CITER__V23*/ meltfptr[22]), 2, "CITER_START_FORMALS");/*_.CITER_START_FORMALS__V29*/ meltfptr[28] = slot; }; ; } else {/*^cond.else*/ /*_.CITER_START_FORMALS__V29*/ meltfptr[28] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4853:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CITER_START_FORMALS__V29*/ meltfptr[28]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{c-iterator start formals:}"; /*_.MAKEDOC_OUTFORMALS__V30*/ meltfptr[29] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[11])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4854:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4855:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CITER__V23*/ meltfptr[22]), (melt_ptr_t)((/*!CLASS_CITERATOR*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CITER__V23*/ meltfptr[22]), 4, "CITER_BODY_FORMALS");/*_.CITER_BODY_FORMALS__V31*/ meltfptr[30] = slot; }; ; } else {/*^cond.else*/ /*_.CITER_BODY_FORMALS__V31*/ meltfptr[30] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4855:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CITER_BODY_FORMALS__V31*/ meltfptr[30]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{c-iterator body formals:}"; /*_.MAKEDOC_OUTFORMALS__V32*/ meltfptr[31] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[11])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4857:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.SDOC__V22*/ meltfptr[21]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{C-iterator description:} "; /*_.MAKEDOC_OUTDOC__V33*/ meltfptr[32] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[12])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4858:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4837:/ clear"); /*clear*/ /*_.SLOC__V20*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.SNAM__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.SDOC__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.CITER__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V26*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V27*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDEFLOC__V28*/ meltfptr[27] = 0 ; /*^clear*/ /*clear*/ /*_.CITER_START_FORMALS__V29*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V30*/ meltfptr[29] = 0 ; /*^clear*/ /*clear*/ /*_.CITER_BODY_FORMALS__V31*/ meltfptr[30] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V32*/ meltfptr[31] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V33*/ meltfptr[32] = 0 ; if (/*_#CITIX__L6*/ meltfnum[5]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4832:/ clear"); /*clear*/ /*_.CURCITERDEF__V15*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_#CITIX__L6*/ meltfnum[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V18*/ meltfptr[16] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4822:/ clear"); /*clear*/ /*_.RAWCITERLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.RAWCITERTUP__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDCITERTUP__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V13*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L5*/ meltfnum[0] = 0 ; MELT_LOCATION("warmelt-outobj.melt:4862:/ quasiblock"); /*_.RETVAL___V34*/ meltfptr[18] = (/*nil*/NULL);; MELT_LOCATION("warmelt-outobj.melt:4862:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.RETVAL___V34*/ meltfptr[18];; MELT_LOCATION("warmelt-outobj.melt:4862:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*^clear*/ /*clear*/ /*_.RETVAL___V34*/ meltfptr[18] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4814:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENCITERATOR", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_156_warmelt_outobj_MAKEDOC_GENCITERATOR*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_157_warmelt_outobj_MAKEDOC_GENCMATCHER(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_157_warmelt_outobj_MAKEDOC_GENCMATCHER_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 33 void* varptr[33]; #define MELTFRAM_NBVARNUM 6 long varnum[6]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<33; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 33; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENCMATCHER", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4868:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTB__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4869:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L1*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])));; MELT_LOCATION("warmelt-outobj.melt:4869:/ cond"); /*cond*/ if (/*_#IS_A__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V5*/ meltfptr[4] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4869:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4869)?(4869):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V4*/ meltfptr[3] = /*_.IFELSE___V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4869:/ clear"); /*clear*/ /*_#IS_A__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4870:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRBUF__L2*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2])) == OBMAG_STRBUF);; MELT_LOCATION("warmelt-outobj.melt:4870:/ cond"); /*cond*/ if (/*_#IS_STRBUF__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4870:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outb"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4870)?(4870):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4870:/ clear"); /*clear*/ /*_#IS_STRBUF__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; { MELT_LOCATION("warmelt-outobj.melt:4871:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@node MELT c-matchers"));} ; { MELT_LOCATION("warmelt-outobj.melt:4872:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4873:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@section MELT c-matchers"));} ; { MELT_LOCATION("warmelt-outobj.melt:4874:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4875:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4876:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[0])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), 4, "MKDOC_CMATCHERS");/*_.RAWCMATCHLIST__V8*/ meltfptr[6] = slot; }; ; } else {/*^cond.else*/ /*_.RAWCMATCHLIST__V8*/ meltfptr[6] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4877:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &(/*!DISCR_MULTIPLE*/ meltfrout->tabval[2]); /*_.RAWCMATCHTUP__V9*/ meltfptr[8] = melt_apply ((meltclosure_ptr_t)((/*!LIST_TO_MULTIPLE*/ meltfrout->tabval[1])), (melt_ptr_t)(/*_.RAWCMATCHLIST__V8*/ meltfptr[6]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.SORTEDCMATCHTUP__V10*/ meltfptr[9] = meltgc_sort_multiple((melt_ptr_t)(/*_.RAWCMATCHTUP__V9*/ meltfptr[8]), (melt_ptr_t)((/*!COMPARE_NAMED_ALPHA*/ meltfrout->tabval[3])), (melt_ptr_t)((/*!DISCR_MULTIPLE*/ meltfrout->tabval[2])));; { MELT_LOCATION("warmelt-outobj.melt:4880:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "There are "));} ; /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = (melt_multiple_length((melt_ptr_t)(/*_.SORTEDCMATCHTUP__V10*/ meltfptr[9])));; { MELT_LOCATION("warmelt-outobj.melt:4881:/ locexp"); meltgc_add_strbuf_dec((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (/*_#MULTIPLE_LENGTH__L3*/ meltfnum[0]));} ; { MELT_LOCATION("warmelt-outobj.melt:4882:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( " c-matchers."));} ; { MELT_LOCATION("warmelt-outobj.melt:4883:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; /*citerblock FOREACH_IN_MULTIPLE*/ { /* start cit1__EACHTUP: */ long cit1__EACHTUP_ln = melt_multiple_length((melt_ptr_t)/*_.SORTEDCMATCHTUP__V10*/ meltfptr[9]); for (/*_#CITIX__L4*/ meltfnum[3] = 0; (/*_#CITIX__L4*/ meltfnum[3] >= 0) && (/*_#CITIX__L4*/ meltfnum[3] < cit1__EACHTUP_ln); /*_#CITIX__L4*/ meltfnum[3]++) { /*_.CURCMATCHDEF__V11*/ meltfptr[10] = melt_multiple_nth((melt_ptr_t)(/*_.SORTEDCMATCHTUP__V10*/ meltfptr[9]), /*_#CITIX__L4*/ meltfnum[3]); #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4887:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4887:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_gencmatcher curcmatch"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4887; /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V12*/ meltfptr[11] = /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4887:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L5*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V13*/ meltfptr[12] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V12*/ meltfptr[11] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4888:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L6*/ meltfnum[4] = melt_is_instance_of((melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCMATCHER*/ meltfrout->tabval[5])));; MELT_LOCATION("warmelt-outobj.melt:4888:/ cond"); /*cond*/ if (/*_#IS_A__L6*/ meltfnum[4]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V15*/ meltfptr[14] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4888:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curcmatchdef"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4888)?(4888):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V14*/ meltfptr[12] = /*_.IFELSE___V15*/ meltfptr[14];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4888:/ clear"); /*clear*/ /*_#IS_A__L6*/ meltfnum[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V15*/ meltfptr[14] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V14*/ meltfptr[12] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4889:/ quasiblock"); MELT_LOCATION("warmelt-outobj.melt:4890:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), 2, "SDEF_NAME");/*_.SNAM__V16*/ meltfptr[14] = slot; }; ; } else {/*^cond.else*/ /*_.SNAM__V16*/ meltfptr[14] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4891:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFINITION*/ meltfrout->tabval[6])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), 3, "SDEF_DOC");/*_.SDOC__V17*/ meltfptr[16] = slot; }; ; } else {/*^cond.else*/ /*_.SDOC__V17*/ meltfptr[16] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4892:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), (melt_ptr_t)((/*!CLASS_SOURCE_DEFCMATCHER*/ meltfrout->tabval[5])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CURCMATCHDEF__V11*/ meltfptr[10]), 5, "SCMATDEF_CMATCHER");/*_.CMATCH__V18*/ meltfptr[17] = slot; }; ; } else {/*^cond.else*/ /*_.CMATCH__V18*/ meltfptr[17] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4893:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), (melt_ptr_t)((/*!CLASS_ANY_MATCHER*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), 2, "AMATCH_IN");/*_.CMIN__V19*/ meltfptr[18] = slot; }; ; } else {/*^cond.else*/ /*_.CMIN__V19*/ meltfptr[18] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4894:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), (melt_ptr_t)((/*!CLASS_ANY_MATCHER*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), 3, "AMATCH_MATCHBIND");/*_.CMABIND__V20*/ meltfptr[19] = slot; }; ; } else {/*^cond.else*/ /*_.CMABIND__V20*/ meltfptr[19] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4895:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), (melt_ptr_t)((/*!CLASS_ANY_MATCHER*/ meltfrout->tabval[7])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CMATCH__V18*/ meltfptr[17]), 4, "AMATCH_OUT");/*_.CMOUT__V21*/ meltfptr[20] = slot; }; ; } else {/*^cond.else*/ /*_.CMOUT__V21*/ meltfptr[20] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4897:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4898:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@subsection @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4899:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SNAM__V16*/ meltfptr[14]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SNAM__V16*/ meltfptr[14]), 1, "NAMED_NAME");/*_.NAMED_NAME__V22*/ meltfptr[21] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V22*/ meltfptr[21] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4899:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V22*/ meltfptr[21])));} ; { MELT_LOCATION("warmelt-outobj.melt:4900:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4901:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4902:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4903:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.SNAM__V16*/ meltfptr[14]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.SNAM__V16*/ meltfptr[14]), 1, "NAMED_NAME");/*_.NAMED_NAME__V23*/ meltfptr[22] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V23*/ meltfptr[22] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4903:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V23*/ meltfptr[22])));} ; { MELT_LOCATION("warmelt-outobj.melt:4904:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4905:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CURCMATCHDEF__V11*/ meltfptr[10]; /*^apply.arg*/ argtab[1].bp_cstring = "C-matcher defined at "; /*_.MAKEDOC_OUTDEFLOC__V24*/ meltfptr[23] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDEFLOC*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4906:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4907:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@strong{c-matcher matching formal:} @var{"));} ; MELT_LOCATION("warmelt-outobj.melt:4908:/ quasiblock"); /*^cond*/ /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CMABIND__V20*/ meltfptr[19]), (melt_ptr_t)((/*!CLASS_ANY_BINDING*/ meltfrout->tabval[10])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CMABIND__V20*/ meltfptr[19]), 0, "BINDER");/*_.MANAMB__V25*/ meltfptr[24] = slot; }; ; } else {/*^cond.else*/ /*_.MANAMB__V25*/ meltfptr[24] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4909:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MANAMB__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MANAMB__V25*/ meltfptr[24]), 1, "NAMED_NAME");/*_.NAMED_NAME__V26*/ meltfptr[25] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V26*/ meltfptr[25] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4909:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V26*/ meltfptr[25])));} ; { MELT_LOCATION("warmelt-outobj.melt:4910:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "} - @slanted{"));} ; MELT_LOCATION("warmelt-outobj.melt:4914:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CMABIND__V20*/ meltfptr[19]), (melt_ptr_t)((/*!CLASS_FORMAL_BINDING*/ meltfrout->tabval[11])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CMABIND__V20*/ meltfptr[19]), 1, "FBIND_TYPE");/*_.FBIND_TYPE__V27*/ meltfptr[26] = slot; }; ; } else {/*^cond.else*/ /*_.FBIND_TYPE__V27*/ meltfptr[26] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4913:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.FBIND_TYPE__V27*/ meltfptr[26]), (melt_ptr_t)((/*!CLASS_CTYPE*/ meltfrout->tabval[12])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.FBIND_TYPE__V27*/ meltfptr[26]), 2, "CTYPE_KEYWORD");/*_.CTYPE_KEYWORD__V28*/ meltfptr[27] = slot; }; ; } else {/*^cond.else*/ /*_.CTYPE_KEYWORD__V28*/ meltfptr[27] = NULL;; } ; MELT_LOCATION("warmelt-outobj.melt:4912:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.CTYPE_KEYWORD__V28*/ meltfptr[27]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.CTYPE_KEYWORD__V28*/ meltfptr[27]), 1, "NAMED_NAME");/*_.NAMED_NAME__V29*/ meltfptr[28] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V29*/ meltfptr[28] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4911:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V29*/ meltfptr[28])));} ; { MELT_LOCATION("warmelt-outobj.melt:4915:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "}"));} ; { MELT_LOCATION("warmelt-outobj.melt:4916:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4917:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), ( "@vindex "));} ; MELT_LOCATION("warmelt-outobj.melt:4918:/ cond"); /*cond*/ if (/*ifisa*/ melt_is_instance_of((melt_ptr_t)(/*_.MANAMB__V25*/ meltfptr[24]), (melt_ptr_t)((/*!CLASS_NAMED*/ meltfrout->tabval[8])))) /*then*/ { /*^cond.then*/ /*^getslot*/ { melt_ptr_t slot=0; melt_object_get_field(slot,(melt_ptr_t)(/*_.MANAMB__V25*/ meltfptr[24]), 1, "NAMED_NAME");/*_.NAMED_NAME__V30*/ meltfptr[29] = slot; }; ; } else {/*^cond.else*/ /*_.NAMED_NAME__V30*/ meltfptr[29] = NULL;; } ; { MELT_LOCATION("warmelt-outobj.melt:4918:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), melt_string_str((melt_ptr_t)(/*_.NAMED_NAME__V30*/ meltfptr[29])));} ; { MELT_LOCATION("warmelt-outobj.melt:4919:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4908:/ clear"); /*clear*/ /*_.MANAMB__V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V26*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.FBIND_TYPE__V27*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.CTYPE_KEYWORD__V28*/ meltfptr[27] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V29*/ meltfptr[28] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V30*/ meltfptr[29] = 0 ; MELT_LOCATION("warmelt-outobj.melt:4921:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CMIN__V19*/ meltfptr[18]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{c-matcher input formals:}"; /*_.MAKEDOC_OUTFORMALS__V31*/ meltfptr[24] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[13])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4922:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4923:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CMOUT__V21*/ meltfptr[20]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{c-matcher output formals:}"; /*_.MAKEDOC_OUTFORMALS__V32*/ meltfptr[25] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTFORMALS*/ meltfrout->tabval[13])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4924:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4925:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.SDOC__V17*/ meltfptr[16]; /*^apply.arg*/ argtab[1].bp_cstring = "@strong{C-matcher description:} "; /*_.MAKEDOC_OUTDOC__V33*/ meltfptr[26] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_OUTDOC*/ meltfrout->tabval[14])), (melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (BPARSTR_PTR BPARSTR_CSTRING ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4926:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V3*/ meltfptr[2]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4889:/ clear"); /*clear*/ /*_.SNAM__V16*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.SDOC__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.CMATCH__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.CMIN__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.CMABIND__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.CMOUT__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.NAMED_NAME__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDEFLOC__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V31*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTFORMALS__V32*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_OUTDOC__V33*/ meltfptr[26] = 0 ; if (/*_#CITIX__L4*/ meltfnum[3]<0) break; } /* end cit1__EACHTUP */ /*citerepilog*/ MELT_LOCATION("warmelt-outobj.melt:4884:/ clear"); /*clear*/ /*_.CURCMATCHDEF__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_#CITIX__L4*/ meltfnum[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V14*/ meltfptr[12] = 0 ;} /*endciterblock FOREACH_IN_MULTIPLE*/ ; MELT_LOCATION("warmelt-outobj.melt:4876:/ clear"); /*clear*/ /*_.RAWCMATCHLIST__V8*/ meltfptr[6] = 0 ; /*^clear*/ /*clear*/ /*_.RAWCMATCHTUP__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.SORTEDCMATCHTUP__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_#MULTIPLE_LENGTH__L3*/ meltfnum[0] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4868:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENCMATCHER", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_157_warmelt_outobj_MAKEDOC_GENCMATCHER*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_158_warmelt_outobj_MAKEDOC_GENOUTPUT(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_158_warmelt_outobj_MAKEDOC_GENOUTPUT_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 17 void* varptr[17]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<17; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 17; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_GENOUTPUT", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:4936:/ getarg"); /*_.MDINFO__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.OUTARG__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.OUTARG__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4937:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:4937:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_genoutput mdinfo"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 4937; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4937:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4938:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_A__L2*/ meltfnum[0] = melt_is_instance_of((melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[1])));; MELT_LOCATION("warmelt-outobj.melt:4938:/ cond"); /*cond*/ if (/*_#IS_A__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V7*/ meltfptr[6] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4938:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check mdinfo"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4938)?(4938):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V6*/ meltfptr[4] = /*_.IFELSE___V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4938:/ clear"); /*clear*/ /*_#IS_A__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:4939:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_STRING__L3*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)(/*_.OUTARG__V3*/ meltfptr[2])) == OBMAG_STRING);; MELT_LOCATION("warmelt-outobj.melt:4939:/ cond"); /*cond*/ if (/*_#IS_STRING__L3*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V9*/ meltfptr[8] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:4939:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check outarg"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (4939)?(4939):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V9*/ meltfptr[8] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V8*/ meltfptr[6] = /*_.IFELSE___V9*/ meltfptr[8];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4939:/ clear"); /*clear*/ /*_#IS_STRING__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V9*/ meltfptr[8] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V8*/ meltfptr[6] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:4940:/ quasiblock"); /*_.OUTB__V10*/ meltfptr[8] = meltgc_new_strbuf((meltobject_ptr_t)((/*!DISCR_STRBUF*/ meltfrout->tabval[2])), (char*)0);; { MELT_LOCATION("warmelt-outobj.melt:4942:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@c **** makedoc generated file "));} ; { MELT_LOCATION("warmelt-outobj.melt:4943:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), melt_string_str((melt_ptr_t)(/*_.OUTARG__V3*/ meltfptr[2])));} ; { MELT_LOCATION("warmelt-outobj.melt:4944:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4947:/ locexp"); time_t now = 0; time (&now); meltgc_add_out_raw (/*_.OUTB__V10*/ meltfptr[8], "@c **** generated "); meltgc_add_out_raw (/*_.OUTB__V10*/ meltfptr[8], ctime (&now)); ;} ; { MELT_LOCATION("warmelt-outobj.melt:4953:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@node MELT Programming Reference"));} ; { MELT_LOCATION("warmelt-outobj.melt:4954:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4955:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@chapter MELT Programming Reference"));} ; { MELT_LOCATION("warmelt-outobj.melt:4956:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4957:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4967:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@menu"));} ; { MELT_LOCATION("warmelt-outobj.melt:4968:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4969:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT macros:: The MELT macros."));} ; { MELT_LOCATION("warmelt-outobj.melt:4970:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4971:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT patterns:: The MELT pattern macros."));} ; { MELT_LOCATION("warmelt-outobj.melt:4972:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4973:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT classes:: The MELT classes."));} ; { MELT_LOCATION("warmelt-outobj.melt:4974:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4975:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT primitives:: The MELT primitives."));} ; { MELT_LOCATION("warmelt-outobj.melt:4976:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4977:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT functions:: The MELT functions."));} ; { MELT_LOCATION("warmelt-outobj.melt:4978:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4979:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT c-iterators:: The MELT c-iterators."));} ; { MELT_LOCATION("warmelt-outobj.melt:4980:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4981:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "* MELT c-matchers:: The MELT c-matchers."));} ; { MELT_LOCATION("warmelt-outobj.melt:4982:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:4983:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@end menu"));} ; { MELT_LOCATION("warmelt-outobj.melt:4984:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; MELT_LOCATION("warmelt-outobj.melt:4986:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENMACRO__V11*/ meltfptr[10] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENMACRO*/ meltfrout->tabval[3])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4988:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENPATMACRO__V12*/ meltfptr[11] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENPATMACRO*/ meltfrout->tabval[4])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4990:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENCLASS__V13*/ meltfptr[12] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENCLASS*/ meltfrout->tabval[5])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4992:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENPRIMITIVE__V14*/ meltfptr[13] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENPRIMITIVE*/ meltfrout->tabval[6])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4994:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENFUNCTION__V15*/ meltfptr[14] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENFUNCTION*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4996:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENCITERATOR__V16*/ meltfptr[15] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENCITERATOR*/ meltfrout->tabval[8])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:4998:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTB__V10*/ meltfptr[8]; /*_.MAKEDOC_GENCMATCHER__V17*/ meltfptr[16] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENCMATCHER*/ meltfrout->tabval[9])), (melt_ptr_t)(/*_.MDINFO__V2*/ meltfptr[1]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; { MELT_LOCATION("warmelt-outobj.melt:4999:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:5000:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), ( "@c **** end of makedoc generated file "));} ; { MELT_LOCATION("warmelt-outobj.melt:5001:/ locexp"); meltgc_add_strbuf((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), melt_string_str((melt_ptr_t)(/*_.OUTARG__V3*/ meltfptr[2])));} ; { MELT_LOCATION("warmelt-outobj.melt:5002:/ locexp"); meltgc_strbuf_add_indent((melt_ptr_t)(/*_.OUTB__V10*/ meltfptr[8]), (0), 0);} ; { MELT_LOCATION("warmelt-outobj.melt:5003:/ locexp"); melt_output_strbuf_to_file((/*_.OUTB__V10*/ meltfptr[8]), melt_string_str(/*_.OUTARG__V3*/ meltfptr[2])) ;} ; MELT_LOCATION("warmelt-outobj.melt:4940:/ clear"); /*clear*/ /*_.OUTB__V10*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENMACRO__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENPATMACRO__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENCLASS__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENPRIMITIVE__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENFUNCTION__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENCITERATOR__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENCMATCHER__V17*/ meltfptr[16] = 0 ; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:4936:/ clear"); /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V8*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_GENOUTPUT", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*noretval*/ NULL); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_158_warmelt_outobj_MAKEDOC_GENOUTPUT*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_159_warmelt_outobj_MAKEDOC_DOCMD(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_159_warmelt_outobj_MAKEDOC_DOCMD_st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 40 void* varptr[40]; #define MELTFRAM_NBVARNUM 4 long varnum[4]; /*others*/ const char* loc_CSTRING__o0; const char* loc_CSTRING__o1; long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<40; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 40; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("MAKEDOC_DOCMD", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:5009:/ getarg"); /*_.CMD__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; /*getarg#1*/ /*^getarg*/ if (xargdescr_[0] != BPAR_PTR) goto lab_endgetargs; /*_.MODULDATA__V3*/ meltfptr[2] = (xargtab_[0].bp_aptr) ? (*(xargtab_[0].bp_aptr)) : NULL; gcc_assert(melt_discr((melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2])) != NULL); ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5010:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:5010:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start makedoc_docmd cmd"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 5010; /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CMD__V2*/ meltfptr[1]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V4*/ meltfptr[3] = /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5010:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V5*/ meltfptr[4] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V4*/ meltfptr[3] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5011:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:5011:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "start makedoc_docmd moduldata"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 5011; /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.MODULDATA__V3*/ meltfptr[2]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V6*/ meltfptr[4] = /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5011:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V7*/ meltfptr[6] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V6*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:5012:/ quasiblock"); /*_.PARMODENV__V9*/ meltfptr[8] = (/*!konst_1*/ meltfrout->tabval[1]);; MELT_LOCATION("warmelt-outobj.melt:5014:/ cond"); /*cond*/ if (/*_.MODULDATA__V3*/ meltfptr[2]) /*then*/ { /*^cond.then*/ /*_.CURENV__V10*/ meltfptr[9] = /*_.MODULDATA__V3*/ meltfptr[2];; } else {MELT_LOCATION("warmelt-outobj.melt:5014:/ cond.else"); /*_.CURENV__V10*/ meltfptr[9] = (/*!INITIAL_ENVIRONMENT*/ meltfrout->tabval[2]);; } ; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o0 = melt_argument( "arglist");; /*^compute*/ /*_.ARGLIST__V11*/ meltfptr[10] = meltgc_new_split_string(/*_?*/ meltfram__.loc_CSTRING__o0, ',', (melt_ptr_t) (/*!DISCR_STRING*/ meltfrout->tabval[3]));; /*^compute*/ /*_?*/ meltfram__.loc_CSTRING__o1 = melt_argument( "output");; /*^compute*/ /*_.OUTARG__V12*/ meltfptr[11] = (meltgc_new_stringdup((meltobject_ptr_t)((/*!DISCR_STRING*/ meltfrout->tabval[3])), (/*_?*/ meltfram__.loc_CSTRING__o1)));; /*^compute*/ /*_.RLIST__V13*/ meltfptr[12] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V14*/ meltfptr[13] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V15*/ meltfptr[14] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V16*/ meltfptr[15] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V17*/ meltfptr[16] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V18*/ meltfptr[17] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V19*/ meltfptr[18] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V20*/ meltfptr[19] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V21*/ meltfptr[20] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V22*/ meltfptr[21] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_LIST__V23*/ meltfptr[22] = (meltgc_new_list((meltobject_ptr_t)((/*!DISCR_LIST*/ meltfrout->tabval[4]))));; /*^compute*/ /*_.MAKE_MAPOBJECT__V24*/ meltfptr[23] = (meltgc_new_mapobjects( (meltobject_ptr_t) ((/*!DISCR_MAP_OBJECTS*/ meltfrout->tabval[6])), (1000)));; /*^compute*/ /*_.MAKE_MAPOBJECT__V25*/ meltfptr[24] = (meltgc_new_mapobjects( (meltobject_ptr_t) ((/*!DISCR_MAP_OBJECTS*/ meltfrout->tabval[6])), (200)));; /*^compute*/ /*_.MAKE_MAPOBJECT__V26*/ meltfptr[25] = (meltgc_new_mapobjects( (meltobject_ptr_t) ((/*!DISCR_MAP_OBJECTS*/ meltfrout->tabval[6])), (400)));; /*^compute*/ /*_.MAKE_MAPOBJECT__V27*/ meltfptr[26] = (meltgc_new_mapobjects( (meltobject_ptr_t) ((/*!DISCR_MAP_OBJECTS*/ meltfrout->tabval[6])), (400)));; MELT_LOCATION("warmelt-outobj.melt:5019:/ quasiblock"); /*^rawallocobj*/ /*rawallocobj*/ { melt_ptr_t newobj = 0; melt_raw_object_create(newobj,(melt_ptr_t)((/*!CLASS_MAKEDOC_INFO*/ meltfrout->tabval[5])), (15), "CLASS_MAKEDOC_INFO");/*_.INST__V29*/ meltfptr[28] = newobj; }; ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_PRIMITIVES", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (1), (/*_.MAKE_LIST__V14*/ meltfptr[13]), "MKDOC_PRIMITIVES"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_FUNCTIONS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (2), (/*_.MAKE_LIST__V15*/ meltfptr[14]), "MKDOC_FUNCTIONS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_CITERATORS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (3), (/*_.MAKE_LIST__V16*/ meltfptr[15]), "MKDOC_CITERATORS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_CMATCHERS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (4), (/*_.MAKE_LIST__V17*/ meltfptr[16]), "MKDOC_CMATCHERS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_SELECTORS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (5), (/*_.MAKE_LIST__V18*/ meltfptr[17]), "MKDOC_SELECTORS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_FIELDS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (6), (/*_.MAKE_LIST__V19*/ meltfptr[18]), "MKDOC_FIELDS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_CLASSES", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (7), (/*_.MAKE_LIST__V20*/ meltfptr[19]), "MKDOC_CLASSES"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_INSTANCES", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (8), (/*_.MAKE_LIST__V21*/ meltfptr[20]), "MKDOC_INSTANCES"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_MACROS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (9), (/*_.MAKE_LIST__V22*/ meltfptr[21]), "MKDOC_MACROS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_PATMACROS", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (10), (/*_.MAKE_LIST__V23*/ meltfptr[22]), "MKDOC_PATMACROS"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_FORMALOCCMAP", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (11), (/*_.MAKE_MAPOBJECT__V24*/ meltfptr[23]), "MKDOC_FORMALOCCMAP"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_PREDEFMAP", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (12), (/*_.MAKE_MAPOBJECT__V25*/ meltfptr[24]), "MKDOC_PREDEFMAP"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_DOCSYMAP", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (13), (/*_.MAKE_MAPOBJECT__V26*/ meltfptr[25]), "MKDOC_DOCSYMAP"); ; /*^putslot*/ /*putslot*/ melt_assertmsg("putslot checkobj @MKDOC_SUBCLASSMAP", melt_magic_discr((melt_ptr_t)(/*_.INST__V29*/ meltfptr[28])) == OBMAG_OBJECT); melt_putfield_object((/*_.INST__V29*/ meltfptr[28]), (14), (/*_.MAKE_MAPOBJECT__V27*/ meltfptr[26]), "MKDOC_SUBCLASSMAP"); ; /*_.MDINFO__V28*/ meltfptr[27] = /*_.INST__V29*/ meltfptr[28];; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5036:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:5036:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd arglist"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 5036; /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.ARGLIST__V11*/ meltfptr[10]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V30*/ meltfptr[29] = /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5036:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V31*/ meltfptr[30] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V30*/ meltfptr[29] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5037:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:5037:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd outarg"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 5037; /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.OUTARG__V12*/ meltfptr[11]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V32*/ meltfptr[30] = /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5037:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L4*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V33*/ meltfptr[32] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V32*/ meltfptr[30] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:5041:/ quasiblock"); /*^newclosure*/ /*newclosure*/ /*_.LAMBDA___V35*/ meltfptr[34] = meltgc_new_closure((meltobject_ptr_t)(((void*)(MELT_PREDEF(DISCR_CLOSURE)))), (meltroutine_ptr_t)((/*!konst_10*/ meltfrout->tabval[10])), (1)); ; /*^putclosedv*/ /*putclosv*/ melt_assertmsg("putclosv checkclo", melt_magic_discr((melt_ptr_t)(/*_.LAMBDA___V35*/ meltfptr[34])) == OBMAG_CLOSURE); melt_assertmsg("putclosv checkoff", 0>= 0 && 0< melt_closure_size((melt_ptr_t) (/*_.LAMBDA___V35*/ meltfptr[34]))); ((meltclosure_ptr_t)/*_.LAMBDA___V35*/ meltfptr[34])->tabval[0] = (melt_ptr_t)(/*_.RLIST__V13*/ meltfptr[12]); ; /*_.LAMBDA___V34*/ meltfptr[32] = /*_.LAMBDA___V35*/ meltfptr[34];; MELT_LOCATION("warmelt-outobj.melt:5039:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.LAMBDA___V34*/ meltfptr[32]; /*_.LIST_EVERY__V36*/ meltfptr[35] = melt_apply ((meltclosure_ptr_t)((/*!LIST_EVERY*/ meltfrout->tabval[7])), (melt_ptr_t)(/*_.ARGLIST__V11*/ meltfptr[10]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:5050:/ quasiblock"); /*^apply*/ /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CURENV__V10*/ meltfptr[9]; /*_.XLIST__V38*/ meltfptr[37] = melt_apply ((meltclosure_ptr_t)((/*!MACROEXPAND_TOPLEVEL_LIST*/ meltfrout->tabval[11])), (melt_ptr_t)(/*_.RLIST__V13*/ meltfptr[12]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:5053:/ apply"); /*apply*/{ union meltparam_un argtab[2]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.ARGLIST__V11*/ meltfptr[10]; /*^apply.arg*/ argtab[1].bp_aptr = (melt_ptr_t*) &/*_.XLIST__V38*/ meltfptr[37]; /*_.MAKEDOC_SCANINPUT__V39*/ meltfptr[38] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_SCANINPUT*/ meltfrout->tabval[12])), (melt_ptr_t)(/*_.MDINFO__V28*/ meltfptr[27]), (BPARSTR_PTR BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; MELT_LOCATION("warmelt-outobj.melt:5055:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.OUTARG__V12*/ meltfptr[11]; /*_.MAKEDOC_GENOUTPUT__V40*/ meltfptr[39] = melt_apply ((meltclosure_ptr_t)((/*!MAKEDOC_GENOUTPUT*/ meltfrout->tabval[13])), (melt_ptr_t)(/*_.MDINFO__V28*/ meltfptr[27]), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V37*/ meltfptr[36] = /*_.MAKEDOC_GENOUTPUT__V40*/ meltfptr[39];; MELT_LOCATION("warmelt-outobj.melt:5050:/ clear"); /*clear*/ /*_.XLIST__V38*/ meltfptr[37] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_SCANINPUT__V39*/ meltfptr[38] = 0 ; /*^clear*/ /*clear*/ /*_.MAKEDOC_GENOUTPUT__V40*/ meltfptr[39] = 0 ; /*_.LET___V8*/ meltfptr[6] = /*_.LET___V37*/ meltfptr[36];; MELT_LOCATION("warmelt-outobj.melt:5012:/ clear"); /*clear*/ /*_.PARMODENV__V9*/ meltfptr[8] = 0 ; /*^clear*/ /*clear*/ /*_.CURENV__V10*/ meltfptr[9] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o0 = 0 ; /*^clear*/ /*clear*/ /*_.ARGLIST__V11*/ meltfptr[10] = 0 ; /*^clear*/ /*clear*/ /*_?*/ meltfram__.loc_CSTRING__o1 = 0 ; /*^clear*/ /*clear*/ /*_.OUTARG__V12*/ meltfptr[11] = 0 ; /*^clear*/ /*clear*/ /*_.RLIST__V13*/ meltfptr[12] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V14*/ meltfptr[13] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V15*/ meltfptr[14] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V16*/ meltfptr[15] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V17*/ meltfptr[16] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V18*/ meltfptr[17] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V19*/ meltfptr[18] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V20*/ meltfptr[19] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V21*/ meltfptr[20] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V22*/ meltfptr[21] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_LIST__V23*/ meltfptr[22] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPOBJECT__V24*/ meltfptr[23] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPOBJECT__V25*/ meltfptr[24] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPOBJECT__V26*/ meltfptr[25] = 0 ; /*^clear*/ /*clear*/ /*_.MAKE_MAPOBJECT__V27*/ meltfptr[26] = 0 ; /*^clear*/ /*clear*/ /*_.MDINFO__V28*/ meltfptr[27] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V30*/ meltfptr[29] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V32*/ meltfptr[30] = 0 ; /*^clear*/ /*clear*/ /*_.LAMBDA___V34*/ meltfptr[32] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_EVERY__V36*/ meltfptr[35] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V37*/ meltfptr[36] = 0 ; MELT_LOCATION("warmelt-outobj.melt:5009:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V8*/ meltfptr[6];; MELT_LOCATION("warmelt-outobj.melt:5009:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.IFCPP___V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V6*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.LET___V8*/ meltfptr[6] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("MAKEDOC_DOCMD", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_159_warmelt_outobj_MAKEDOC_DOCMD*/ melt_ptr_t MELT_MODULE_VISIBILITY meltrout_160_warmelt_outobj_LAMBDA_(meltclosure_ptr_t closp_, melt_ptr_t firstargp_, const char xargdescr_[], union meltparam_un *xargtab_, const char xresdescr_[], union meltparam_un *xrestab_) { #if ENABLE_CHECKING static long call_counter__; long thiscallcounter__ ATTRIBUTE_UNUSED = ++ call_counter__; #undef meltcallcount #define meltcallcount thiscallcounter__ #else #undef meltcallcount #define meltcallcount 0L #endif struct frame_meltrout_160_warmelt_outobj_LAMBDA__st { unsigned nbvar; #if ENABLE_CHECKING const char* flocs; #endif struct meltclosure_st *clos; struct excepth_melt_st *exh; struct callframe_melt_st *prev; #define MELTFRAM_NBVARPTR 11 void* varptr[11]; #define MELTFRAM_NBVARNUM 3 long varnum[3]; /*others*/ long _spare_; } *framptr_=0, meltframe; #define meltfram__ meltframe if (MELT_UNLIKELY(xargdescr_ == MELTPAR_MARKGGC)) { /*mark for ggc*/ int ix=0; framptr_ = (void*)firstargp_; gt_ggc_mx_melt_un (framptr_->clos); for(ix=0; ix<11; ix++) if (framptr_->varptr[ix]) gt_ggc_mx_melt_un (framptr_->varptr[ix]); return NULL; }/*end markggc*/; memset(&meltfram__, 0, sizeof(meltfram__)); meltfram__.nbvar = 11; meltfram__.clos = closp_; meltfram__.prev = (struct callframe_melt_st *) melt_topframe; melt_topframe = (struct callframe_melt_st *) &meltfram__; melt_trace_start("LAMBDA_", meltcallcount); /*getargs*/ /*getarg#0*/ MELT_LOCATION("warmelt-outobj.melt:5041:/ getarg"); /*_.CURARG__V2*/ meltfptr[1] = (melt_ptr_t) firstargp_; ; goto lab_endgetargs; lab_endgetargs:; /*body*/ /*^block*/ /*anyblock*/{ { MELT_LOCATION("warmelt-outobj.melt:5042:/ locexp"); inform(UNKNOWN_LOCATION, ("MELT INFORM [#%ld]: %s - %s"), melt_dbgcounter, ( "reading from file"), melt_string_str((melt_ptr_t)(/*_.CURARG__V2*/ meltfptr[1])));} ; MELT_LOCATION("warmelt-outobj.melt:5043:/ quasiblock"); /*_.CUREAD__V4*/ meltfptr[3] = (meltgc_read_file (melt_string_str((melt_ptr_t)(/*_.CURARG__V2*/ meltfptr[1])), (char*)0));; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5045:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST__L1*/ meltfnum[0] = (melt_magic_discr((melt_ptr_t)((/*~RLIST*/ meltfclos->tabval[0]))) == OBMAG_LIST);; MELT_LOCATION("warmelt-outobj.melt:5045:/ cond"); /*cond*/ if (/*_#IS_LIST__L1*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V6*/ meltfptr[5] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:5045:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check rlist"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (5045)?(5045):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V5*/ meltfptr[4] = /*_.IFELSE___V6*/ meltfptr[5];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5045:/ clear"); /*clear*/ /*_#IS_LIST__L1*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V6*/ meltfptr[5] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V5*/ meltfptr[4] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5046:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#IS_LIST_OR_NULL__L2*/ meltfnum[0] = ((/*_.CUREAD__V4*/ meltfptr[3]) == NULL || (melt_unsafe_magic_discr((melt_ptr_t)(/*_.CUREAD__V4*/ meltfptr[3])) == OBMAG_LIST));; MELT_LOCATION("warmelt-outobj.melt:5046:/ cond"); /*cond*/ if (/*_#IS_LIST_OR_NULL__L2*/ meltfnum[0]) /*then*/ { /*^cond.then*/ /*_.IFELSE___V8*/ meltfptr[7] = (/*nil*/NULL);; } else {MELT_LOCATION("warmelt-outobj.melt:5046:/ cond.else"); /*^block*/ /*anyblock*/{ { /*^locexp*/ melt_assert_failed(( "check curead"),( "warmelt-outobj.melt")?( "warmelt-outobj.melt"):__FILE__, (5046)?(5046):__LINE__, __FUNCTION__); ;} ; /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ; /*epilog*/ } ; } ; /*^compute*/ /*_.IFCPP___V7*/ meltfptr[5] = /*_.IFELSE___V8*/ meltfptr[7];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5046:/ clear"); /*clear*/ /*_#IS_LIST_OR_NULL__L2*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.IFELSE___V8*/ meltfptr[7] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V7*/ meltfptr[5] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; #if ENABLE_CHECKING MELT_LOCATION("warmelt-outobj.melt:5047:/ cppif.then"); /*^block*/ /*anyblock*/{ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = meltcallcount;; MELT_LOCATION("warmelt-outobj.melt:5047:/ apply"); /*apply*/{ union meltparam_un argtab[4]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_cstring = "makedoc_docmd curead"; /*^apply.arg*/ argtab[1].bp_long = /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0]; /*^apply.arg*/ argtab[2].bp_cstring = "warmelt-outobj.melt"; /*^apply.arg*/ argtab[3].bp_long = 5047; /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!DEBUG_MSG_FUN*/ meltfrout->tabval[0])), (melt_ptr_t)(/*_.CUREAD__V4*/ meltfptr[3]), (BPARSTR_CSTRING BPARSTR_LONG BPARSTR_CSTRING BPARSTR_LONG ""), argtab, "", (union meltparam_un*)0); } ; /*_.IFCPP___V9*/ meltfptr[7] = /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9];; /*epilog*/ MELT_LOCATION("warmelt-outobj.melt:5047:/ clear"); /*clear*/ /*_#THE_MELTCALLCOUNT__L3*/ meltfnum[0] = 0 ; /*^clear*/ /*clear*/ /*_.DEBUG_MSG_FUN__V10*/ meltfptr[9] = 0 ;} #else /*ENABLE_CHECKING*/ /*^cppif.else*/ /*_.IFCPP___V9*/ meltfptr[7] = (/*nil*/NULL); #endif /*ENABLE_CHECKING*/ ; MELT_LOCATION("warmelt-outobj.melt:5048:/ apply"); /*apply*/{ union meltparam_un argtab[1]; memset(&argtab, 0, sizeof(argtab)); /*^apply.arg*/ argtab[0].bp_aptr = (melt_ptr_t*) &/*_.CUREAD__V4*/ meltfptr[3]; /*_.LIST_APPEND2LIST__V11*/ meltfptr[9] = melt_apply ((meltclosure_ptr_t)((/*!LIST_APPEND2LIST*/ meltfrout->tabval[1])), (melt_ptr_t)((/*~RLIST*/ meltfclos->tabval[0])), (BPARSTR_PTR ""), argtab, "", (union meltparam_un*)0); } ; /*_.LET___V3*/ meltfptr[2] = /*_.LIST_APPEND2LIST__V11*/ meltfptr[9];; MELT_LOCATION("warmelt-outobj.melt:5043:/ clear"); /*clear*/ /*_.CUREAD__V4*/ meltfptr[3] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V5*/ meltfptr[4] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V7*/ meltfptr[5] = 0 ; /*^clear*/ /*clear*/ /*_.IFCPP___V9*/ meltfptr[7] = 0 ; /*^clear*/ /*clear*/ /*_.LIST_APPEND2LIST__V11*/ meltfptr[9] = 0 ; MELT_LOCATION("warmelt-outobj.melt:5041:/ quasiblock"); /*_.RETVAL___V1*/ meltfptr[0] = /*_.LET___V3*/ meltfptr[2];; MELT_LOCATION("warmelt-outobj.melt:5041:/ finalreturn"); ; /*finalret*/ goto labend_rout ; /*epilog*/ /*^clear*/ /*clear*/ /*_.LET___V3*/ meltfptr[2] = 0 ;} ; goto labend_rout; labend_rout: melt_trace_end("LAMBDA_", meltcallcount); melt_topframe = (struct callframe_melt_st*) meltfram__.prev; return (melt_ptr_t)(/*_.RETVAL___V1*/ meltfptr[0]); #undef meltcallcount #undef meltfram__ #undef MELTFRAM_NBVARNUM #undef MELTFRAM_NBVARPTR } /*end meltrout_160_warmelt_outobj_LAMBDA_*/ /**** end of warmelt-outobj.0+03.c ****/