Bug Summary

File:OMCompiler/Compiler/boot/build/BlockCallRewrite.c
Warning:line 3699, column 5
Value stored to 'tmp3_1' is never read

Annotated Source Code

[?] Use j/k keys for keyboard navigation

1#ifdef OMC_BASE_FILE
2 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c" OMC_BASE_FILE
3#else
4 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
5#endif
6#include "omc_simulation_settings.h"
7#include "BlockCallRewrite.h"
8#define _OMC_LIT0_data"" ""
9static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT0,0,_OMC_LIT0_data)struct { mmc_uint_t header; const char data[(0)+1]; } _OMC_LIT_STRUCT0
= { ((((mmc_uint_t)0)<<(3))+((1<<(3+3))+5)), "" }
;
10#define _OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT0)((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3))
11static const MMC_DEFREALLIT(_OMC_LIT_STRUCT1,0.0)struct mmc_real_lit _OMC_LIT_STRUCT1 = {0,(((8/8) << 10
) + 9),0.0}
;
12#define _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT1)((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))
13static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT2,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT2
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))}};
14#define _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT2)((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3))
15static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT3,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT3
= { (((1) << 10) + (((4) & 255) << 2)),
{&Absyn_Each_NON__EACH__desc,}};
16#define _OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT3)((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3))
17#define _OMC_LIT4_data"_autogen_" "_autogen_"
18static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT4,9,_OMC_LIT4_data)struct { mmc_uint_t header; const char data[(9)+1]; } _OMC_LIT_STRUCT4
= { ((((mmc_uint_t)9)<<(3))+((1<<(3+3))+5)), "_autogen_"
}
;
19#define _OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT4)((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3))
20static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT5,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT5
= { (((1) << 10) + (((6) & 255) << 2)),
{&Absyn_InnerOuter_NOT__INNER__OUTER__desc,}};
21#define _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT5)((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3))
22static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT6,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT6
= { (((1) << 10) + (((5) & 255) << 2)),
{&Absyn_Parallelism_NON__PARALLEL__desc,}};
23#define _OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT6)((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3))
24static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT7,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT7
= { (((1) << 10) + (((3) & 255) << 2)),
{&Absyn_Variability_VAR__desc,}};
25#define _OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT7)((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))
26static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT8,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT8
= { (((1) << 10) + (((5) & 255) << 2)),
{&Absyn_Direction_BIDIR__desc,}};
27#define _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT8)((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))
28static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT9,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT9
= { (((1) << 10) + (((3) & 255) << 2)),
{&Absyn_IsField_NONFIELD__desc,}};
29#define _OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT9)((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))
30static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT10,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT10
= { (((8) << 10) + (((3) & 255) << 2)),
{&Absyn_ElementAttributes_ATTR__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)),_OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)),_OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)),_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
31#define _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT10)((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))
32static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT11
= { (((1) << 10) + (((3) & 255) << 2)),
{&Absyn_EqMod_NOMOD__desc,}};
33#define _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))
34#define _OMC_LIT12_data"out" "out"
35static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT12,3,_OMC_LIT12_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT12
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "out"
}
;
36#define _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT12)((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))
37static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,3,5)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT13
= { (((3) << 10) + (((5) & 255) << 2)),
{&Absyn_ComponentRef_CREF__IDENT__desc,_OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
38#define _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))
39static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT14,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT14
= { (((2) << 10) + (((3) & 255) << 2)),
{&Dump_DumpOptions_DUMPOPTIONS__desc,_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3))}};
40#define _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT14)((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3))
41#include "util/modelica.h"
42
43#include "BlockCallRewrite_includes.h"
44
45
46/* default, do not make protected functions static */
47#if !defined(PROTECTED_FUNCTION_STATIC)
48#define PROTECTED_FUNCTION_STATIC
49#endif
50PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchVarNamedArg(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_boolean *out_found);
51PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchVarNamedArg(threadData_t *threadData, modelica_metatype _elemId, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_metatype *out_found);
52static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchVarNamedArg,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchVarNamedArg
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchVarNamedArg,0}};
53#define boxvar_BlockCallRewrite_matchVarNamedArg((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchVarNamedArg
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchVarNamedArg)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchVarNamedArg
).header) + 3))
54PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchParamNamedArg(threadData_t *threadData, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldModif, modelica_boolean *out_found);
55PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchParamNamedArg(threadData_t *threadData, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldModif, modelica_metatype *out_found);
56static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchParamNamedArg,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchParamNamedArg
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchParamNamedArg,0}};
57#define boxvar_BlockCallRewrite_matchParamNamedArg((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchParamNamedArg
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchParamNamedArg)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchParamNamedArg
).header) + 3))
58PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgElems(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found);
59PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchNamedArgElems(threadData_t *threadData, modelica_metatype _elemId, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found);
60static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgElems,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchNamedArgElems
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchNamedArgElems,0}};
61#define boxvar_BlockCallRewrite_matchNamedArgElems((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgElems
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgElems)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgElems
).header) + 3))
62PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgClass(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif);
63static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgClass,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchNamedArgClass
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchNamedArgClassomc_BlockCallRewrite_matchNamedArgClass,0}};
64#define boxvar_BlockCallRewrite_matchNamedArgClass((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgClass
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgClass)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgClass
).header) + 3))
65PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgsClass(threadData_t *threadData, modelica_string _elemId, modelica_metatype _nargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif);
66static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgsClass,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchNamedArgsClass
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchNamedArgsClassomc_BlockCallRewrite_matchNamedArgsClass,0}};
67#define boxvar_BlockCallRewrite_matchNamedArgsClass((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgsClass
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchNamedArgsClass)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchNamedArgsClass
).header) + 3))
68PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchVarArgs(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_metatype *out_newArgs);
69static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchVarArgs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchVarArgs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchVarArgsomc_BlockCallRewrite_matchVarArgs,0}};
70#define boxvar_BlockCallRewrite_matchVarArgs((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchVarArgs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchVarArgs)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchVarArgs
).header) + 3))
71PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchParamArgs(threadData_t *threadData, modelica_metatype _args, modelica_metatype _comps, modelica_metatype _oldModif, modelica_metatype *out_newArgs);
72static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchParamArgs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchParamArgs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchParamArgsomc_BlockCallRewrite_matchParamArgs,0}};
73#define boxvar_BlockCallRewrite_matchParamArgs((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchParamArgs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchParamArgs)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchParamArgs
).header) + 3))
74PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchArgsElems(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_newArgs);
75static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchArgsElems,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchArgsElems
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchArgsElemsomc_BlockCallRewrite_matchArgsElems,0}};
76#define boxvar_BlockCallRewrite_matchArgsElems((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchArgsElems
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchArgsElems)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchArgsElems
).header) + 3))
77PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchArgsClass(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif);
78static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchArgsClass,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_matchArgsClass
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_matchArgsClassomc_BlockCallRewrite_matchArgsClass,0}};
79#define boxvar_BlockCallRewrite_matchArgsClass((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchArgsClass
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_matchArgsClass)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_matchArgsClass
).header) + 3))
80PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseArgs(threadData_t *threadData, modelica_string _elemId, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_mods);
81static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseArgs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseArgs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseArgsomc_BlockCallRewrite_parseArgs,0}};
82#define boxvar_BlockCallRewrite_parseArgs((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseArgs)
.header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseArgs)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseArgs)
.header) + 3))
83PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_lookThroughElems(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _fargs, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found);
84PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_lookThroughElems(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _fargs, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found);
85static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_lookThroughElems,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_lookThroughElems
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_lookThroughElems,0}};
86#define boxvar_BlockCallRewrite_lookThroughElems((void*)((char*)(&(boxvar_lit_BlockCallRewrite_lookThroughElems
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_lookThroughElems)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_lookThroughElems
).header) + 3))
87PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_lookThroughClasses(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _fargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found);
88PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_lookThroughClasses(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _fargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found);
89static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_lookThroughClasses,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_lookThroughClasses
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_lookThroughClasses,0}};
90#define boxvar_BlockCallRewrite_lookThroughClasses((void*)((char*)(&(boxvar_lit_BlockCallRewrite_lookThroughClasses
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_lookThroughClasses)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_lookThroughClasses
).header) + 3))
91PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassesDefs(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found, modelica_integer *out_newInstNo);
92PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassesDefs(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found, modelica_metatype *out_newInstNo);
93static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassesDefs,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseClassesDefs
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseClassesDefs,0}};
94#define boxvar_BlockCallRewrite_parseClassesDefs((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassesDefs
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassesDefs)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassesDefs
).header) + 3))
95PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_getDefinition(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _defs, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found, modelica_integer *out_newInstNo);
96PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_getDefinition(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _defs, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found, modelica_metatype *out_newInstNo);
97static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_getDefinition,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_getDefinition
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_getDefinition,0}};
98#define boxvar_BlockCallRewrite_getDefinition((void*)((char*)(&(boxvar_lit_BlockCallRewrite_getDefinition
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_getDefinition)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_getDefinition
).header) + 3))
99PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseCall(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_integer _instNo, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype *out_newEqs, modelica_metatype *out_newElems, modelica_integer *out_newInstNo);
100PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseCall(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _instNo, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype *out_newEqs, modelica_metatype *out_newElems, modelica_metatype *out_newInstNo);
101static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseCall,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseCall
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseCall,0}};
102#define boxvar_BlockCallRewrite_parseCall((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseCall)
.header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseCall)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseCall)
.header) + 3))
103PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseExpressionTuple(threadData_t *threadData, modelica_metatype _tuple_list, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo);
104PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseExpressionTuple(threadData_t *threadData, modelica_metatype _tuple_list, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo);
105static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseExpressionTuple,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseExpressionTuple
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseExpressionTuple,0}};
106#define boxvar_BlockCallRewrite_parseExpressionTuple((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseExpressionTuple
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseExpressionTuple)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseExpressionTuple
).header) + 3))
107PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseExpression(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo);
108PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseExpression(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo);
109static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseExpression,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseExpression
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseExpression,0}};
110#define boxvar_BlockCallRewrite_parseExpression((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseExpression
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseExpression)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseExpression
).header) + 3))
111PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseEquation(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo);
112PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseEquation(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo);
113static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseEquation,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseEquation
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseEquation,0}};
114#define boxvar_BlockCallRewrite_parseEquation((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseEquation
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseEquation)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseEquation
).header) + 3))
115PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseEquations(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo);
116PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseEquations(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo);
117static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseEquations,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseEquations
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseEquations,0}};
118#define boxvar_BlockCallRewrite_parseEquations((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseEquations
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseEquations)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseEquations
).header) + 3))
119PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassPart(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_reqs, modelica_metatype *out_relems, modelica_integer *out_newInstNo);
120PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassPart(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_reqs, modelica_metatype *out_relems, modelica_metatype *out_newInstNo);
121static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassPart,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseClassPart
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseClassPart,0}};
122#define boxvar_BlockCallRewrite_parseClassPart((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassPart
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassPart)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassPart
).header) + 3))
123PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassParts(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo);
124PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassParts(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo);
125static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassParts,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseClassParts
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseClassParts,0}};
126#define boxvar_BlockCallRewrite_parseClassParts((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassParts
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassParts)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassParts
).header) + 3))
127PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassDef(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs);
128static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassDef,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseClassDef
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseClassDefomc_BlockCallRewrite_parseClassDef,0}};
129#define boxvar_BlockCallRewrite_parseClassDef((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassDef
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseClassDef)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseClassDef
).header) + 3))
130PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseProgram(threadData_t *threadData, modelica_metatype _inPg, modelica_metatype _defs);
131static const MMC_DEFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseProgram,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_BlockCallRewrite_parseProgram
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_BlockCallRewrite_parseProgramomc_BlockCallRewrite_parseProgram,0}};
132#define boxvar_BlockCallRewrite_parseProgram((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseProgram
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_BlockCallRewrite_parseProgram)((void*)((char*)(&(boxvar_lit_BlockCallRewrite_parseProgram
).header) + 3))
133
134PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchVarNamedArg(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_boolean *out_found)
135{
136 modelica_metatype _newEqs = NULL((void*)0);
137 modelica_boolean _found;
138 modelica_boolean tmp1_c1 __attribute__((unused)) = 0;
139 modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
140 MMC_SO()mmc_check_stackoverflow(threadData);
141 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
142 // _newEqs has no default value.
143 // _found has no default value.
144#line 926 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
145
146#line 926 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
147
148#line 148 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
149 { /* matchcontinue expression */
150 volatile modelica_metatype tmp4_1;
151 tmp4_1 = _comps;
152 {
153 modelica_metatype _r_comps = NULL((void*)0);
154 modelica_string _cName = NULL((void*)0);
155 modelica_metatype _eq = NULL((void*)0);
156 volatile mmc_switch_type tmp4;
157 int tmp5;
158 // _r_comps has no default value.
159 // _cName has no default value.
160 // _eq has no default value.
161 tmp4 = 0;
162 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
163 tmp3_top:
164 threadData->mmc_jumper = &new_mmc_jumper;
165 for (; tmp4 < 3; tmp4++) {
166 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
167 case 0: {
168 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
169 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
170#line 934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
171 tmpMeta[0+0] = _oldEqs;
172#line 934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
173 tmp1_c1 = 0;
174#line 174 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
175 goto tmp3_done;
176 }
177 case 1: {
178 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
179 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
180 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
181 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
182 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
183
184 _cName = tmpMeta[5];
185 /* Pattern matching succeeded */
186#line 937 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
187 if((!(stringEqual(_cName, _argName)((((((*(mmc_uint_t*)((void*)((char*)(_cName) - 3)))) >>
(3)) - 8)) == (((((*(mmc_uint_t*)((void*)((char*)(_argName) -
3)))) >> (3)) - 8)) && !mmc_stringCompare(_cName
,_argName))
)))
188#line 937 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
189 {
190#line 937 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
191 goto goto_2;
192#line 192 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
193 }
194
195#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
196 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
197#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
198 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
199#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
200 tmpMeta[4] = mmc_mk_box3(5, &Absyn_ComponentRef_CREF__IDENT__desc, _cName, tmpMeta[3]);
201#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
202 tmpMeta[5] = mmc_mk_box4(4, &Absyn_ComponentRef_CREF__QUAL__desc, _elemId, tmpMeta[2], tmpMeta[4]);
203#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
204 tmpMeta[6] = mmc_mk_box2(5, &Absyn_Exp_CREF__desc, tmpMeta[5]);
205#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
206 tmpMeta[7] = mmc_mk_box3(4, &Absyn_Equation_EQ__EQUALS__desc, tmpMeta[6], _argValue);
207#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
208 tmpMeta[8] = mmc_mk_box4(3, &Absyn_EquationItem_EQUATIONITEM__desc, tmpMeta[7], mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
209#line 938 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
210 _eq = tmpMeta[8];
211#line 211 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
212#line 939 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
213 tmpMeta[2] = mmc_mk_cons(_eq, _oldEqs);
214#line 939 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
215 tmpMeta[0+0] = tmpMeta[2];
216#line 939 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
217 tmp1_c1 = 1;
218#line 218 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
219 goto tmp3_done;
220 }
221 case 2: {
222 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
223 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
224 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
225 _r_comps = tmpMeta[3];
226 /* Pattern matching succeeded */
227#line 943 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
228 tmpMeta[0+0] = omc_BlockCallRewrite_matchVarNamedArg(threadData, _elemId, _argName, _argValue, _r_comps, _oldEqs, &tmp1_c1);
229#line 229 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
230 goto tmp3_done;
231 }
232 }
233 goto tmp3_end;
234 tmp3_end: ;
235 }
236 goto goto_2;
237 tmp3_done:
238 (void)tmp4;
239 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
240 goto tmp3_done2;
241 goto_2:;
242 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
243 if (++tmp4 < 3) {
244 goto tmp3_top;
245 }
246 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
247 tmp3_done2:;
248 }
249 }
250 _newEqs = tmpMeta[0+0];
251 _found = tmp1_c1;
252 _return: OMC_LABEL_UNUSED__attribute__((unused))
253 if (out_found) { *out_found = _found; }
254 return _newEqs;
255}
256PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchVarNamedArg(threadData_t *threadData, modelica_metatype _elemId, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_metatype *out_found)
257{
258 modelica_boolean _found;
259 modelica_metatype _newEqs = NULL((void*)0);
260 _newEqs = omc_BlockCallRewrite_matchVarNamedArg(threadData, _elemId, _argName, _argValue, _comps, _oldEqs, &_found);
261 /* skip box _newEqs; list<Absyn.EquationItem> */
262 if (out_found) { *out_found = mmc_mk_icon(_found); }
263 return _newEqs;
264}
265
266PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchParamNamedArg(threadData_t *threadData, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldModif, modelica_boolean *out_found)
267{
268 modelica_metatype _newModif = NULL((void*)0);
269 modelica_boolean _found;
270 modelica_boolean tmp1_c1 __attribute__((unused)) = 0;
271 modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
272 MMC_SO()mmc_check_stackoverflow(threadData);
273 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
274 // _newModif has no default value.
275 // _found has no default value.
276#line 891 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
277
278#line 891 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
279
280#line 280 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
281 { /* matchcontinue expression */
282 volatile modelica_metatype tmp4_1;
283 tmp4_1 = _comps;
284 {
285 modelica_metatype _r_comps = NULL((void*)0);
286 modelica_string _cName = NULL((void*)0);
287 modelica_metatype _modif = NULL((void*)0);
288 volatile mmc_switch_type tmp4;
289 int tmp5;
290 // _r_comps has no default value.
291 // _cName has no default value.
292 // _modif has no default value.
293 tmp4 = 0;
294 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
295 tmp3_top:
296 threadData->mmc_jumper = &new_mmc_jumper;
297 for (; tmp4 < 3; tmp4++) {
298 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
299 case 0: {
300 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
301 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
302#line 899 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
303 tmpMeta[0+0] = _oldModif;
304#line 899 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
305 tmp1_c1 = 0;
306#line 306 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
307 goto tmp3_done;
308 }
309 case 1: {
310 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
311 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
312 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
313 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
314 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
315
316 _cName = tmpMeta[5];
317 /* Pattern matching succeeded */
318#line 902 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
319 if((!(stringEqual(_cName, _argName)((((((*(mmc_uint_t*)((void*)((char*)(_cName) - 3)))) >>
(3)) - 8)) == (((((*(mmc_uint_t*)((void*)((char*)(_argName) -
3)))) >> (3)) - 8)) && !mmc_stringCompare(_cName
,_argName))
)))
320#line 902 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
321 {
322#line 902 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
323 goto goto_2;
324#line 324 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
325 }
326
327#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
328 tmpMeta[2] = mmc_mk_box2(4, &Absyn_Path_IDENT__desc, _cName);
329#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
330 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
331#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
332 tmpMeta[4] = mmc_mk_box3(4, &Absyn_EqMod_EQMOD__desc, _argValue, _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
333#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
334 tmpMeta[5] = mmc_mk_box3(3, &Absyn_Modification_CLASSMOD__desc, tmpMeta[3], tmpMeta[4]);
335#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
336 tmpMeta[6] = mmc_mk_box7(3, &Absyn_ElementArg_MODIFICATION__desc, mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)), tmpMeta[2], mmc_mk_some(tmpMeta[5]), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
337#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
338 _modif = tmpMeta[6];
339#line 339 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
340#line 905 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
341 tmpMeta[2] = mmc_mk_cons(_modif, _oldModif);
342#line 905 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
343 tmpMeta[0+0] = tmpMeta[2];
344#line 905 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
345 tmp1_c1 = 1;
346#line 346 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
347 goto tmp3_done;
348 }
349 case 2: {
350 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
351 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
352 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
353 _r_comps = tmpMeta[3];
354 /* Pattern matching succeeded */
355#line 909 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
356 tmpMeta[0+0] = omc_BlockCallRewrite_matchParamNamedArg(threadData, _argName, _argValue, _r_comps, _oldModif, &tmp1_c1);
357#line 357 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
358 goto tmp3_done;
359 }
360 }
361 goto tmp3_end;
362 tmp3_end: ;
363 }
364 goto goto_2;
365 tmp3_done:
366 (void)tmp4;
367 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
368 goto tmp3_done2;
369 goto_2:;
370 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
371 if (++tmp4 < 3) {
372 goto tmp3_top;
373 }
374 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
375 tmp3_done2:;
376 }
377 }
378 _newModif = tmpMeta[0+0];
379 _found = tmp1_c1;
380 _return: OMC_LABEL_UNUSED__attribute__((unused))
381 if (out_found) { *out_found = _found; }
382 return _newModif;
383}
384PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchParamNamedArg(threadData_t *threadData, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _comps, modelica_metatype _oldModif, modelica_metatype *out_found)
385{
386 modelica_boolean _found;
387 modelica_metatype _newModif = NULL((void*)0);
388 _newModif = omc_BlockCallRewrite_matchParamNamedArg(threadData, _argName, _argValue, _comps, _oldModif, &_found);
389 /* skip box _newModif; list<Absyn.ElementArg> */
390 if (out_found) { *out_found = mmc_mk_icon(_found); }
391 return _newModif;
392}
393
394PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgElems(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found)
395{
396 modelica_metatype _newEqs = NULL((void*)0);
397 modelica_metatype _newModif = NULL((void*)0);
398 modelica_boolean _found;
399 modelica_boolean tmp1_c2 __attribute__((unused)) = 0;
400 modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
401 MMC_SO()mmc_check_stackoverflow(threadData);
402 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
403 // _newEqs has no default value.
404 // _newModif has no default value.
405 // _found has no default value.
406#line 855 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
407
408#line 855 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
409
410#line 855 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
411
412#line 412 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
413 { /* matchcontinue expression */
414 volatile modelica_metatype tmp4_1;
415 tmp4_1 = _elems;
416 {
417 modelica_metatype _r_elems = NULL((void*)0);
418 modelica_metatype _eqs = NULL((void*)0);
419 modelica_metatype _modif = NULL((void*)0);
420 modelica_metatype _comps = NULL((void*)0);
421 volatile mmc_switch_type tmp4;
422 int tmp5;
423 // _r_elems has no default value.
424 // _eqs has no default value.
425 // _modif has no default value.
426 // _comps has no default value.
427 tmp4 = 0;
428 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
429 tmp3_top:
430 threadData->mmc_jumper = &new_mmc_jumper;
431 for (; tmp4 < 4; tmp4++) {
432 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
433 case 0: {
434 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
435 tmp4 += 3; /* Pattern matching succeeded; we may skip some cases if we fail */
436#line 864 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
437 tmpMeta[0+0] = _oldEqs;
438#line 864 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
439 tmpMeta[0+1] = _oldModif;
440#line 864 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
441 tmp1_c2 = 0;
442#line 442 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
443 goto tmp3_done;
444 }
445 case 1: {
446 modelica_boolean tmp6;
447 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
448 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
449 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
450 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
451 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
452 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
453 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (5)))))
;
454 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],3,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((3 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
455 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (2)))))
;
456 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (5)))))
;
457 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],2,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((0 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
458 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (4)))))
;
459
460 _comps = tmpMeta[9];
461 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
462#line 867 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
463 /* Pattern-matching tuple assignment */
464#line 867 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
465 tmpMeta[3] = omc_BlockCallRewrite_matchParamNamedArg(threadData, _argName, _argValue, _comps, _oldModif, &tmp6);
466#line 867 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
467 _modif = tmpMeta[3];
468#line 867 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
469 if (1 != tmp6) goto goto_2;
470#line 470 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
471#line 868 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
472 tmpMeta[0+0] = _oldEqs;
473#line 868 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
474 tmpMeta[0+1] = _modif;
475#line 868 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
476 tmp1_c2 = 1;
477#line 477 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
478 goto tmp3_done;
479 }
480 case 2: {
481 modelica_boolean tmp7;
482 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
483 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
484 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
485 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
486 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
487 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
488 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (5)))))
;
489 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],3,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((3 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
490 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (2)))))
;
491 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (5)))))
;
492 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],0,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((0 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
493 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (4)))))
;
494
495 _comps = tmpMeta[9];
496 /* Pattern matching succeeded */
497#line 872 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
498 /* Pattern-matching tuple assignment */
499#line 872 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
500 tmpMeta[3] = omc_BlockCallRewrite_matchVarNamedArg(threadData, _elemId, _argName, _argValue, _comps, _oldEqs, &tmp7);
501#line 872 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
502 _eqs = tmpMeta[3];
503#line 872 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
504 if (1 != tmp7) goto goto_2;
505#line 505 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
506#line 873 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
507 tmpMeta[0+0] = _eqs;
508#line 873 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
509 tmpMeta[0+1] = _oldModif;
510#line 873 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
511 tmp1_c2 = 1;
512#line 512 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
513 goto tmp3_done;
514 }
515 case 3: {
516 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
517 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
518 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
519 _r_elems = tmpMeta[4];
520 /* Pattern matching succeeded */
521#line 876 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
522 tmpMeta[0+0] = omc_BlockCallRewrite_matchNamedArgElems(threadData, _elemId, _argName, _argValue, _r_elems, _oldEqs, _oldModif, &tmpMeta[0+1], &tmp1_c2);
523#line 523 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
524 goto tmp3_done;
525 }
526 }
527 goto tmp3_end;
528 tmp3_end: ;
529 }
530 goto goto_2;
531 tmp3_done:
532 (void)tmp4;
533 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
534 goto tmp3_done2;
535 goto_2:;
536 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
537 if (++tmp4 < 4) {
538 goto tmp3_top;
539 }
540 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
541 tmp3_done2:;
542 }
543 }
544 _newEqs = tmpMeta[0+0];
545 _newModif = tmpMeta[0+1];
546 _found = tmp1_c2;
547 _return: OMC_LABEL_UNUSED__attribute__((unused))
548 if (out_newModif) { *out_newModif = _newModif; }
549 if (out_found) { *out_found = _found; }
550 return _newEqs;
551}
552PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_matchNamedArgElems(threadData_t *threadData, modelica_metatype _elemId, modelica_metatype _argName, modelica_metatype _argValue, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found)
553{
554 modelica_boolean _found;
555 modelica_metatype _newEqs = NULL((void*)0);
556 _newEqs = omc_BlockCallRewrite_matchNamedArgElems(threadData, _elemId, _argName, _argValue, _elems, _oldEqs, _oldModif, out_newModif, &_found);
557 /* skip box _newEqs; list<Absyn.EquationItem> */
558 /* skip box _newModif; list<Absyn.ElementArg> */
559 if (out_found) { *out_found = mmc_mk_icon(_found); }
560 return _newEqs;
561}
562
563PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgClass(threadData_t *threadData, modelica_string _elemId, modelica_string _argName, modelica_metatype _argValue, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif)
564{
565 modelica_metatype _newEqs = NULL((void*)0);
566 modelica_metatype _newModif = NULL((void*)0);
567 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
568 MMC_SO()mmc_check_stackoverflow(threadData);
569 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
570 // _newEqs has no default value.
571 // _newModif has no default value.
572#line 821 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
573
574#line 821 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
575
576#line 576 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
577 { /* matchcontinue expression */
578 volatile modelica_metatype tmp4_1;
579 tmp4_1 = _classes;
580 {
581 modelica_metatype _r_classes = NULL((void*)0);
582 modelica_metatype _elems1 = NULL((void*)0);
583 modelica_metatype _eq1 = NULL((void*)0);
584 modelica_metatype _modif = NULL((void*)0);
585 volatile mmc_switch_type tmp4;
586 int tmp5;
587 // _r_classes has no default value.
588 // _elems1 has no default value.
589 // _eq1 has no default value.
590 // _modif has no default value.
591 tmp4 = 0;
592 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
593 tmp3_top:
594 threadData->mmc_jumper = &new_mmc_jumper;
595 for (; tmp4 < 3; tmp4++) {
596 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
597 case 0: {
598 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
599 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
600#line 829 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
601 tmpMeta[0+0] = _oldEqs;
602#line 829 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
603 tmpMeta[0+1] = _oldModif;
604#line 604 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
605 goto tmp3_done;
606 }
607 case 1: {
608 modelica_boolean tmp6;
609 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
610 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
611 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
612 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
613 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
614 _elems1 = tmpMeta[4];
615 /* Pattern matching succeeded */
616#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
617 /* Pattern-matching tuple assignment */
618#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
619 tmpMeta[3] = omc_BlockCallRewrite_matchNamedArgElems(threadData, _elemId, _argName, _argValue, _elems1, _oldEqs, _oldModif, &tmpMeta[2], &tmp6);
620#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
621 _eq1 = tmpMeta[3];
622#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
623 if (1 != tmp6) goto goto_2;
624#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
625 _modif = tmpMeta[2];
626#line 626 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
627#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
628 tmpMeta[0+0] = _eq1;
629#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
630 tmpMeta[0+1] = _modif;
631#line 631 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
632 goto tmp3_done;
633 }
634 case 2: {
635 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
636 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
637 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
638 _r_classes = tmpMeta[3];
639 /* Pattern matching succeeded */
640#line 837 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
641 tmpMeta[0+0] = omc_BlockCallRewrite_matchNamedArgClass(threadData, _elemId, _argName, _argValue, _r_classes, _oldEqs, _oldModif, &tmpMeta[0+1]);
642#line 642 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
643 goto tmp3_done;
644 }
645 }
646 goto tmp3_end;
647 tmp3_end: ;
648 }
649 goto goto_2;
650 tmp3_done:
651 (void)tmp4;
652 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
653 goto tmp3_done2;
654 goto_2:;
655 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
656 if (++tmp4 < 3) {
657 goto tmp3_top;
658 }
659 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
660 tmp3_done2:;
661 }
662 }
663 _newEqs = tmpMeta[0+0];
664 _newModif = tmpMeta[0+1];
665 _return: OMC_LABEL_UNUSED__attribute__((unused))
666 if (out_newModif) { *out_newModif = _newModif; }
667 return _newEqs;
668}
669
670PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchNamedArgsClass(threadData_t *threadData, modelica_string _elemId, modelica_metatype _nargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif)
671{
672 modelica_metatype _newEqs = NULL((void*)0);
673 modelica_metatype _newModif = NULL((void*)0);
674 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
675 MMC_SO()mmc_check_stackoverflow(threadData);
676 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
677 // _newEqs has no default value.
678 // _newModif has no default value.
679#line 789 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
680
681#line 789 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
682
683#line 683 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
684 { /* match expression */
685 modelica_metatype tmp4_1;modelica_metatype tmp4_2;
686 tmp4_1 = _classes;
687 tmp4_2 = _nargs;
688 {
689 modelica_metatype _eq1 = NULL((void*)0);
690 modelica_metatype _r_nargs = NULL((void*)0);
691 modelica_metatype _modif = NULL((void*)0);
692 modelica_string _argName = NULL((void*)0);
693 modelica_metatype _argValue = NULL((void*)0);
694 volatile mmc_switch_type tmp4;
695 int tmp5;
696 // _eq1 has no default value.
697 // _r_nargs has no default value.
698 // _modif has no default value.
699 // _argName has no default value.
700 // _argValue has no default value.
701 tmp4 = 0;
702 for (; tmp4 < 3; tmp4++) {
703 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
704 case 0: {
705 if (!listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
706
707 /* Pattern matching succeeded */
708#line 799 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
709 tmpMeta[0+0] = _oldEqs;
710#line 799 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
711 tmpMeta[0+1] = _oldModif;
712#line 712 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
713 goto tmp3_done;
714 }
715 case 1: {
716 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
717
718 /* Pattern matching succeeded */
719#line 800 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
720 tmpMeta[0+0] = _oldEqs;
721#line 800 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
722 tmpMeta[0+1] = _oldModif;
723#line 723 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
724 goto tmp3_done;
725 }
726 case 2: {
727 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
728 tmpMeta[2] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
729 tmpMeta[3] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
730 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
731 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
732
733 _argName = tmpMeta[4];
734 _argValue = tmpMeta[5];
735 _r_nargs = tmpMeta[3];
736 /* Pattern matching succeeded */
737#line 803 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
738 _eq1 = omc_BlockCallRewrite_matchNamedArgClass(threadData, _elemId, _argName, _argValue, _classes, _oldEqs, _oldModif ,&_modif);
739#line 739 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
740#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
741 /* Tail recursive call */
742#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
743 _nargs = _r_nargs;
744#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
745 _oldEqs = _eq1;
746#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
747 _oldModif = _modif;
748#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
749 goto _tailrecursive;
750#line 804 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
751 /* TODO: Make sure any eventual dead code below is never generated */
752#line 752 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
753 goto tmp3_done;
754 }
755 }
756 goto tmp3_end;
757 tmp3_end: ;
758 }
759 goto goto_2;
760 goto_2:;
761 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
762 goto tmp3_done;
763 tmp3_done:;
764 }
765 }
766 _newEqs = tmpMeta[0+0];
767 _newModif = tmpMeta[0+1];
768 _return: OMC_LABEL_UNUSED__attribute__((unused))
769 if (out_newModif) { *out_newModif = _newModif; }
770 return _newEqs;
771}
772
773PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchVarArgs(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _comps, modelica_metatype _oldEqs, modelica_metatype *out_newArgs)
774{
775 modelica_metatype _newEqs = NULL((void*)0);
776 modelica_metatype _newArgs = NULL((void*)0);
777 modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
778 MMC_SO()mmc_check_stackoverflow(threadData);
779 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
780 // _newEqs has no default value.
781 // _newArgs has no default value.
782#line 759 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
783
784#line 759 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
785
786#line 786 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
787 { /* match expression */
788 modelica_metatype tmp4_1;modelica_metatype tmp4_2;
789 tmp4_1 = _comps;
790 tmp4_2 = _args;
791 {
792 modelica_metatype _r_comps = NULL((void*)0);
793 modelica_metatype _r_args = NULL((void*)0);
794 modelica_metatype _arg = NULL((void*)0);
795 modelica_string _cName = NULL((void*)0);
796 modelica_metatype _eq = NULL((void*)0);
797 volatile mmc_switch_type tmp4;
798 int tmp5;
799 // _r_comps has no default value.
800 // _r_args has no default value.
801 // _arg has no default value.
802 // _cName has no default value.
803 // _eq has no default value.
804 tmp4 = 0;
805 for (; tmp4 < 2; tmp4++) {
806 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
807 case 0: {
808 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
809
810 /* Pattern matching succeeded */
811#line 767 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
812 tmpMeta[0+0] = _oldEqs;
813#line 767 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
814 tmpMeta[0+1] = _args;
815#line 815 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
816 goto tmp3_done;
817 }
818 case 1: {
819 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
820 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
821 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
822 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
823 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
824 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
825 tmpMeta[6] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
826 tmpMeta[7] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
827 _cName = tmpMeta[5];
828 _r_comps = tmpMeta[3];
829 _arg = tmpMeta[6];
830 _r_args = tmpMeta[7];
831 /* Pattern matching succeeded */
832#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
833 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
834#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
835 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
836#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
837 tmpMeta[4] = mmc_mk_box3(5, &Absyn_ComponentRef_CREF__IDENT__desc, _cName, tmpMeta[3]);
838#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
839 tmpMeta[5] = mmc_mk_box4(4, &Absyn_ComponentRef_CREF__QUAL__desc, _elemId, tmpMeta[2], tmpMeta[4]);
840#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
841 tmpMeta[6] = mmc_mk_box2(5, &Absyn_Exp_CREF__desc, tmpMeta[5]);
842#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
843 tmpMeta[7] = mmc_mk_box3(4, &Absyn_Equation_EQ__EQUALS__desc, tmpMeta[6], _arg);
844#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
845 tmpMeta[8] = mmc_mk_box4(3, &Absyn_EquationItem_EQUATIONITEM__desc, tmpMeta[7], mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
846#line 770 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
847 _eq = tmpMeta[8];
848#line 848 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
849#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
850 tmpMeta[2] = mmc_mk_cons(_eq, _oldEqs);
851#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
852 /* Tail recursive call */
853#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
854 _args = _r_args;
855#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
856 _comps = _r_comps;
857#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
858 _oldEqs = tmpMeta[2];
859#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
860 goto _tailrecursive;
861#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
862 /* TODO: Make sure any eventual dead code below is never generated */
863#line 863 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
864 goto tmp3_done;
865 }
866 }
867 goto tmp3_end;
868 tmp3_end: ;
869 }
870 goto goto_2;
871 goto_2:;
872 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
873 goto tmp3_done;
874 tmp3_done:;
875 }
876 }
877 _newEqs = tmpMeta[0+0];
878 _newArgs = tmpMeta[0+1];
879 _return: OMC_LABEL_UNUSED__attribute__((unused))
880 if (out_newArgs) { *out_newArgs = _newArgs; }
881 return _newEqs;
882}
883
884PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchParamArgs(threadData_t *threadData, modelica_metatype _args, modelica_metatype _comps, modelica_metatype _oldModif, modelica_metatype *out_newArgs)
885{
886 modelica_metatype _newModif = NULL((void*)0);
887 modelica_metatype _newArgs = NULL((void*)0);
888 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
889 MMC_SO()mmc_check_stackoverflow(threadData);
890 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
891 // _newModif has no default value.
892 // _newArgs has no default value.
893#line 729 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
894
895#line 729 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
896
897#line 897 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
898 { /* match expression */
899 modelica_metatype tmp4_1;modelica_metatype tmp4_2;
900 tmp4_1 = _comps;
901 tmp4_2 = _args;
902 {
903 modelica_metatype _r_comps = NULL((void*)0);
904 modelica_metatype _r_args = NULL((void*)0);
905 modelica_metatype _arg = NULL((void*)0);
906 modelica_string _cName = NULL((void*)0);
907 modelica_metatype _modif = NULL((void*)0);
908 volatile mmc_switch_type tmp4;
909 int tmp5;
910 // _r_comps has no default value.
911 // _r_args has no default value.
912 // _arg has no default value.
913 // _cName has no default value.
914 // _modif has no default value.
915 tmp4 = 0;
916 for (; tmp4 < 3; tmp4++) {
917 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
918 case 0: {
919 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
920
921 /* Pattern matching succeeded */
922#line 737 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
923 tmpMeta[0+0] = _oldModif;
924#line 737 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
925 tmpMeta[0+1] = _args;
926#line 926 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
927 goto tmp3_done;
928 }
929 case 1: {
930 if (!listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
931
932 /* Pattern matching succeeded */
933#line 738 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
934 tmpMeta[0+0] = _oldModif;
935#line 738 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
936 tmpMeta[0+1] = _args;
937#line 937 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
938 goto tmp3_done;
939 }
940 case 2: {
941 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
942 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
943 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
944 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
945 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
946 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
947 tmpMeta[6] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
948 tmpMeta[7] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
949 _cName = tmpMeta[5];
950 _r_comps = tmpMeta[3];
951 _arg = tmpMeta[6];
952 _r_args = tmpMeta[7];
953 /* Pattern matching succeeded */
954#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
955 tmpMeta[2] = mmc_mk_box2(4, &Absyn_Path_IDENT__desc, _cName);
956#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
957 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
958#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
959 tmpMeta[4] = mmc_mk_box3(4, &Absyn_EqMod_EQMOD__desc, _arg, _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
960#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
961 tmpMeta[5] = mmc_mk_box3(3, &Absyn_Modification_CLASSMOD__desc, tmpMeta[3], tmpMeta[4]);
962#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
963 tmpMeta[6] = mmc_mk_box7(3, &Absyn_ElementArg_MODIFICATION__desc, mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), _OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)), tmpMeta[2], mmc_mk_some(tmpMeta[5]), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)));
964#line 741 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
965 _modif = tmpMeta[6];
966#line 966 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
967#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
968 tmpMeta[2] = mmc_mk_cons(_modif, _oldModif);
969#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
970 /* Tail recursive call */
971#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
972 _args = _r_args;
973#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
974 _comps = _r_comps;
975#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
976 _oldModif = tmpMeta[2];
977#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
978 goto _tailrecursive;
979#line 743 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
980 /* TODO: Make sure any eventual dead code below is never generated */
981#line 981 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
982 goto tmp3_done;
983 }
984 }
985 goto tmp3_end;
986 tmp3_end: ;
987 }
988 goto goto_2;
989 goto_2:;
990 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
991 goto tmp3_done;
992 tmp3_done:;
993 }
994 }
995 _newModif = tmpMeta[0+0];
996 _newArgs = tmpMeta[0+1];
997 _return: OMC_LABEL_UNUSED__attribute__((unused))
998 if (out_newArgs) { *out_newArgs = _newArgs; }
999 return _newModif;
1000}
1001
1002PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchArgsElems(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_newArgs)
1003{
1004 modelica_metatype _newEqs = NULL((void*)0);
1005 modelica_metatype _newModif = NULL((void*)0);
1006 modelica_metatype _newArgs = NULL((void*)0);
1007 modelica_metatype tmpMeta[12] __attribute__((unused)) = {0};
1008 MMC_SO()mmc_check_stackoverflow(threadData);
1009 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1010 // _newEqs has no default value.
1011 // _newModif has no default value.
1012 // _newArgs has no default value.
1013#line 693 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1014
1015#line 693 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1016
1017#line 693 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1018
1019#line 1019 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1020 { /* match expression */
1021 modelica_metatype tmp4_1;modelica_metatype tmp4_2;
1022 tmp4_1 = _args;
1023 tmp4_2 = _elems;
1024 {
1025 modelica_metatype _r_elems = NULL((void*)0);
1026 modelica_metatype _eqs = NULL((void*)0);
1027 modelica_metatype _modif = NULL((void*)0);
1028 modelica_metatype _comps = NULL((void*)0);
1029 modelica_metatype _r_args = NULL((void*)0);
1030 volatile mmc_switch_type tmp4;
1031 int tmp5;
1032 // _r_elems has no default value.
1033 // _eqs has no default value.
1034 // _modif has no default value.
1035 // _comps has no default value.
1036 // _r_args has no default value.
1037 tmp4 = 0;
1038 for (; tmp4 < 5; tmp4++) {
1039 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1040 case 0: {
1041 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1042
1043 /* Pattern matching succeeded */
1044#line 702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1045 tmpMeta[0+0] = _oldEqs;
1046#line 702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1047 tmpMeta[0+1] = _oldModif;
1048#line 702 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1049 tmpMeta[0+2] = _args;
1050#line 1050 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1051 goto tmp3_done;
1052 }
1053 case 1: {
1054 if (!listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1055
1056 /* Pattern matching succeeded */
1057#line 703 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1058 tmpMeta[0+0] = _oldEqs;
1059#line 703 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1060 tmpMeta[0+1] = _oldModif;
1061#line 703 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1062 tmpMeta[0+2] = _args;
1063#line 1063 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1064 goto tmp3_done;
1065 }
1066 case 2: {
1067 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1068 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1069 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1070 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1071 tmpMeta[5] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
1072 tmpMeta[6] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
1073 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1074 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (2)))))
;
1075 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[7],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1076 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (5)))))
;
1077 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],3,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((3 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
1078 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (2)))))
;
1079 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[9]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[9]) - 3
))) + (5)))))
;
1080 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[10],2,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3)))==(((0 +1
) << 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
1081 tmpMeta[11] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (4)))))
;
1082
1083 _r_args = tmpMeta[4];
1084 _comps = tmpMeta[11];
1085 _r_elems = tmpMeta[6];
1086 /* Pattern matching succeeded */
1087#line 706 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1088 _modif = omc_BlockCallRewrite_matchParamArgs(threadData, _args, _comps, _oldModif ,&_r_args);
1089#line 1089 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1090#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1091 /* Tail recursive call */
1092#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1093 _args = _r_args;
1094#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1095 _elems = _r_elems;
1096#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1097 _oldModif = _modif;
1098#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1099 goto _tailrecursive;
1100#line 707 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1101 /* TODO: Make sure any eventual dead code below is never generated */
1102#line 1102 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1103 goto tmp3_done;
1104 }
1105 case 3: {
1106 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1107 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1108 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1109 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1110 tmpMeta[5] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
1111 tmpMeta[6] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
1112 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1113 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (2)))))
;
1114 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[7],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1115 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (5)))))
;
1116 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],3,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((3 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
1117 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (2)))))
;
1118 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[9]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[9]) - 3
))) + (5)))))
;
1119 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[10],0,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3)))==(((0 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1120 tmpMeta[11] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (4)))))
;
1121
1122 _r_args = tmpMeta[4];
1123 _comps = tmpMeta[11];
1124 _r_elems = tmpMeta[6];
1125 /* Pattern matching succeeded */
1126#line 711 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1127 _eqs = omc_BlockCallRewrite_matchVarArgs(threadData, _elemId, _args, _comps, _oldEqs ,&_r_args);
1128#line 1128 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1129#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1130 /* Tail recursive call */
1131#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1132 _args = _r_args;
1133#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1134 _elems = _r_elems;
1135#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1136 _oldEqs = _eqs;
1137#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1138 goto _tailrecursive;
1139#line 712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1140 /* TODO: Make sure any eventual dead code below is never generated */
1141#line 1141 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1142 goto tmp3_done;
1143 }
1144 case 4: {
1145 if (listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1146 tmpMeta[3] = MMC_CAR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(1)))))
;
1147 tmpMeta[4] = MMC_CDR(tmp4_2)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_2) - 3))) +
(2)))))
;
1148
1149 _r_elems = tmpMeta[4];
1150 /* Pattern matching succeeded */
1151#line 715 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1152 /* Tail recursive call */
1153#line 715 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1154 _elems = _r_elems;
1155#line 715 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1156 goto _tailrecursive;
1157#line 715 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1158 /* TODO: Make sure any eventual dead code below is never generated */
1159#line 1159 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1160 goto tmp3_done;
1161 }
1162 }
1163 goto tmp3_end;
1164 tmp3_end: ;
1165 }
1166 goto goto_2;
1167 goto_2:;
1168 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1169 goto tmp3_done;
1170 tmp3_done:;
1171 }
1172 }
1173 _newEqs = tmpMeta[0+0];
1174 _newModif = tmpMeta[0+1];
1175 _newArgs = tmpMeta[0+2];
1176 _return: OMC_LABEL_UNUSED__attribute__((unused))
1177 if (out_newModif) { *out_newModif = _newModif; }
1178 if (out_newArgs) { *out_newArgs = _newArgs; }
1179 return _newEqs;
1180}
1181
1182PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_matchArgsClass(threadData_t *threadData, modelica_string _elemId, modelica_metatype _args, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif)
1183{
1184 modelica_metatype _newEqs = NULL((void*)0);
1185 modelica_metatype _newModif = NULL((void*)0);
1186 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
1187 MMC_SO()mmc_check_stackoverflow(threadData);
1188 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1189 // _newEqs has no default value.
1190 // _newModif has no default value.
1191#line 659 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1192
1193#line 659 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1194
1195#line 1195 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1196 { /* match expression */
1197 modelica_metatype tmp4_1;modelica_metatype tmp4_2;
1198 tmp4_1 = _classes;
1199 tmp4_2 = _args;
1200 {
1201 modelica_metatype _r_classes = NULL((void*)0);
1202 modelica_metatype _elems1 = NULL((void*)0);
1203 modelica_metatype _eq1 = NULL((void*)0);
1204 modelica_metatype _r_args = NULL((void*)0);
1205 modelica_metatype _modif = NULL((void*)0);
1206 volatile mmc_switch_type tmp4;
1207 int tmp5;
1208 // _r_classes has no default value.
1209 // _elems1 has no default value.
1210 // _eq1 has no default value.
1211 // _r_args has no default value.
1212 // _modif has no default value.
1213 tmp4 = 0;
1214 for (; tmp4 < 4; tmp4++) {
1215 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1216 case 0: {
1217 if (!listEmpty(tmp4_2)((*(mmc_uint_t*)((void*)((char*)(tmp4_2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1218
1219 /* Pattern matching succeeded */
1220#line 667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1221 tmpMeta[0+0] = _oldEqs;
1222#line 667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1223 tmpMeta[0+1] = _oldModif;
1224#line 1224 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1225 goto tmp3_done;
1226 }
1227 case 1: {
1228 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1229
1230 /* Pattern matching succeeded */
1231#line 668 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1232 tmpMeta[0+0] = _oldEqs;
1233#line 668 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1234 tmpMeta[0+1] = _oldModif;
1235#line 1235 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1236 goto tmp3_done;
1237 }
1238 case 2: {
1239 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1240 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1241 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1242 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1243 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (2)))))
;
1244
1245 _elems1 = tmpMeta[4];
1246 _r_classes = tmpMeta[3];
1247 /* Pattern matching succeeded */
1248#line 671 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1249 _eq1 = omc_BlockCallRewrite_matchArgsElems(threadData, _elemId, _args, _elems1, _oldEqs, _oldModif ,&_modif ,&_r_args);
1250#line 1250 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1251#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1252 /* Tail recursive call */
1253#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1254 _args = _r_args;
1255#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1256 _classes = _r_classes;
1257#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1258 _oldEqs = _eq1;
1259#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1260 _oldModif = _modif;
1261#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1262 goto _tailrecursive;
1263#line 672 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1264 /* TODO: Make sure any eventual dead code below is never generated */
1265#line 1265 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1266 goto tmp3_done;
1267 }
1268 case 3: {
1269 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1270 tmpMeta[2] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1271 tmpMeta[3] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1272
1273 _r_classes = tmpMeta[3];
1274 /* Pattern matching succeeded */
1275#line 676 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1276 /* Tail recursive call */
1277#line 676 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1278 _classes = _r_classes;
1279#line 676 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1280 goto _tailrecursive;
1281#line 676 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1282 /* TODO: Make sure any eventual dead code below is never generated */
1283#line 1283 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1284 goto tmp3_done;
1285 }
1286 }
1287 goto tmp3_end;
1288 tmp3_end: ;
1289 }
1290 goto goto_2;
1291 goto_2:;
1292 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1293 goto tmp3_done;
1294 tmp3_done:;
1295 }
1296 }
1297 _newEqs = tmpMeta[0+0];
1298 _newModif = tmpMeta[0+1];
1299 _return: OMC_LABEL_UNUSED__attribute__((unused))
1300 if (out_newModif) { *out_newModif = _newModif; }
1301 return _newEqs;
1302}
1303
1304PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseArgs(threadData_t *threadData, modelica_string _elemId, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_mods)
1305{
1306 modelica_metatype _eqs = NULL((void*)0);
1307 modelica_metatype _mods = NULL((void*)0);
1308 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
1309 MMC_SO()mmc_check_stackoverflow(threadData);
1310 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1311 // _eqs has no default value.
1312 // _mods has no default value.
1313#line 621 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1314
1315#line 621 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1316
1317#line 1317 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1318 { /* match expression */
1319 modelica_metatype tmp4_1;
1320 tmp4_1 = _fargs;
1321 {
1322 modelica_metatype _args = NULL((void*)0);
1323 modelica_metatype _argNames = NULL((void*)0);
1324 modelica_metatype _eqs1 = NULL((void*)0);
1325 modelica_metatype _mods1 = NULL((void*)0);
1326 volatile mmc_switch_type tmp4;
1327 int tmp5;
1328 // _args has no default value.
1329 // _argNames has no default value.
1330 // _eqs1 has no default value.
1331 // _mods1 has no default value.
1332 tmp4 = 0;
1333 for (; tmp4 < 1; tmp4++) {
1334 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1335 case 0: {
1336 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1337 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1338 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
1339 _args = tmpMeta[2];
1340 _argNames = tmpMeta[3];
1341 /* Pattern matching succeeded */
1342#line 631 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1343 _eqs1 = omc_BlockCallRewrite_matchArgsClass(threadData, _elemId, _args, _classes, _oldEqs, _oldModif ,&_mods1);
1344#line 1344 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1345#line 632 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1346 tmpMeta[0+0] = omc_BlockCallRewrite_matchNamedArgsClass(threadData, _elemId, _argNames, _classes, _eqs1, _mods1, &tmpMeta[0+1]);
1347#line 1347 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1348 goto tmp3_done;
1349 }
1350 }
1351 goto tmp3_end;
1352 tmp3_end: ;
1353 }
1354 goto goto_2;
1355 goto_2:;
1356 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1357 goto tmp3_done;
1358 tmp3_done:;
1359 }
1360 }
1361 _eqs = tmpMeta[0+0];
1362 _mods = tmpMeta[0+1];
1363 _return: OMC_LABEL_UNUSED__attribute__((unused))
1364 if (out_mods) { *out_mods = _mods; }
1365 return _eqs;
1366}
1367
1368PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_lookThroughElems(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _fargs, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found)
1369{
1370 modelica_metatype _newEqs = NULL((void*)0);
1371 modelica_metatype _newModif = NULL((void*)0);
1372 modelica_boolean _found;
1373 modelica_boolean tmp1_c2 __attribute__((unused)) = 0;
1374 modelica_metatype tmpMeta[12] __attribute__((unused)) = {0};
1375 MMC_SO()mmc_check_stackoverflow(threadData);
1376 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1377 // _newEqs has no default value.
1378 // _newModif has no default value.
1379 // _found has no default value.
1380#line 579 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1381
1382#line 579 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1383
1384#line 579 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1385
1386#line 1386 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1387 { /* matchcontinue expression */
1388 volatile modelica_metatype tmp4_1;
1389 tmp4_1 = _elems;
1390 {
1391 modelica_metatype _r_elems = NULL((void*)0);
1392 modelica_metatype _eqs = NULL((void*)0);
1393 modelica_metatype _mods = NULL((void*)0);
1394 modelica_metatype _classParts = NULL((void*)0);
1395 modelica_string _id2 = NULL((void*)0);
1396 volatile mmc_switch_type tmp4;
1397 int tmp5;
1398 // _r_elems has no default value.
1399 // _eqs has no default value.
1400 // _mods has no default value.
1401 // _classParts has no default value.
1402 // _id2 has no default value.
1403 tmp4 = 0;
1404 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
1405 tmp3_top:
1406 threadData->mmc_jumper = &new_mmc_jumper;
1407 for (; tmp4 < 4; tmp4++) {
1408 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1409 case 0: {
1410 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1411 tmp4 += 3; /* Pattern matching succeeded; we may skip some cases if we fail */
1412#line 590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1413 tmpMeta[0+0] = _oldEqs;
1414#line 590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1415 tmpMeta[0+1] = _oldModif;
1416#line 590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1417 tmp1_c2 = 0;
1418#line 1418 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1419 goto tmp3_done;
1420 }
1421 case 1: {
1422 modelica_boolean tmp6;
1423 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1424 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1425 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1426 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1427 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
1428 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1429 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (5)))))
;
1430 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1431 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (3)))))
;
1432 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (2)))))
;
1433 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (6)))))
;
1434 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[9],4,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[9]) - 3)))==(((0 +1)
<< 10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
1435 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (7)))))
;
1436 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[10],0,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[10]) - 3)))==(((5 +1
) << 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1437 tmpMeta[11] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[10]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[10]) - 3
))) + (4)))))
;
1438
1439 _id2 = tmpMeta[8];
1440 _classParts = tmpMeta[11];
1441 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
1442#line 594 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1443 /* Pattern-matching assignment */
1444#line 594 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1445 tmp6 = (stringEqual(_id2, _id)((((((*(mmc_uint_t*)((void*)((char*)(_id2) - 3)))) >> (
3)) - 8)) == (((((*(mmc_uint_t*)((void*)((char*)(_id) - 3))))
>> (3)) - 8)) && !mmc_stringCompare(_id2,_id))
);
1446#line 594 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1447 if (1 != tmp6) goto goto_2;
1448#line 1448 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1449
1450#line 595 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1451 tmpMeta[3] = stringAppend(_OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)),_id);
1452#line 595 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1453 tmpMeta[4] = stringAppend(tmpMeta[3],intString(_instNo));
1454#line 595 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1455 _eqs = omc_BlockCallRewrite_parseArgs(threadData, tmpMeta[4], _classParts, _fargs, _oldEqs, _oldModif ,&_mods);
1456#line 1456 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1457#line 596 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1458 tmpMeta[0+0] = _eqs;
1459#line 596 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1460 tmpMeta[0+1] = _mods;
1461#line 596 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1462 tmp1_c2 = 1;
1463#line 1463 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1464 goto tmp3_done;
1465 }
1466 case 2: {
1467 modelica_boolean tmp7;
1468 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1469 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1470 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1471 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1472 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
1473 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[5],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1474 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[5]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (5)))))
;
1475 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1476 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[6]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[6]) - 3
))) + (3)))))
;
1477 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (6)))))
;
1478 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],8,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((0 +1)
<< 10) + (((8 +3) & 255) << 2)))
== 0) goto tmp3_end;
1479 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (7)))))
;
1480 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[9],0,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[9]) - 3)))==(((5 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1481 tmpMeta[10] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[9]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[9]) - 3
))) + (4)))))
;
1482
1483 _classParts = tmpMeta[10];
1484 /* Pattern matching succeeded */
1485#line 601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1486 /* Pattern-matching tuple assignment */
1487#line 601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1488 tmpMeta[4] = omc_BlockCallRewrite_lookThroughClasses(threadData, _id, _instNo, _fargs, _classParts, _oldEqs, _oldModif, &tmpMeta[3], &tmp7);
1489#line 601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1490 _eqs = tmpMeta[4];
1491#line 601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1492 if (1 != tmp7) goto goto_2;
1493#line 601 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1494 _mods = tmpMeta[3];
1495#line 1495 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1496#line 602 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1497 tmpMeta[0+0] = _eqs;
1498#line 602 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1499 tmpMeta[0+1] = _mods;
1500#line 602 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1501 tmp1_c2 = 1;
1502#line 1502 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1503 goto tmp3_done;
1504 }
1505 case 3: {
1506 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1507 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1508 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1509 _r_elems = tmpMeta[4];
1510 /* Pattern matching succeeded */
1511#line 604 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1512 tmpMeta[0+0] = omc_BlockCallRewrite_lookThroughElems(threadData, _id, _instNo, _fargs, _r_elems, _oldEqs, _oldModif, &tmpMeta[0+1], &tmp1_c2);
1513#line 1513 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1514 goto tmp3_done;
1515 }
1516 }
1517 goto tmp3_end;
1518 tmp3_end: ;
1519 }
1520 goto goto_2;
1521 tmp3_done:
1522 (void)tmp4;
1523 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1524 goto tmp3_done2;
1525 goto_2:;
1526 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1527 if (++tmp4 < 4) {
1528 goto tmp3_top;
1529 }
1530 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1531 tmp3_done2:;
1532 }
1533 }
1534 _newEqs = tmpMeta[0+0];
1535 _newModif = tmpMeta[0+1];
1536 _found = tmp1_c2;
1537 _return: OMC_LABEL_UNUSED__attribute__((unused))
1538 if (out_newModif) { *out_newModif = _newModif; }
1539 if (out_found) { *out_found = _found; }
1540 return _newEqs;
1541}
1542PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_lookThroughElems(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _fargs, modelica_metatype _elems, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found)
1543{
1544 modelica_integer tmp1;
1545 modelica_boolean _found;
1546 modelica_metatype _newEqs = NULL((void*)0);
1547 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
1548 _newEqs = omc_BlockCallRewrite_lookThroughElems(threadData, _id, tmp1, _fargs, _elems, _oldEqs, _oldModif, out_newModif, &_found);
1549 /* skip box _newEqs; list<Absyn.EquationItem> */
1550 /* skip box _newModif; list<Absyn.ElementArg> */
1551 if (out_found) { *out_found = mmc_mk_icon(_found); }
1552 return _newEqs;
1553}
1554
1555PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_lookThroughClasses(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _fargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found)
1556{
1557 modelica_metatype _newEqs = NULL((void*)0);
1558 modelica_metatype _newModif = NULL((void*)0);
1559 modelica_boolean _found;
1560 modelica_boolean tmp1_c2 __attribute__((unused)) = 0;
1561 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
1562 MMC_SO()mmc_check_stackoverflow(threadData);
1563 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1564 // _newEqs has no default value.
1565 // _newModif has no default value.
1566 // _found has no default value.
1567#line 546 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1568
1569#line 546 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1570
1571#line 546 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1572
1573#line 1573 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1574 { /* matchcontinue expression */
1575 volatile modelica_metatype tmp4_1;
1576 tmp4_1 = _classes;
1577 {
1578 modelica_metatype _r_classes = NULL((void*)0);
1579 modelica_metatype _elems1 = NULL((void*)0);
1580 modelica_metatype _eq1 = NULL((void*)0);
1581 modelica_metatype _modif = NULL((void*)0);
1582 volatile mmc_switch_type tmp4;
1583 int tmp5;
1584 // _r_classes has no default value.
1585 // _elems1 has no default value.
1586 // _eq1 has no default value.
1587 // _modif has no default value.
1588 tmp4 = 0;
1589 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
1590 tmp3_top:
1591 threadData->mmc_jumper = &new_mmc_jumper;
1592 for (; tmp4 < 3; tmp4++) {
1593 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1594 case 0: {
1595 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1596 tmp4 += 2; /* Pattern matching succeeded; we may skip some cases if we fail */
1597#line 555 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1598 tmpMeta[0+0] = _oldEqs;
1599#line 555 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1600 tmpMeta[0+1] = _oldModif;
1601#line 555 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1602 tmp1_c2 = 0;
1603#line 1603 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1604 goto tmp3_done;
1605 }
1606 case 1: {
1607 modelica_boolean tmp6;
1608 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1609 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1610 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1611 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],0,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((1 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1612 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
;
1613 _elems1 = tmpMeta[5];
1614 /* Pattern matching succeeded */
1615#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1616 /* Pattern-matching tuple assignment */
1617#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1618 tmpMeta[4] = omc_BlockCallRewrite_lookThroughElems(threadData, _id, _instNo, _fargs, _elems1, _oldEqs, _oldModif, &tmpMeta[3], &tmp6);
1619#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1620 _eq1 = tmpMeta[4];
1621#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1622 if (1 != tmp6) goto goto_2;
1623#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1624 _modif = tmpMeta[3];
1625#line 1625 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1626#line 559 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1627 tmpMeta[0+0] = _eq1;
1628#line 559 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1629 tmpMeta[0+1] = _modif;
1630#line 559 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1631 tmp1_c2 = 1;
1632#line 1632 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1633 goto tmp3_done;
1634 }
1635 case 2: {
1636 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1637 tmpMeta[3] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1638 tmpMeta[4] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1639 _r_classes = tmpMeta[4];
1640 /* Pattern matching succeeded */
1641#line 561 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1642 tmpMeta[0+0] = omc_BlockCallRewrite_lookThroughClasses(threadData, _id, _instNo, _fargs, _r_classes, _oldEqs, _oldModif, &tmpMeta[0+1], &tmp1_c2);
1643#line 1643 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1644 goto tmp3_done;
1645 }
1646 }
1647 goto tmp3_end;
1648 tmp3_end: ;
1649 }
1650 goto goto_2;
1651 tmp3_done:
1652 (void)tmp4;
1653 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1654 goto tmp3_done2;
1655 goto_2:;
1656 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1657 if (++tmp4 < 3) {
1658 goto tmp3_top;
1659 }
1660 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1661 tmp3_done2:;
1662 }
1663 }
1664 _newEqs = tmpMeta[0+0];
1665 _newModif = tmpMeta[0+1];
1666 _found = tmp1_c2;
1667 _return: OMC_LABEL_UNUSED__attribute__((unused))
1668 if (out_newModif) { *out_newModif = _newModif; }
1669 if (out_found) { *out_found = _found; }
1670 return _newEqs;
1671}
1672PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_lookThroughClasses(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _fargs, modelica_metatype _classes, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found)
1673{
1674 modelica_integer tmp1;
1675 modelica_boolean _found;
1676 modelica_metatype _newEqs = NULL((void*)0);
1677 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
1678 _newEqs = omc_BlockCallRewrite_lookThroughClasses(threadData, _id, tmp1, _fargs, _classes, _oldEqs, _oldModif, out_newModif, &_found);
1679 /* skip box _newEqs; list<Absyn.EquationItem> */
1680 /* skip box _newModif; list<Absyn.ElementArg> */
1681 if (out_found) { *out_found = mmc_mk_icon(_found); }
1682 return _newEqs;
1683}
1684
1685PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassesDefs(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found, modelica_integer *out_newInstNo)
1686{
1687 modelica_metatype _newEqs = NULL((void*)0);
1688 modelica_metatype _newModif = NULL((void*)0);
1689 modelica_boolean _found;
1690 modelica_integer _newInstNo;
1691 modelica_boolean tmp1_c2 __attribute__((unused)) = 0;
1692 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
1693 modelica_metatype tmpMeta[10] __attribute__((unused)) = {0};
1694 MMC_SO()mmc_check_stackoverflow(threadData);
1695 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1696 // _newEqs has no default value.
1697 // _newModif has no default value.
1698 // _found has no default value.
1699 // _newInstNo has no default value.
1700#line 505 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1701
1702#line 505 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1703
1704#line 505 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1705
1706#line 505 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1707
1708#line 1708 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1709 { /* matchcontinue expression */
1710 volatile modelica_metatype tmp4_1;
1711 tmp4_1 = _classes;
1712 {
1713 modelica_metatype _r_classes = NULL((void*)0);
1714 modelica_string _id2 = NULL((void*)0);
1715 modelica_metatype _mods = NULL((void*)0);
1716 modelica_metatype _classParts = NULL((void*)0);
1717 modelica_metatype _eqs = NULL((void*)0);
1718 volatile mmc_switch_type tmp4;
1719 int tmp5;
1720 // _r_classes has no default value.
1721 // _id2 has no default value.
1722 // _mods has no default value.
1723 // _classParts has no default value.
1724 // _eqs has no default value.
1725 tmp4 = 0;
1726 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
1727 tmp3_top:
1728 threadData->mmc_jumper = &new_mmc_jumper;
1729 for (; tmp4 < 4; tmp4++) {
1730 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1731 case 0: {
1732 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1733 tmp4 += 3; /* Pattern matching succeeded; we may skip some cases if we fail */
1734#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1735 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1736#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1737 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1738#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1739 tmpMeta[0+0] = tmpMeta[4];
1740#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1741 tmpMeta[0+1] = tmpMeta[5];
1742#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1743 tmp1_c2 = 0;
1744#line 512 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1745 tmp1_c3 = _instNo;
1746#line 1746 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1747 goto tmp3_done;
1748 }
1749 case 1: {
1750 modelica_boolean tmp6;
1751 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1752 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1753 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1754 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (6)))))
;
1755 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[6],8,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[6]) - 3)))==(((0 +1)
<< 10) + (((8 +3) & 255) << 2)))
== 0) goto tmp3_end;
1756 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (7)))))
;
1757 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[7],0,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3)))==(((5 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1758 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[7]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[7]) - 3
))) + (4)))))
;
1759
1760 _classParts = tmpMeta[8];
1761 tmp4 += 1; /* Pattern matching succeeded; we may skip some cases if we fail */
1762#line 518 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1763 /* Pattern-matching tuple assignment */
1764#line 518 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1765 tmpMeta[5] = omc_BlockCallRewrite_lookThroughClasses(threadData, _id, _instNo, _fargs, _classParts, _oldEqs, _oldModif, &tmpMeta[4], &tmp6);
1766#line 518 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1767 _eqs = tmpMeta[5];
1768#line 518 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1769 if (1 != tmp6) goto goto_2;
1770#line 518 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1771 _mods = tmpMeta[4];
1772#line 1772 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1773#line 519 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1774 tmpMeta[0+0] = _eqs;
1775#line 519 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1776 tmpMeta[0+1] = _mods;
1777#line 519 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1778 tmp1_c2 = 1;
1779#line 519 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1780 tmp1_c3 = ((modelica_integer) 1) + _instNo;
1781#line 1781 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1782 goto tmp3_done;
1783 }
1784 case 2: {
1785 modelica_boolean tmp7;
1786 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1787 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1788 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1789 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
1790 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (6)))))
;
1791 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[7],4,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[7]) - 3)))==(((0 +1)
<< 10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
1792 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (7)))))
;
1793 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[8],0,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[8]) - 3)))==(((5 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
1794 tmpMeta[9] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[8]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[8]) - 3
))) + (4)))))
;
1795
1796 _id2 = tmpMeta[6];
1797 _classParts = tmpMeta[9];
1798 /* Pattern matching succeeded */
1799#line 524 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1800 /* Pattern-matching assignment */
1801#line 524 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1802 tmp7 = (stringEqual(_id2, _id)((((((*(mmc_uint_t*)((void*)((char*)(_id2) - 3)))) >> (
3)) - 8)) == (((((*(mmc_uint_t*)((void*)((char*)(_id) - 3))))
>> (3)) - 8)) && !mmc_stringCompare(_id2,_id))
);
1803#line 524 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1804 if (1 != tmp7) goto goto_2;
1805#line 1805 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1806
1807#line 525 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1808 tmpMeta[4] = stringAppend(_OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)),_id);
1809#line 525 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1810 tmpMeta[5] = stringAppend(tmpMeta[4],intString(_instNo));
1811#line 525 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1812 _eqs = omc_BlockCallRewrite_parseArgs(threadData, tmpMeta[5], _classParts, _fargs, _oldEqs, _oldModif ,&_mods);
1813#line 1813 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1814#line 527 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1815 tmpMeta[0+0] = _eqs;
1816#line 527 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1817 tmpMeta[0+1] = _mods;
1818#line 527 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1819 tmp1_c2 = 1;
1820#line 527 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1821 tmp1_c3 = ((modelica_integer) 1) + _instNo;
1822#line 1822 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1823 goto tmp3_done;
1824 }
1825 case 3: {
1826 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
1827 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
1828 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
1829 _r_classes = tmpMeta[5];
1830 /* Pattern matching succeeded */
1831#line 529 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1832 tmpMeta[0+0] = omc_BlockCallRewrite_parseClassesDefs(threadData, _id, _instNo, _r_classes, _fargs, _oldEqs, _oldModif, &tmpMeta[0+1], &tmp1_c2, &tmp1_c3);
1833#line 1833 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1834 goto tmp3_done;
1835 }
1836 }
1837 goto tmp3_end;
1838 tmp3_end: ;
1839 }
1840 goto goto_2;
1841 tmp3_done:
1842 (void)tmp4;
1843 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
1844 goto tmp3_done2;
1845 goto_2:;
1846 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
1847 if (++tmp4 < 4) {
1848 goto tmp3_top;
1849 }
1850 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1851 tmp3_done2:;
1852 }
1853 }
1854 _newEqs = tmpMeta[0+0];
1855 _newModif = tmpMeta[0+1];
1856 _found = tmp1_c2;
1857 _newInstNo = tmp1_c3;
1858 _return: OMC_LABEL_UNUSED__attribute__((unused))
1859 if (out_newModif) { *out_newModif = _newModif; }
1860 if (out_found) { *out_found = _found; }
1861 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
1862 return _newEqs;
1863}
1864PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassesDefs(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _classes, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found, modelica_metatype *out_newInstNo)
1865{
1866 modelica_integer tmp1;
1867 modelica_boolean _found;
1868 modelica_integer _newInstNo;
1869 modelica_metatype _newEqs = NULL((void*)0);
1870 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
1871 _newEqs = omc_BlockCallRewrite_parseClassesDefs(threadData, _id, tmp1, _classes, _fargs, _oldEqs, _oldModif, out_newModif, &_found, &_newInstNo);
1872 /* skip box _newEqs; list<Absyn.EquationItem> */
1873 /* skip box _newModif; list<Absyn.ElementArg> */
1874 if (out_found) { *out_found = mmc_mk_icon(_found); }
1875 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
1876 return _newEqs;
1877}
1878
1879PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_getDefinition(threadData_t *threadData, modelica_string _id, modelica_integer _instNo, modelica_metatype _defs, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_boolean *out_found, modelica_integer *out_newInstNo)
1880{
1881 modelica_metatype _newEqs = NULL((void*)0);
1882 modelica_metatype _newModif = NULL((void*)0);
1883 modelica_boolean _found;
1884 modelica_integer _newInstNo;
1885 modelica_boolean tmp1_c2 __attribute__((unused)) = 0;
1886 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
1887 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
1888 MMC_SO()mmc_check_stackoverflow(threadData);
1889 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1890 // _newEqs has no default value.
1891 // _newModif has no default value.
1892 // _found has no default value.
1893 // _newInstNo has no default value.
1894#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1895
1896#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1897
1898#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1899
1900#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1901
1902#line 1902 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1903 { /* match expression */
1904 modelica_metatype tmp4_1;
1905 tmp4_1 = _defs;
1906 {
1907 volatile mmc_switch_type tmp4;
1908 int tmp5;
1909 tmp4 = 0;
1910 for (; tmp4 < 1; tmp4++) {
1911 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
1912 case 0: {
1913
1914 /* Pattern matching succeeded */
1915#line 483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1916 tmpMeta[0+0] = omc_BlockCallRewrite_parseClassesDefs(threadData, _id, _instNo, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_defs), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_defs) - 3))) +
(2)))))
), _fargs, _oldEqs, _oldModif, &tmpMeta[0+1], &tmp1_c2, &tmp1_c3);
1917#line 1917 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1918 goto tmp3_done;
1919 }
1920 }
1921 goto tmp3_end;
1922 tmp3_end: ;
1923 }
1924 goto goto_2;
1925 goto_2:;
1926 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1927 goto tmp3_done;
1928 tmp3_done:;
1929 }
1930 }
1931 _newEqs = tmpMeta[0+0];
1932 _newModif = tmpMeta[0+1];
1933 _found = tmp1_c2;
1934 _newInstNo = tmp1_c3;
1935 _return: OMC_LABEL_UNUSED__attribute__((unused))
1936 if (out_newModif) { *out_newModif = _newModif; }
1937 if (out_found) { *out_found = _found; }
1938 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
1939 return _newEqs;
1940}
1941PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_getDefinition(threadData_t *threadData, modelica_metatype _id, modelica_metatype _instNo, modelica_metatype _defs, modelica_metatype _fargs, modelica_metatype _oldEqs, modelica_metatype _oldModif, modelica_metatype *out_newModif, modelica_metatype *out_found, modelica_metatype *out_newInstNo)
1942{
1943 modelica_integer tmp1;
1944 modelica_boolean _found;
1945 modelica_integer _newInstNo;
1946 modelica_metatype _newEqs = NULL((void*)0);
1947 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
1948 _newEqs = omc_BlockCallRewrite_getDefinition(threadData, _id, tmp1, _defs, _fargs, _oldEqs, _oldModif, out_newModif, &_found, &_newInstNo);
1949 /* skip box _newEqs; list<Absyn.EquationItem> */
1950 /* skip box _newModif; list<Absyn.ElementArg> */
1951 if (out_found) { *out_found = mmc_mk_icon(_found); }
1952 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
1953 return _newEqs;
1954}
1955
1956PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseCall(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_integer _instNo, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype *out_newEqs, modelica_metatype *out_newElems, modelica_integer *out_newInstNo)
1957{
1958 modelica_metatype _res_expr = NULL((void*)0);
1959 modelica_metatype _newEqs = NULL((void*)0);
1960 modelica_metatype _newElems = NULL((void*)0);
1961 modelica_integer _newInstNo;
1962 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
1963 modelica_metatype tmpMeta[14] __attribute__((unused)) = {0};
1964 MMC_SO()mmc_check_stackoverflow(threadData);
1965 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1966 // _res_expr has no default value.
1967 // _newEqs has no default value.
1968 // _newElems has no default value.
1969 // _newInstNo has no default value.
1970#line 439 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1971
1972#line 439 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1973
1974#line 439 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1975
1976#line 439 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
1977
1978#line 1978 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
1979 { /* matchcontinue expression */
1980 volatile modelica_metatype tmp4_1;
1981 tmp4_1 = _in_eq;
1982 {
1983 modelica_metatype _fargs = NULL((void*)0);
1984 modelica_metatype _crf = NULL((void*)0);
1985 modelica_string _elName = NULL((void*)0);
1986 modelica_metatype _elem = NULL((void*)0);
1987 modelica_string _id = NULL((void*)0);
1988 modelica_metatype _mods = NULL((void*)0);
1989 modelica_metatype _eqs = NULL((void*)0);
1990 modelica_integer _count;
1991 volatile mmc_switch_type tmp4;
1992 int tmp5;
1993 // _fargs has no default value.
1994 // _crf has no default value.
1995 // _elName has no default value.
1996 // _elem has no default value.
1997 // _id has no default value.
1998 // _mods has no default value.
1999 // _eqs has no default value.
2000 // _count has no default value.
2001 tmp4 = 0;
2002 MMC_TRY_INTERNAL(mmc_jumper){ jmp_buf new_mmc_jumper, *old_jumper __attribute__((unused))
= threadData->mmc_jumper; threadData->mmc_jumper = &
new_mmc_jumper; if (_setjmp (new_mmc_jumper) == 0) {
2003 tmp3_top:
2004 threadData->mmc_jumper = &new_mmc_jumper;
2005 for (; tmp4 < 2; tmp4++) {
2006 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
2007 case 0: {
2008 modelica_boolean tmp6;
2009 modelica_integer tmp7;
2010 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
2011 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2012 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],2,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((2 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
2013 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
2014 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2015 _id = tmpMeta[5];
2016 _fargs = tmpMeta[6];
2017 /* Pattern matching succeeded */
2018#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2019 /* Pattern-matching tuple assignment */
2020#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2021 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2022#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2023 tmpMeta[6] = omc_BlockCallRewrite_getDefinition(threadData, _id, _instNo, _defs, _fargs, _oldEqs, tmpMeta[5], &tmpMeta[4], &tmp6, &tmp7);
2024#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2025 _eqs = tmpMeta[6];
2026#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2027 if (1 != tmp6) goto goto_2;
2028#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2029 _mods = tmpMeta[4];
2030#line 454 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2031 _count = tmp7;
2032#line 2032 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2033
2034#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2035 tmpMeta[4] = stringAppend(_OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)),_id);
2036#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2037 tmpMeta[5] = stringAppend(tmpMeta[4],intString(_instNo));
2038#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2039 _elName = tmpMeta[5];
2040#line 2040 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2041
2042#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2043 tmpMeta[4] = mmc_mk_box2(4, &Absyn_Path_IDENT__desc, _id);
2044#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2045 tmpMeta[5] = mmc_mk_box3(3, &Absyn_TypeSpec_TPATH__desc, tmpMeta[4], mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)));
2046#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2047 tmpMeta[7] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2048#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2049 tmpMeta[8] = mmc_mk_box3(3, &Absyn_Modification_CLASSMOD__desc, _mods, _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)));
2050#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2051 tmpMeta[9] = mmc_mk_box4(3, &Absyn_Component_COMPONENT__desc, _elName, tmpMeta[7], mmc_mk_some(tmpMeta[8]));
2052#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2053 tmpMeta[10] = mmc_mk_box4(3, &Absyn_ComponentItem_COMPONENTITEM__desc, tmpMeta[9], mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)));
2054#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2055 tmpMeta[6] = mmc_mk_cons(tmpMeta[10], MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
2056#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2057 tmpMeta[11] = mmc_mk_box4(6, &Absyn_ElementSpec_COMPONENTS__desc, _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)), tmpMeta[5], tmpMeta[6]);
2058#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2059 tmpMeta[12] = mmc_mk_box7(3, &Absyn_Element_ELEMENT__desc, mmc_mk_boolean(0)((0) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3)), tmpMeta[11], _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)));
2060#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2061 tmpMeta[13] = mmc_mk_box2(3, &Absyn_ElementItem_ELEMENTITEM__desc, tmpMeta[12]);
2062#line 458 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2063 _elem = tmpMeta[13];
2064#line 2064 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2065#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2066 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2067#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2068 tmpMeta[5] = mmc_mk_box4(4, &Absyn_ComponentRef_CREF__QUAL__desc, _elName, tmpMeta[4], _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)));
2069#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2070 tmpMeta[6] = mmc_mk_box2(5, &Absyn_Exp_CREF__desc, tmpMeta[5]);
2071#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2072 tmpMeta[7] = mmc_mk_cons(_elem, _oldElems);
2073#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2074 tmpMeta[0+0] = tmpMeta[6];
2075#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2076 tmpMeta[0+1] = _eqs;
2077#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2078 tmpMeta[0+2] = tmpMeta[7];
2079#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2080 tmp1_c3 = _count;
2081#line 2081 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2082 goto tmp3_done;
2083 }
2084 case 1: {
2085 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
2086 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2087 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2088 _crf = tmpMeta[4];
2089 _fargs = tmpMeta[5];
2090 /* Pattern matching succeeded */
2091#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2092 tmpMeta[4] = mmc_mk_box3(14, &Absyn_Exp_CALL__desc, _crf, _fargs);
2093#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2094 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2095#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2096 tmpMeta[0+0] = tmpMeta[4];
2097#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2098 tmpMeta[0+1] = _oldEqs;
2099#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2100 tmpMeta[0+2] = tmpMeta[5];
2101#line 463 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2102 tmp1_c3 = _instNo;
2103#line 2103 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2104 goto tmp3_done;
2105 }
2106 }
2107 goto tmp3_end;
2108 tmp3_end: ;
2109 }
2110 goto goto_2;
2111 tmp3_done:
2112 (void)tmp4;
2113 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
2114 goto tmp3_done2;
2115 goto_2:;
2116 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
2117 if (++tmp4 < 2) {
2118 goto tmp3_top;
2119 }
2120 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2121 tmp3_done2:;
2122 }
2123 }
2124 _res_expr = tmpMeta[0+0];
2125 _newEqs = tmpMeta[0+1];
2126 _newElems = tmpMeta[0+2];
2127 _newInstNo = tmp1_c3;
2128 _return: OMC_LABEL_UNUSED__attribute__((unused))
2129 if (out_newEqs) { *out_newEqs = _newEqs; }
2130 if (out_newElems) { *out_newElems = _newElems; }
2131 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
2132 return _res_expr;
2133}
2134PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseCall(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _instNo, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype *out_newEqs, modelica_metatype *out_newElems, modelica_metatype *out_newInstNo)
2135{
2136 modelica_integer tmp1;
2137 modelica_integer _newInstNo;
2138 modelica_metatype _res_expr = NULL((void*)0);
2139 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
2140 _res_expr = omc_BlockCallRewrite_parseCall(threadData, _in_eq, _defs, tmp1, _oldEqs, _oldElems, out_newEqs, out_newElems, &_newInstNo);
2141 /* skip box _res_expr; Absyn.Exp */
2142 /* skip box _newEqs; list<Absyn.EquationItem> */
2143 /* skip box _newElems; list<Absyn.ElementItem> */
2144 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
2145 return _res_expr;
2146}
2147
2148PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseExpressionTuple(threadData_t *threadData, modelica_metatype _tuple_list, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo)
2149{
2150 modelica_metatype _out_tuple_list = NULL((void*)0);
2151 modelica_metatype _eqs = NULL((void*)0);
2152 modelica_metatype _elems = NULL((void*)0);
2153 modelica_integer _newInstNo;
2154 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
2155 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
2156 MMC_SO()mmc_check_stackoverflow(threadData);
2157 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2158 // _out_tuple_list has no default value.
2159 // _eqs has no default value.
2160 // _elems has no default value.
2161 // _newInstNo has no default value.
2162#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2163
2164#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2165
2166#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2167
2168#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2169
2170#line 2170 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2171 { /* match expression */
2172 modelica_metatype tmp4_1;
2173 tmp4_1 = _tuple_list;
2174 {
2175 modelica_metatype _r_tuple_list = NULL((void*)0);
2176 modelica_metatype _ntuples = NULL((void*)0);
2177 modelica_metatype _eqs1 = NULL((void*)0);
2178 modelica_metatype _eqs3 = NULL((void*)0);
2179 modelica_metatype _elems1 = NULL((void*)0);
2180 modelica_metatype _elems3 = NULL((void*)0);
2181 modelica_integer _count1;
2182 modelica_integer _count3;
2183 modelica_metatype _exp1 = NULL((void*)0);
2184 modelica_metatype _exp2 = NULL((void*)0);
2185 modelica_metatype _nexp1 = NULL((void*)0);
2186 modelica_metatype _nexp2 = NULL((void*)0);
2187 volatile mmc_switch_type tmp4;
2188 int tmp5;
2189 // _r_tuple_list has no default value.
2190 // _ntuples has no default value.
2191 // _eqs1 has no default value.
2192 // _eqs3 has no default value.
2193 // _elems1 has no default value.
2194 // _elems3 has no default value.
2195 // _count1 has no default value.
2196 // _count3 has no default value.
2197 // _exp1 has no default value.
2198 // _exp2 has no default value.
2199 // _nexp1 has no default value.
2200 // _nexp2 has no default value.
2201 tmp4 = 0;
2202 for (; tmp4 < 2; tmp4++) {
2203 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
2204 case 0: {
2205 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2206 /* Pattern matching succeeded */
2207#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2208 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2209#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2210 tmpMeta[0+0] = tmpMeta[4];
2211#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2212 tmpMeta[0+1] = _oldEqs;
2213#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2214 tmpMeta[0+2] = _oldElems;
2215#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2216 tmp1_c3 = _instNo;
2217#line 2217 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2218 goto tmp3_done;
2219 }
2220 case 1: {
2221 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2222 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2223 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2224 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (1)))))
;
2225 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
2226 _exp1 = tmpMeta[6];
2227 _exp2 = tmpMeta[7];
2228 _r_tuple_list = tmpMeta[5];
2229 /* Pattern matching succeeded */
2230#line 415 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2231 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count1);
2232#line 2232 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2233
2234#line 416 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2235 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs1, _elems1, _count1, NULL((void*)0), NULL((void*)0), NULL((void*)0));
2236#line 2236 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2237
2238#line 417 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2239 _ntuples = omc_BlockCallRewrite_parseExpressionTuple(threadData, _r_tuple_list, _defs, _eqs1, _elems1, _count1 ,&_eqs3 ,&_elems3 ,&_count3);
2240#line 2240 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2241#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2242 tmpMeta[5] = mmc_mk_box2(0, _nexp1, _nexp2);
2243#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2244 tmpMeta[4] = mmc_mk_cons(tmpMeta[5], _ntuples);
2245#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2246 tmpMeta[0+0] = tmpMeta[4];
2247#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2248 tmpMeta[0+1] = _eqs3;
2249#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2250 tmpMeta[0+2] = _elems3;
2251#line 418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2252 tmp1_c3 = _count3;
2253#line 2253 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2254 goto tmp3_done;
2255 }
2256 }
2257 goto tmp3_end;
2258 tmp3_end: ;
2259 }
2260 goto goto_2;
2261 goto_2:;
2262 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2263 goto tmp3_done;
2264 tmp3_done:;
2265 }
2266 }
2267 _out_tuple_list = tmpMeta[0+0];
2268 _eqs = tmpMeta[0+1];
2269 _elems = tmpMeta[0+2];
2270 _newInstNo = tmp1_c3;
2271 _return: OMC_LABEL_UNUSED__attribute__((unused))
2272 if (out_eqs) { *out_eqs = _eqs; }
2273 if (out_elems) { *out_elems = _elems; }
2274 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
2275 return _out_tuple_list;
2276}
2277PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseExpressionTuple(threadData_t *threadData, modelica_metatype _tuple_list, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo)
2278{
2279 modelica_integer tmp1;
2280 modelica_integer _newInstNo;
2281 modelica_metatype _out_tuple_list = NULL((void*)0);
2282 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
2283 _out_tuple_list = omc_BlockCallRewrite_parseExpressionTuple(threadData, _tuple_list, _defs, _oldEqs, _oldElems, tmp1, out_eqs, out_elems, &_newInstNo);
2284 /* skip box _out_tuple_list; list<tuple<Absyn.Exp, Absyn.Exp>> */
2285 /* skip box _eqs; list<Absyn.EquationItem> */
2286 /* skip box _elems; list<Absyn.ElementItem> */
2287 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
2288 return _out_tuple_list;
2289}
2290
2291PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseExpression(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo)
2292{
2293 modelica_metatype _out_eq = NULL((void*)0);
2294 modelica_metatype _eqs = NULL((void*)0);
2295 modelica_metatype _elems = NULL((void*)0);
2296 modelica_integer _newInstNo;
2297 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
2298 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
2299 MMC_SO()mmc_check_stackoverflow(threadData);
2300 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2301 // _out_eq has no default value.
2302 // _eqs has no default value.
2303 // _elems has no default value.
2304 // _newInstNo has no default value.
2305#line 332 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2306
2307#line 332 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2308
2309#line 332 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2310
2311#line 332 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2312
2313#line 2313 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2314 { /* match expression */
2315 modelica_metatype tmp4_1;
2316 tmp4_1 = _in_eq;
2317 {
2318 modelica_metatype _crf = NULL((void*)0);
2319 modelica_metatype _exp1 = NULL((void*)0);
2320 modelica_metatype _exp2 = NULL((void*)0);
2321 modelica_metatype _nexp1 = NULL((void*)0);
2322 modelica_metatype _nexp2 = NULL((void*)0);
2323 modelica_metatype _ife = NULL((void*)0);
2324 modelica_metatype _nife = NULL((void*)0);
2325 modelica_metatype _op = NULL((void*)0);
2326 modelica_metatype _fargs = NULL((void*)0);
2327 modelica_metatype _eqs1 = NULL((void*)0);
2328 modelica_metatype _eqs2 = NULL((void*)0);
2329 modelica_metatype _eqs3 = NULL((void*)0);
2330 modelica_metatype _eqs4 = NULL((void*)0);
2331 modelica_metatype _elems1 = NULL((void*)0);
2332 modelica_metatype _elems2 = NULL((void*)0);
2333 modelica_metatype _elems3 = NULL((void*)0);
2334 modelica_metatype _elems4 = NULL((void*)0);
2335 modelica_integer _count;
2336 modelica_integer _count2;
2337 modelica_integer _count3;
2338 modelica_integer _count4;
2339 modelica_metatype _elif = NULL((void*)0);
2340 modelica_metatype _nelif = NULL((void*)0);
2341 int tmp4;
2342 // _crf has no default value.
2343 // _exp1 has no default value.
2344 // _exp2 has no default value.
2345 // _nexp1 has no default value.
2346 // _nexp2 has no default value.
2347 // _ife has no default value.
2348 // _nife has no default value.
2349 // _op has no default value.
2350 // _fargs has no default value.
2351 // _eqs1 has no default value.
2352 // _eqs2 has no default value.
2353 // _eqs3 has no default value.
2354 // _eqs4 has no default value.
2355 // _elems1 has no default value.
2356 // _elems2 has no default value.
2357 // _elems3 has no default value.
2358 // _elems4 has no default value.
2359 // _count has no default value.
2360 // _count2 has no default value.
2361 // _count3 has no default value.
2362 // _count4 has no default value.
2363 // _elif has no default value.
2364 // _nelif has no default value.
2365 {
2366 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
2367 case 8: {
2368 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((5 +3) & 255) << 2)))
== 0) goto tmp3_end;
2369 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2370 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2371 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2372 _exp1 = tmpMeta[4];
2373 _op = tmpMeta[5];
2374 _exp2 = tmpMeta[6];
2375 /* Pattern matching succeeded */
2376#line 349 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2377 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2378#line 2378 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2379
2380#line 350 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2381 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count2);
2382#line 2382 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2383#line 351 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2384 tmpMeta[4] = mmc_mk_box4(8, &Absyn_Exp_BINARY__desc, _nexp1, _op, _nexp2);
2385#line 351 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2386 tmpMeta[0+0] = tmpMeta[4];
2387#line 351 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2388 tmpMeta[0+1] = _eqs2;
2389#line 351 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2390 tmpMeta[0+2] = _elems2;
2391#line 351 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2392 tmp1_c3 = _count2;
2393#line 2393 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2394 goto tmp3_done;
2395 }
2396 case 10: {
2397 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
2398 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2399 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2400 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2401 _exp1 = tmpMeta[4];
2402 _op = tmpMeta[5];
2403 _exp2 = tmpMeta[6];
2404 /* Pattern matching succeeded */
2405#line 355 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2406 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2407#line 2407 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2408
2409#line 356 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2410 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count2);
2411#line 2411 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2412#line 357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2413 tmpMeta[4] = mmc_mk_box4(10, &Absyn_Exp_LBINARY__desc, _nexp1, _op, _nexp2);
2414#line 357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2415 tmpMeta[0+0] = tmpMeta[4];
2416#line 357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2417 tmpMeta[0+1] = _eqs2;
2418#line 357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2419 tmpMeta[0+2] = _elems2;
2420#line 357 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2421 tmp1_c3 = _count2;
2422#line 2422 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2423 goto tmp3_done;
2424 }
2425 case 9: {
2426 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp3_end;
2427 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2428 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2429 _op = tmpMeta[4];
2430 _exp2 = tmpMeta[5];
2431 /* Pattern matching succeeded */
2432#line 361 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2433 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _oldEqs, _oldElems, _instNo ,&_eqs2 ,&_elems2 ,&_count);
2434#line 2434 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2435#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2436 tmpMeta[4] = mmc_mk_box3(9, &Absyn_Exp_UNARY__desc, _op, _nexp2);
2437#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2438 tmpMeta[0+0] = tmpMeta[4];
2439#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2440 tmpMeta[0+1] = _eqs2;
2441#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2442 tmpMeta[0+2] = _elems2;
2443#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2444 tmp1_c3 = _count;
2445#line 2445 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2446 goto tmp3_done;
2447 }
2448 case 11: {
2449 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,8,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((8 +3) & 255) << 2)))
== 0) goto tmp3_end;
2450 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2451 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2452 _op = tmpMeta[4];
2453 _exp2 = tmpMeta[5];
2454 /* Pattern matching succeeded */
2455#line 366 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2456 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _oldEqs, _oldElems, _instNo ,&_eqs2 ,&_elems2 ,&_count);
2457#line 2457 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2458#line 367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2459 tmpMeta[4] = mmc_mk_box3(11, &Absyn_Exp_LUNARY__desc, _op, _nexp2);
2460#line 367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2461 tmpMeta[0+0] = tmpMeta[4];
2462#line 367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2463 tmpMeta[0+1] = _eqs2;
2464#line 367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2465 tmpMeta[0+2] = _elems2;
2466#line 367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2467 tmp1_c3 = _count;
2468#line 2468 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2469 goto tmp3_done;
2470 }
2471 case 13: {
2472 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,10,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((4 +1) <<
10) + (((10 +3) & 255) << 2)))
== 0) goto tmp3_end;
2473 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2474 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2475 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2476 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(5)))))
;
2477 _ife = tmpMeta[4];
2478 _exp1 = tmpMeta[5];
2479 _exp2 = tmpMeta[6];
2480 _elif = tmpMeta[7];
2481 /* Pattern matching succeeded */
2482#line 371 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2483 _nife = omc_BlockCallRewrite_parseExpression(threadData, _ife, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2484#line 2484 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2485
2486#line 372 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2487 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count2);
2488#line 2488 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2489
2490#line 373 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2491 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs2, _elems2, _count2 ,&_eqs3 ,&_elems3 ,&_count3);
2492#line 2492 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2493
2494#line 374 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2495 _nelif = omc_BlockCallRewrite_parseExpressionTuple(threadData, _elif, _defs, _eqs3, _elems3, _count3 ,&_eqs4 ,&_elems4 ,&_count4);
2496#line 2496 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2497#line 375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2498 tmpMeta[4] = mmc_mk_box5(13, &Absyn_Exp_IFEXP__desc, _nife, _nexp1, _nexp2, _nelif);
2499#line 375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2500 tmpMeta[0+0] = tmpMeta[4];
2501#line 375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2502 tmpMeta[0+1] = _eqs4;
2503#line 375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2504 tmpMeta[0+2] = _elems4;
2505#line 375 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2506 tmp1_c3 = _count4;
2507#line 2507 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2508 goto tmp3_done;
2509 }
2510 case 14: {
2511 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,11,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((11 +3) & 255) << 2)))
== 0) goto tmp3_end;
2512 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2513 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2514 _crf = tmpMeta[4];
2515 _fargs = tmpMeta[5];
2516 /* Pattern matching succeeded */
2517#line 380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2518 tmpMeta[4] = mmc_mk_box3(14, &Absyn_Exp_CALL__desc, _crf, _fargs);
2519#line 380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2520 tmpMeta[0+0] = omc_BlockCallRewrite_parseCall(threadData, tmpMeta[4], _defs, _instNo, _oldEqs, _oldElems, &tmpMeta[0+1], &tmpMeta[0+2], &tmp1_c3);
2521#line 2521 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2522 goto tmp3_done;
2523 }
2524 default:
2525 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
2526
2527 /* Pattern matching succeeded */
2528#line 383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2529 tmpMeta[0+0] = _in_eq;
2530#line 383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2531 tmpMeta[0+1] = _oldEqs;
2532#line 383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2533 tmpMeta[0+2] = _oldElems;
2534#line 383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2535 tmp1_c3 = _instNo;
2536#line 2536 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2537 goto tmp3_done;
2538 }
2539 }
2540 goto tmp3_end;
2541 tmp3_end: ;
2542 }
2543 goto goto_2;
2544 goto_2:;
2545 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2546 goto tmp3_done;
2547 tmp3_done:;
2548 }
2549 }
2550 _out_eq = tmpMeta[0+0];
2551 _eqs = tmpMeta[0+1];
2552 _elems = tmpMeta[0+2];
2553 _newInstNo = tmp1_c3;
2554 _return: OMC_LABEL_UNUSED__attribute__((unused))
2555 if (out_eqs) { *out_eqs = _eqs; }
2556 if (out_elems) { *out_elems = _elems; }
2557 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
2558 return _out_eq;
2559}
2560PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseExpression(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo)
2561{
2562 modelica_integer tmp1;
2563 modelica_integer _newInstNo;
2564 modelica_metatype _out_eq = NULL((void*)0);
2565 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
2566 _out_eq = omc_BlockCallRewrite_parseExpression(threadData, _in_eq, _defs, _oldEqs, _oldElems, tmp1, out_eqs, out_elems, &_newInstNo);
2567 /* skip box _out_eq; Absyn.Exp */
2568 /* skip box _eqs; list<Absyn.EquationItem> */
2569 /* skip box _elems; list<Absyn.ElementItem> */
2570 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
2571 return _out_eq;
2572}
2573
2574PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseEquation(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo)
2575{
2576 modelica_metatype _out_eq = NULL((void*)0);
2577 modelica_metatype _eqs = NULL((void*)0);
2578 modelica_metatype _elems = NULL((void*)0);
2579 modelica_integer _newInstNo;
2580 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
2581 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
2582 MMC_SO()mmc_check_stackoverflow(threadData);
2583 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2584 // _out_eq has no default value.
2585 // _eqs has no default value.
2586 // _elems has no default value.
2587 // _newInstNo has no default value.
2588#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2589
2590#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2591
2592#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2593
2594#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2595
2596#line 2596 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2597 { /* match expression */
2598 modelica_metatype tmp4_1;
2599 tmp4_1 = _in_eq;
2600 {
2601 modelica_metatype _exp1 = NULL((void*)0);
2602 modelica_metatype _exp2 = NULL((void*)0);
2603 modelica_metatype _nexp1 = NULL((void*)0);
2604 modelica_metatype _nexp2 = NULL((void*)0);
2605 modelica_metatype _eqi = NULL((void*)0);
2606 modelica_metatype _leq1 = NULL((void*)0);
2607 modelica_metatype _leq2 = NULL((void*)0);
2608 modelica_metatype _nleq1 = NULL((void*)0);
2609 modelica_metatype _nleq2 = NULL((void*)0);
2610 modelica_metatype _tup1 = NULL((void*)0);
2611 modelica_metatype _cr1 = NULL((void*)0);
2612 modelica_metatype _cr2 = NULL((void*)0);
2613 modelica_metatype _domain = NULL((void*)0);
2614 modelica_metatype _fi = NULL((void*)0);
2615 modelica_metatype _farg = NULL((void*)0);
2616 modelica_metatype _eqs1 = NULL((void*)0);
2617 modelica_metatype _eqs2 = NULL((void*)0);
2618 modelica_metatype _eqs3 = NULL((void*)0);
2619 modelica_metatype _elems1 = NULL((void*)0);
2620 modelica_metatype _elems2 = NULL((void*)0);
2621 modelica_metatype _elems3 = NULL((void*)0);
2622 modelica_integer _count;
2623 modelica_integer _count1;
2624 modelica_integer _count2;
2625 int tmp4;
2626 // _exp1 has no default value.
2627 // _exp2 has no default value.
2628 // _nexp1 has no default value.
2629 // _nexp2 has no default value.
2630 // _eqi has no default value.
2631 // _leq1 has no default value.
2632 // _leq2 has no default value.
2633 // _nleq1 has no default value.
2634 // _nleq2 has no default value.
2635 // _tup1 has no default value.
2636 // _cr1 has no default value.
2637 // _cr2 has no default value.
2638 // _domain has no default value.
2639 // _fi has no default value.
2640 // _farg has no default value.
2641 // _eqs1 has no default value.
2642 // _eqs2 has no default value.
2643 // _eqs3 has no default value.
2644 // _elems1 has no default value.
2645 // _elems2 has no default value.
2646 // _elems3 has no default value.
2647 // _count has no default value.
2648 // _count1 has no default value.
2649 // _count2 has no default value.
2650 {
2651 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
2652 case 3: {
2653 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,4)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((4 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2654 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2655 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2656 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2657 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(5)))))
;
2658 _exp1 = tmpMeta[4];
2659 _leq1 = tmpMeta[5];
2660 _tup1 = tmpMeta[6];
2661 _leq2 = tmpMeta[7];
2662 /* Pattern matching succeeded */
2663#line 268 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2664 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2665#line 2665 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2666
2667#line 269 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2668 _nleq1 = omc_BlockCallRewrite_parseEquations(threadData, _leq1, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count1);
2669#line 2669 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2670
2671#line 270 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2672 _nleq2 = omc_BlockCallRewrite_parseEquations(threadData, _leq2, _defs, _eqs2, _elems2, _count1 ,&_eqs3 ,&_elems3 ,&_count2);
2673#line 2673 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2674#line 273 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2675 tmpMeta[4] = mmc_mk_box5(3, &Absyn_Equation_EQ__IF__desc, _nexp1, _nleq1, _tup1, _nleq2);
2676#line 273 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2677 tmpMeta[0+0] = tmpMeta[4];
2678#line 273 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2679 tmpMeta[0+1] = _eqs3;
2680#line 273 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2681 tmpMeta[0+2] = _elems3;
2682#line 273 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2683 tmp1_c3 = _count2;
2684#line 2684 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2685 goto tmp3_done;
2686 }
2687 case 4: {
2688 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
2689 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2690 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2691 _exp1 = tmpMeta[4];
2692 _exp2 = tmpMeta[5];
2693 /* Pattern matching succeeded */
2694#line 278 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2695 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2696#line 2696 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2697
2698#line 279 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2699 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count1);
2700#line 2700 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2701#line 281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2702 tmpMeta[4] = mmc_mk_box3(4, &Absyn_Equation_EQ__EQUALS__desc, _nexp1, _nexp2);
2703#line 281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2704 tmpMeta[0+0] = tmpMeta[4];
2705#line 281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2706 tmpMeta[0+1] = _eqs2;
2707#line 281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2708 tmpMeta[0+2] = _elems2;
2709#line 281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2710 tmp1_c3 = _count1;
2711#line 2711 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2712 goto tmp3_done;
2713 }
2714 case 5: {
2715 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
2716 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2717 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2718 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2719 _exp1 = tmpMeta[4];
2720 _exp2 = tmpMeta[5];
2721 _domain = tmpMeta[6];
2722 /* Pattern matching succeeded */
2723#line 287 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2724 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
2725#line 2725 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2726
2727#line 288 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2728 _nexp2 = omc_BlockCallRewrite_parseExpression(threadData, _exp2, _defs, _eqs1, _elems1, _count ,&_eqs2 ,&_elems2 ,&_count1);
2729#line 2729 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2730#line 290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2731 tmpMeta[4] = mmc_mk_box4(5, &Absyn_Equation_EQ__PDE__desc, _nexp1, _nexp2, _domain);
2732#line 290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2733 tmpMeta[0+0] = tmpMeta[4];
2734#line 290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2735 tmpMeta[0+1] = _eqs2;
2736#line 290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2737 tmpMeta[0+2] = _elems2;
2738#line 290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2739 tmp1_c3 = _count1;
2740#line 2740 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2741 goto tmp3_done;
2742 }
2743 case 6: {
2744 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
2745 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2746 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2747 _cr1 = tmpMeta[4];
2748 _cr2 = tmpMeta[5];
2749 /* Pattern matching succeeded */
2750#line 294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2751 tmpMeta[4] = mmc_mk_box3(6, &Absyn_Equation_EQ__CONNECT__desc, _cr1, _cr2);
2752#line 294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2753 tmpMeta[0+0] = tmpMeta[4];
2754#line 294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2755 tmpMeta[0+1] = _oldEqs;
2756#line 294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2757 tmpMeta[0+2] = _oldElems;
2758#line 294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2759 tmp1_c3 = _instNo;
2760#line 2760 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2761 goto tmp3_done;
2762 }
2763 case 7: {
2764 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
2765 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2766 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2767 _fi = tmpMeta[4];
2768 _leq1 = tmpMeta[5];
2769 /* Pattern matching succeeded */
2770#line 298 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2771 _nleq1 = omc_BlockCallRewrite_parseEquations(threadData, _leq1, _defs, _oldEqs, _oldElems, _instNo ,&_eqs2 ,&_elems2 ,&_count);
2772#line 2772 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2773#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2774 tmpMeta[4] = mmc_mk_box3(7, &Absyn_Equation_EQ__FOR__desc, _fi, _nleq1);
2775#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2776 tmpMeta[0+0] = tmpMeta[4];
2777#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2778 tmpMeta[0+1] = _eqs2;
2779#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2780 tmpMeta[0+2] = _elems2;
2781#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2782 tmp1_c3 = _count;
2783#line 2783 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2784 goto tmp3_done;
2785 }
2786 case 8: {
2787 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,3)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((3 +1) <<
10) + (((5 +3) & 255) << 2)))
== 0) goto tmp3_end;
2788 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2789 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2790 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(4)))))
;
2791 _exp1 = tmpMeta[4];
2792 _leq1 = tmpMeta[5];
2793 _tup1 = tmpMeta[6];
2794 /* Pattern matching succeeded */
2795#line 303 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2796 _nexp1 = omc_BlockCallRewrite_parseExpression(threadData, _exp1, _defs, _oldEqs, _oldElems, _instNo, NULL((void*)0), NULL((void*)0), NULL((void*)0));
2797#line 2797 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2798
2799#line 304 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2800 _nleq1 = omc_BlockCallRewrite_parseEquations(threadData, _leq1, _defs, _oldEqs, _oldElems, _instNo, NULL((void*)0), NULL((void*)0), NULL((void*)0));
2801#line 2801 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2802#line 306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2803 tmpMeta[4] = mmc_mk_box4(8, &Absyn_Equation_EQ__WHEN__E__desc, _nexp1, _nleq1, _tup1);
2804#line 306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2805 tmpMeta[0+0] = tmpMeta[4];
2806#line 306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2807 tmpMeta[0+1] = _oldEqs;
2808#line 306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2809 tmpMeta[0+2] = _oldElems;
2810#line 306 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2811 tmp1_c3 = _instNo;
2812#line 2812 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2813 goto tmp3_done;
2814 }
2815 case 9: {
2816 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp3_end;
2817 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2818 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
2819 _cr1 = tmpMeta[4];
2820 _farg = tmpMeta[5];
2821 /* Pattern matching succeeded */
2822#line 309 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2823 tmpMeta[4] = mmc_mk_box3(9, &Absyn_Equation_EQ__NORETCALL__desc, _cr1, _farg);
2824#line 309 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2825 tmpMeta[0+0] = tmpMeta[4];
2826#line 309 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2827 tmpMeta[0+1] = _oldEqs;
2828#line 309 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2829 tmpMeta[0+2] = _oldElems;
2830#line 309 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2831 tmp1_c3 = _instNo;
2832#line 2832 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2833 goto tmp3_done;
2834 }
2835 case 10: {
2836 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
2837 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2838 _eqi = tmpMeta[4];
2839 /* Pattern matching succeeded */
2840#line 314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2841 tmpMeta[4] = mmc_mk_box2(10, &Absyn_Equation_EQ__FAILURE__desc, _eqi);
2842#line 314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2843 tmpMeta[0+0] = tmpMeta[4];
2844#line 314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2845 tmpMeta[0+1] = _oldEqs;
2846#line 314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2847 tmpMeta[0+2] = _oldElems;
2848#line 314 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2849 tmp1_c3 = _instNo;
2850#line 2850 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2851 goto tmp3_done;
2852 }
2853 }
2854 goto tmp3_end;
2855 tmp3_end: ;
2856 }
2857 goto goto_2;
2858 goto_2:;
2859 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2860 goto tmp3_done;
2861 tmp3_done:;
2862 }
2863 }
2864 _out_eq = tmpMeta[0+0];
2865 _eqs = tmpMeta[0+1];
2866 _elems = tmpMeta[0+2];
2867 _newInstNo = tmp1_c3;
2868 _return: OMC_LABEL_UNUSED__attribute__((unused))
2869 if (out_eqs) { *out_eqs = _eqs; }
2870 if (out_elems) { *out_elems = _elems; }
2871 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
2872 return _out_eq;
2873}
2874PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseEquation(threadData_t *threadData, modelica_metatype _in_eq, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo)
2875{
2876 modelica_integer tmp1;
2877 modelica_integer _newInstNo;
2878 modelica_metatype _out_eq = NULL((void*)0);
2879 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
2880 _out_eq = omc_BlockCallRewrite_parseEquation(threadData, _in_eq, _defs, _oldEqs, _oldElems, tmp1, out_eqs, out_elems, &_newInstNo);
2881 /* skip box _out_eq; Absyn.Equation */
2882 /* skip box _eqs; list<Absyn.EquationItem> */
2883 /* skip box _elems; list<Absyn.ElementItem> */
2884 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
2885 return _out_eq;
2886}
2887
2888PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseEquations(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo)
2889{
2890 modelica_metatype _out_classes = NULL((void*)0);
2891 modelica_metatype _eqs = NULL((void*)0);
2892 modelica_metatype _elems = NULL((void*)0);
2893 modelica_integer _newInstNo;
2894 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
2895 modelica_metatype tmpMeta[9] __attribute__((unused)) = {0};
2896 MMC_SO()mmc_check_stackoverflow(threadData);
2897 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2898 // _out_classes has no default value.
2899 // _eqs has no default value.
2900 // _elems has no default value.
2901 // _newInstNo has no default value.
2902#line 214 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2903
2904#line 214 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2905
2906#line 214 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2907
2908#line 214 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2909
2910#line 2910 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2911 { /* match expression */
2912 modelica_metatype tmp4_1;
2913 tmp4_1 = _classes;
2914 {
2915 modelica_metatype _eq = NULL((void*)0);
2916 modelica_metatype _neq = NULL((void*)0);
2917 modelica_metatype _cmt = NULL((void*)0);
2918 modelica_string _comment = NULL((void*)0);
2919 modelica_metatype _info = NULL((void*)0);
2920 modelica_metatype _r_classes = NULL((void*)0);
2921 modelica_metatype _nr_classes = NULL((void*)0);
2922 modelica_metatype _eqs1 = NULL((void*)0);
2923 modelica_metatype _eqs2 = NULL((void*)0);
2924 modelica_metatype _elems1 = NULL((void*)0);
2925 modelica_metatype _elems2 = NULL((void*)0);
2926 modelica_integer _count;
2927 modelica_integer _count1;
2928 volatile mmc_switch_type tmp4;
2929 int tmp5;
2930 // _eq has no default value.
2931 // _neq has no default value.
2932 // _cmt has no default value.
2933 // _comment has no default value.
2934 // _info has no default value.
2935 // _r_classes has no default value.
2936 // _nr_classes has no default value.
2937 // _eqs1 has no default value.
2938 // _eqs2 has no default value.
2939 // _elems1 has no default value.
2940 // _elems2 has no default value.
2941 // _count has no default value.
2942 // _count1 has no default value.
2943 tmp4 = 0;
2944 for (; tmp4 < 3; tmp4++) {
2945 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
2946 case 0: {
2947 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2948 /* Pattern matching succeeded */
2949#line 224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2950 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
2951#line 224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2952 tmpMeta[0+0] = tmpMeta[4];
2953#line 224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2954 tmpMeta[0+1] = _oldEqs;
2955#line 224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2956 tmpMeta[0+2] = _oldElems;
2957#line 224 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2958 tmp1_c3 = _instNo;
2959#line 2959 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2960 goto tmp3_done;
2961 }
2962 case 1: {
2963 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2964 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
2965 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
2966 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],0,3)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((3 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
2967 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
2968 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (3)))))
;
2969 tmpMeta[8] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (4)))))
;
2970 _eq = tmpMeta[6];
2971 _cmt = tmpMeta[7];
2972 _info = tmpMeta[8];
2973 _r_classes = tmpMeta[5];
2974 /* Pattern matching succeeded */
2975#line 228 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2976 _neq = omc_BlockCallRewrite_parseEquation(threadData, _eq, _defs, _oldEqs, _oldElems, _instNo ,&_eqs2 ,&_elems2 ,&_count1);
2977#line 2977 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2978
2979#line 229 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2980 _nr_classes = omc_BlockCallRewrite_parseEquations(threadData, _r_classes, _defs, _eqs2, _elems2, _count1 ,&_eqs1 ,&_elems1 ,&_count);
2981#line 2981 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2982#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2983 tmpMeta[5] = mmc_mk_box4(3, &Absyn_EquationItem_EQUATIONITEM__desc, _neq, _cmt, _info);
2984#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2985 tmpMeta[4] = mmc_mk_cons(tmpMeta[5], _nr_classes);
2986#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2987 tmpMeta[0+0] = tmpMeta[4];
2988#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2989 tmpMeta[0+1] = _eqs1;
2990#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2991 tmpMeta[0+2] = _elems1;
2992#line 231 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
2993 tmp1_c3 = _count;
2994#line 2994 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
2995 goto tmp3_done;
2996 }
2997 case 2: {
2998 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
2999 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
3000 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3001 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3002 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
3003 _comment = tmpMeta[6];
3004 _r_classes = tmpMeta[5];
3005 /* Pattern matching succeeded */
3006#line 235 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3007 _nr_classes = omc_BlockCallRewrite_parseEquations(threadData, _r_classes, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
3008#line 3008 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3009#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3010 tmpMeta[5] = mmc_mk_box2(4, &Absyn_EquationItem_EQUATIONITEMCOMMENT__desc, _comment);
3011#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3012 tmpMeta[4] = mmc_mk_cons(tmpMeta[5], _nr_classes);
3013#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3014 tmpMeta[0+0] = tmpMeta[4];
3015#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3016 tmpMeta[0+1] = _eqs1;
3017#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3018 tmpMeta[0+2] = _elems1;
3019#line 236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3020 tmp1_c3 = _count;
3021#line 3021 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3022 goto tmp3_done;
3023 }
3024 }
3025 goto tmp3_end;
3026 tmp3_end: ;
3027 }
3028 goto goto_2;
3029 goto_2:;
3030 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3031 goto tmp3_done;
3032 tmp3_done:;
3033 }
3034 }
3035 _out_classes = tmpMeta[0+0];
3036 _eqs = tmpMeta[0+1];
3037 _elems = tmpMeta[0+2];
3038 _newInstNo = tmp1_c3;
3039 _return: OMC_LABEL_UNUSED__attribute__((unused))
3040 if (out_eqs) { *out_eqs = _eqs; }
3041 if (out_elems) { *out_elems = _elems; }
3042 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
3043 return _out_classes;
3044}
3045PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseEquations(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo)
3046{
3047 modelica_integer tmp1;
3048 modelica_integer _newInstNo;
3049 modelica_metatype _out_classes = NULL((void*)0);
3050 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
3051 _out_classes = omc_BlockCallRewrite_parseEquations(threadData, _classes, _defs, _oldEqs, _oldElems, tmp1, out_eqs, out_elems, &_newInstNo);
3052 /* skip box _out_classes; list<Absyn.EquationItem> */
3053 /* skip box _eqs; list<Absyn.EquationItem> */
3054 /* skip box _elems; list<Absyn.ElementItem> */
3055 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
3056 return _out_classes;
3057}
3058
3059PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassPart(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_reqs, modelica_metatype *out_relems, modelica_integer *out_newInstNo)
3060{
3061 modelica_metatype _out_def = NULL((void*)0);
3062 modelica_metatype _reqs = NULL((void*)0);
3063 modelica_metatype _relems = NULL((void*)0);
3064 modelica_integer _newInstNo;
3065 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
3066 modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
3067 MMC_SO()mmc_check_stackoverflow(threadData);
3068 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3069 // _out_def has no default value.
3070 // _reqs has no default value.
3071 // _relems has no default value.
3072 // _newInstNo has no default value.
3073#line 158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3074
3075#line 158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3076
3077#line 158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3078
3079#line 158 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3080
3081#line 3081 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3082 { /* match expression */
3083 modelica_metatype tmp4_1;
3084 tmp4_1 = _in_def;
3085 {
3086 modelica_metatype _elems = NULL((void*)0);
3087 modelica_metatype _exps = NULL((void*)0);
3088 modelica_metatype _eqs = NULL((void*)0);
3089 modelica_metatype _neqs = NULL((void*)0);
3090 modelica_metatype _algs = NULL((void*)0);
3091 modelica_metatype _externalDecl = NULL((void*)0);
3092 modelica_metatype _annotation_ = NULL((void*)0);
3093 modelica_metatype _eqs1 = NULL((void*)0);
3094 modelica_metatype _elems1 = NULL((void*)0);
3095 modelica_integer _count;
3096 int tmp4;
3097 // _elems has no default value.
3098 // _exps has no default value.
3099 // _eqs has no default value.
3100 // _neqs has no default value.
3101 // _algs has no default value.
3102 // _externalDecl has no default value.
3103 // _annotation_ has no default value.
3104 // _eqs1 has no default value.
3105 // _elems1 has no default value.
3106 // _count has no default value.
3107 {
3108 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3109 case 3: {
3110 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,0,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp3_end;
3111 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3112 _elems = tmpMeta[4];
3113 /* Pattern matching succeeded */
3114#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3115 tmpMeta[4] = mmc_mk_box2(3, &Absyn_ClassPart_PUBLIC__desc, _elems);
3116#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3117 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3118#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3119 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3120#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3121 tmpMeta[0+0] = tmpMeta[4];
3122#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3123 tmpMeta[0+1] = tmpMeta[5];
3124#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3125 tmpMeta[0+2] = tmpMeta[6];
3126#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3127 tmp1_c3 = _instNo;
3128#line 3128 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3129 goto tmp3_done;
3130 }
3131 case 4: {
3132 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp3_end;
3133 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3134 _elems = tmpMeta[4];
3135 /* Pattern matching succeeded */
3136#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3137 tmpMeta[4] = mmc_mk_box2(4, &Absyn_ClassPart_PROTECTED__desc, _elems);
3138#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3139 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3140#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3141 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3142#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3143 tmpMeta[0+0] = tmpMeta[4];
3144#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3145 tmpMeta[0+1] = tmpMeta[5];
3146#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3147 tmpMeta[0+2] = tmpMeta[6];
3148#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3149 tmp1_c3 = _instNo;
3150#line 3150 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3151 goto tmp3_done;
3152 }
3153 case 5: {
3154 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,2,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp3_end;
3155 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3156 _exps = tmpMeta[4];
3157 /* Pattern matching succeeded */
3158#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3159 tmpMeta[4] = mmc_mk_box2(5, &Absyn_ClassPart_CONSTRAINTS__desc, _exps);
3160#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3161 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3162#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3163 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3164#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3165 tmpMeta[0+0] = tmpMeta[4];
3166#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3167 tmpMeta[0+1] = tmpMeta[5];
3168#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3169 tmpMeta[0+2] = tmpMeta[6];
3170#line 176 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3171 tmp1_c3 = _instNo;
3172#line 3172 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3173 goto tmp3_done;
3174 }
3175 case 6: {
3176 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,3,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp3_end;
3177 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3178 _eqs = tmpMeta[4];
3179 /* Pattern matching succeeded */
3180#line 180 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3181 _neqs = omc_BlockCallRewrite_parseEquations(threadData, _eqs, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
3182#line 3182 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3183#line 182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3184 tmpMeta[4] = mmc_mk_box2(6, &Absyn_ClassPart_EQUATIONS__desc, _neqs);
3185#line 182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3186 tmpMeta[0+0] = tmpMeta[4];
3187#line 182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3188 tmpMeta[0+1] = _eqs1;
3189#line 182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3190 tmpMeta[0+2] = _elems1;
3191#line 182 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3192 tmp1_c3 = _count;
3193#line 3193 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3194 goto tmp3_done;
3195 }
3196 case 7: {
3197 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
3198 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3199 _eqs = tmpMeta[4];
3200 /* Pattern matching succeeded */
3201#line 186 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3202 _neqs = omc_BlockCallRewrite_parseEquations(threadData, _eqs, _defs, _oldEqs, _oldElems, _instNo ,&_eqs1 ,&_elems1 ,&_count);
3203#line 3203 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3204#line 188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3205 tmpMeta[4] = mmc_mk_box2(7, &Absyn_ClassPart_INITIALEQUATIONS__desc, _neqs);
3206#line 188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3207 tmpMeta[0+0] = tmpMeta[4];
3208#line 188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3209 tmpMeta[0+1] = _eqs1;
3210#line 188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3211 tmpMeta[0+2] = _elems1;
3212#line 188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3213 tmp1_c3 = _count;
3214#line 3214 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3215 goto tmp3_done;
3216 }
3217 case 8: {
3218 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,5,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((5 +3) & 255) << 2)))
== 0) goto tmp3_end;
3219 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3220 _algs = tmpMeta[4];
3221 /* Pattern matching succeeded */
3222#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3223 tmpMeta[4] = mmc_mk_box2(8, &Absyn_ClassPart_ALGORITHMS__desc, _algs);
3224#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3225 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3226#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3227 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3228#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3229 tmpMeta[0+0] = tmpMeta[4];
3230#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3231 tmpMeta[0+1] = tmpMeta[5];
3232#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3233 tmpMeta[0+2] = tmpMeta[6];
3234#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3235 tmp1_c3 = _instNo;
3236#line 3236 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3237 goto tmp3_done;
3238 }
3239 case 9: {
3240 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,6,1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((1 +1) <<
10) + (((6 +3) & 255) << 2)))
== 0) goto tmp3_end;
3241 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3242 _algs = tmpMeta[4];
3243 /* Pattern matching succeeded */
3244#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3245 tmpMeta[4] = mmc_mk_box2(9, &Absyn_ClassPart_INITIALALGORITHMS__desc, _algs);
3246#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3247 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3248#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3249 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3250#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3251 tmpMeta[0+0] = tmpMeta[4];
3252#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3253 tmpMeta[0+1] = tmpMeta[5];
3254#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3255 tmpMeta[0+2] = tmpMeta[6];
3256#line 194 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3257 tmp1_c3 = _instNo;
3258#line 3258 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3259 goto tmp3_done;
3260 }
3261 case 10: {
3262 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,7,2)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((2 +1) <<
10) + (((7 +3) & 255) << 2)))
== 0) goto tmp3_end;
3263 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3264 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp4_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(3)))))
;
3265 _externalDecl = tmpMeta[4];
3266 _annotation_ = tmpMeta[5];
3267 /* Pattern matching succeeded */
3268#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3269 tmpMeta[4] = mmc_mk_box3(10, &Absyn_ClassPart_EXTERNAL__desc, _externalDecl, _annotation_);
3270#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3271 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3272#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3273 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3274#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3275 tmpMeta[0+0] = tmpMeta[4];
3276#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3277 tmpMeta[0+1] = tmpMeta[5];
3278#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3279 tmpMeta[0+2] = tmpMeta[6];
3280#line 197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3281 tmp1_c3 = _instNo;
3282#line 3282 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3283 goto tmp3_done;
3284 }
3285 }
3286 goto tmp3_end;
3287 tmp3_end: ;
3288 }
3289 goto goto_2;
3290 goto_2:;
3291 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3292 goto tmp3_done;
3293 tmp3_done:;
3294 }
3295 }
3296 _out_def = tmpMeta[0+0];
3297 _reqs = tmpMeta[0+1];
3298 _relems = tmpMeta[0+2];
3299 _newInstNo = tmp1_c3;
3300 _return: OMC_LABEL_UNUSED__attribute__((unused))
3301 if (out_reqs) { *out_reqs = _reqs; }
3302 if (out_relems) { *out_relems = _relems; }
3303 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
3304 return _out_def;
3305}
3306PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassPart(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_reqs, modelica_metatype *out_relems, modelica_metatype *out_newInstNo)
3307{
3308 modelica_integer tmp1;
3309 modelica_integer _newInstNo;
3310 modelica_metatype _out_def = NULL((void*)0);
3311 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
3312 _out_def = omc_BlockCallRewrite_parseClassPart(threadData, _in_def, _defs, _oldEqs, _oldElems, tmp1, out_reqs, out_relems, &_newInstNo);
3313 /* skip box _out_def; Absyn.ClassPart */
3314 /* skip box _reqs; list<Absyn.EquationItem> */
3315 /* skip box _relems; list<Absyn.ElementItem> */
3316 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
3317 return _out_def;
3318}
3319
3320PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassParts(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_integer _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_integer *out_newInstNo)
3321{
3322 modelica_metatype _out_classes = NULL((void*)0);
3323 modelica_metatype _eqs = NULL((void*)0);
3324 modelica_metatype _elems = NULL((void*)0);
3325 modelica_integer _newInstNo;
3326 modelica_integer tmp1_c3 __attribute__((unused)) = 0;
3327 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
3328 MMC_SO()mmc_check_stackoverflow(threadData);
3329 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3330 // _out_classes has no default value.
3331 // _eqs has no default value.
3332 // _elems has no default value.
3333 // _newInstNo has no default value.
3334#line 128 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3335
3336#line 128 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3337
3338#line 128 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3339
3340#line 128 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3341
3342#line 3342 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3343 { /* match expression */
3344 modelica_metatype tmp4_1;
3345 tmp4_1 = _classes;
3346 {
3347 modelica_metatype _r_classes = NULL((void*)0);
3348 modelica_metatype _nr_classes = NULL((void*)0);
3349 modelica_metatype _cls = NULL((void*)0);
3350 modelica_metatype _n_cls = NULL((void*)0);
3351 modelica_metatype _eqs1 = NULL((void*)0);
3352 modelica_metatype _eqs2 = NULL((void*)0);
3353 modelica_metatype _elems1 = NULL((void*)0);
3354 modelica_metatype _elems2 = NULL((void*)0);
3355 modelica_integer _count;
3356 modelica_integer _count1;
3357 volatile mmc_switch_type tmp4;
3358 int tmp5;
3359 // _r_classes has no default value.
3360 // _nr_classes has no default value.
3361 // _cls has no default value.
3362 // _n_cls has no default value.
3363 // _eqs1 has no default value.
3364 // _eqs2 has no default value.
3365 // _elems1 has no default value.
3366 // _elems2 has no default value.
3367 // _count has no default value.
3368 // _count1 has no default value.
3369 tmp4 = 0;
3370 for (; tmp4 < 2; tmp4++) {
3371 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3372 case 0: {
3373 if (!listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
3374 /* Pattern matching succeeded */
3375#line 135 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3376 tmpMeta[4] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3377#line 135 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3378 tmpMeta[0+0] = tmpMeta[4];
3379#line 135 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3380 tmpMeta[0+1] = _oldEqs;
3381#line 135 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3382 tmpMeta[0+2] = _oldElems;
3383#line 135 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3384 tmp1_c3 = _instNo;
3385#line 3385 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3386 goto tmp3_done;
3387 }
3388 case 1: {
3389 if (listEmpty(tmp4_1)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp3_end;
3390 tmpMeta[4] = MMC_CAR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(1)))))
;
3391 tmpMeta[5] = MMC_CDR(tmp4_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp4_1) - 3))) +
(2)))))
;
3392 _cls = tmpMeta[4];
3393 _r_classes = tmpMeta[5];
3394 /* Pattern matching succeeded */
3395#line 138 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3396 _n_cls = omc_BlockCallRewrite_parseClassPart(threadData, _cls, _defs, _oldEqs, _oldElems, _instNo ,&_eqs2 ,&_elems2 ,&_count1);
3397#line 3397 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3398
3399#line 139 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3400 _nr_classes = omc_BlockCallRewrite_parseClassParts(threadData, _r_classes, _defs, _eqs2, _elems2, _count1 ,&_eqs1 ,&_elems1 ,&_count);
3401#line 3401 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3402#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3403 tmpMeta[4] = mmc_mk_cons(_n_cls, _nr_classes);
3404#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3405 tmpMeta[0+0] = tmpMeta[4];
3406#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3407 tmpMeta[0+1] = _eqs1;
3408#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3409 tmpMeta[0+2] = _elems1;
3410#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3411 tmp1_c3 = _count;
3412#line 3412 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3413 goto tmp3_done;
3414 }
3415 }
3416 goto tmp3_end;
3417 tmp3_end: ;
3418 }
3419 goto goto_2;
3420 goto_2:;
3421 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3422 goto tmp3_done;
3423 tmp3_done:;
3424 }
3425 }
3426 _out_classes = tmpMeta[0+0];
3427 _eqs = tmpMeta[0+1];
3428 _elems = tmpMeta[0+2];
3429 _newInstNo = tmp1_c3;
3430 _return: OMC_LABEL_UNUSED__attribute__((unused))
3431 if (out_eqs) { *out_eqs = _eqs; }
3432 if (out_elems) { *out_elems = _elems; }
3433 if (out_newInstNo) { *out_newInstNo = _newInstNo; }
3434 return _out_classes;
3435}
3436PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_BlockCallRewrite_parseClassParts(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs, modelica_metatype _oldEqs, modelica_metatype _oldElems, modelica_metatype _instNo, modelica_metatype *out_eqs, modelica_metatype *out_elems, modelica_metatype *out_newInstNo)
3437{
3438 modelica_integer tmp1;
3439 modelica_integer _newInstNo;
3440 modelica_metatype _out_classes = NULL((void*)0);
3441 tmp1 = mmc_unbox_integer(_instNo)(((mmc_sint_t) (_instNo)) >> 1);
3442 _out_classes = omc_BlockCallRewrite_parseClassParts(threadData, _classes, _defs, _oldEqs, _oldElems, tmp1, out_eqs, out_elems, &_newInstNo);
3443 /* skip box _out_classes; list<Absyn.ClassPart> */
3444 /* skip box _eqs; list<Absyn.EquationItem> */
3445 /* skip box _elems; list<Absyn.ElementItem> */
3446 if (out_newInstNo) { *out_newInstNo = mmc_mk_icon(_newInstNo); }
3447 return _out_classes;
3448}
3449
3450PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseClassDef(threadData_t *threadData, modelica_metatype _in_def, modelica_metatype _defs)
3451{
3452 modelica_metatype _out_def = NULL((void*)0);
3453 modelica_metatype tmpMeta[6] __attribute__((unused)) = {0};
3454 MMC_SO()mmc_check_stackoverflow(threadData);
3455 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3456 // _out_def has no default value.
3457#line 3457 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3458 { /* match expression */
3459 modelica_metatype tmp3_1;
3460 tmp3_1 = _in_def;
3461 {
3462 modelica_metatype _typeVars = NULL((void*)0);
3463 modelica_metatype _classAttrs = NULL((void*)0);
3464 modelica_metatype _classParts = NULL((void*)0);
3465 modelica_metatype _nclsp = NULL((void*)0);
3466 modelica_metatype _ann = NULL((void*)0);
3467 modelica_metatype _comment = NULL((void*)0);
3468 modelica_metatype _eqs = NULL((void*)0);
3469 modelica_metatype _elems = NULL((void*)0);
3470 volatile mmc_switch_type tmp3;
3471 int tmp4;
3472 // _typeVars has no default value.
3473 // _classAttrs has no default value.
3474 // _classParts has no default value.
3475 // _nclsp has no default value.
3476 // _ann has no default value.
3477 // _comment has no default value.
3478 // _eqs has no default value.
3479 // _elems has no default value.
3480 tmp3 = 0;
3481 for (; tmp3 < 1; tmp3++) {
3482 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3483 case 0: {
3484 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,5)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((5 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp2_end;
3485 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3486 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
3487 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
3488 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(5)))))
;
3489 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(6)))))
;
3490 _typeVars = tmpMeta[1];
3491 _classAttrs = tmpMeta[2];
3492 _classParts = tmpMeta[3];
3493 _ann = tmpMeta[4];
3494 _comment = tmpMeta[5];
3495 /* Pattern matching succeeded */
3496#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3497 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3498#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3499 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3500#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3501 _nclsp = omc_BlockCallRewrite_parseClassParts(threadData, _classParts, _defs, tmpMeta[1], tmpMeta[2], ((modelica_integer) 0) ,&_eqs ,&_elems, NULL((void*)0));
3502#line 3502 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3503#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3504 tmpMeta[2] = mmc_mk_box2(3, &Absyn_ClassPart_PUBLIC__desc, _elems);
3505#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3506 tmpMeta[4] = mmc_mk_box2(6, &Absyn_ClassPart_EQUATIONS__desc, _eqs);
3507#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3508 tmpMeta[3] = mmc_mk_cons(tmpMeta[4], _nclsp);
3509#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3510 tmpMeta[1] = mmc_mk_cons(tmpMeta[2], tmpMeta[3]);
3511#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3512 tmpMeta[5] = mmc_mk_box6(3, &Absyn_ClassDef_PARTS__desc, _typeVars, _classAttrs, tmpMeta[1], _ann, _comment);
3513#line 111 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3514 tmpMeta[0] = tmpMeta[5];
3515#line 3515 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3516 goto tmp2_done;
3517 }
3518 }
3519 goto tmp2_end;
3520 tmp2_end: ;
3521 }
3522 goto goto_1;
3523 goto_1:;
3524 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3525 goto tmp2_done;
3526 tmp2_done:;
3527 }
3528 }
3529 _out_def = tmpMeta[0];
3530 _return: OMC_LABEL_UNUSED__attribute__((unused))
3531 return _out_def;
3532}
3533
3534DLLExport
3535modelica_metatype omc_BlockCallRewrite_parseClass(threadData_t *threadData, modelica_metatype _in_class, modelica_metatype _defs)
3536{
3537 modelica_metatype _out_class = NULL((void*)0);
3538 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
3539 MMC_SO()mmc_check_stackoverflow(threadData);
3540 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3541 // _out_class has no default value.
3542#line 3542 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3543 { /* match expression */
3544 modelica_metatype tmp3_1;
3545 tmp3_1 = _in_class;
3546 {
3547 modelica_string _name = NULL((void*)0);
3548 modelica_boolean _partialPrefix;
3549 modelica_boolean _finalPrefix;
3550 modelica_boolean _encapsulatedPrefix;
3551 modelica_metatype _restriction = NULL((void*)0);
3552 modelica_metatype _body = NULL((void*)0);
3553 modelica_metatype _nbody = NULL((void*)0);
3554 modelica_metatype _info = NULL((void*)0);
3555 volatile mmc_switch_type tmp3;
3556 int tmp4;
3557 // _name has no default value.
3558 // _partialPrefix has no default value.
3559 // _finalPrefix has no default value.
3560 // _encapsulatedPrefix has no default value.
3561 // _restriction has no default value.
3562 // _body has no default value.
3563 // _nbody has no default value.
3564 // _info has no default value.
3565 tmp3 = 0;
3566 for (; tmp3 < 1; tmp3++) {
3567 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3568 case 0: {
3569 modelica_integer tmp5;
3570 modelica_integer tmp6;
3571 modelica_integer tmp7;
3572 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3573 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
3574 tmp5 = mmc_unbox_integer(tmpMeta[2])(((mmc_sint_t) (tmpMeta[2])) >> 1);
3575 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
3576 tmp6 = mmc_unbox_integer(tmpMeta[3])(((mmc_sint_t) (tmpMeta[3])) >> 1);
3577 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(5)))))
;
3578 tmp7 = mmc_unbox_integer(tmpMeta[4])(((mmc_sint_t) (tmpMeta[4])) >> 1);
3579 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(6)))))
;
3580 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(7)))))
;
3581 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 8))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(8)))))
;
3582 _name = tmpMeta[1];
3583 _partialPrefix = tmp5 /* pattern as ty=Boolean */;
3584 _finalPrefix = tmp6 /* pattern as ty=Boolean */;
3585 _encapsulatedPrefix = tmp7 /* pattern as ty=Boolean */;
3586 _restriction = tmpMeta[5];
3587 _body = tmpMeta[6];
3588 _info = tmpMeta[7];
3589 /* Pattern matching succeeded */
3590#line 86 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3591 _nbody = omc_BlockCallRewrite_parseClassDef(threadData, _body, _defs);
3592#line 3592 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3593#line 87 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3594 tmpMeta[1] = mmc_mk_box8(3, &Absyn_Class_CLASS__desc, _name, mmc_mk_boolean(_partialPrefix)((_partialPrefix) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_finalPrefix)((_finalPrefix) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon(0))), mmc_mk_boolean(_encapsulatedPrefix)((_encapsulatedPrefix) != 0 ? (mmc_mk_icon(1)) : (mmc_mk_icon
(0)))
, _restriction, _nbody, _info);
3595#line 87 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3596 tmpMeta[0] = tmpMeta[1];
3597#line 3597 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3598 goto tmp2_done;
3599 }
3600 }
3601 goto tmp2_end;
3602 tmp2_end: ;
3603 }
3604 goto goto_1;
3605 goto_1:;
3606 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3607 goto tmp2_done;
3608 tmp2_done:;
3609 }
3610 }
3611 _out_class = tmpMeta[0];
3612 _return: OMC_LABEL_UNUSED__attribute__((unused))
3613 return _out_class;
3614}
3615
3616DLLExport
3617modelica_metatype omc_BlockCallRewrite_parseClasses(threadData_t *threadData, modelica_metatype _classes, modelica_metatype _defs)
3618{
3619 modelica_metatype _out_classes = NULL((void*)0);
3620 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
3621 MMC_SO()mmc_check_stackoverflow(threadData);
3622 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3623 // _out_classes has no default value.
3624#line 3624 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3625 { /* match expression */
3626 modelica_metatype tmp3_1;
3627 tmp3_1 = _classes;
3628 {
3629 modelica_metatype _r_classes = NULL((void*)0);
3630 modelica_metatype _nr_classes = NULL((void*)0);
3631 modelica_metatype _cls = NULL((void*)0);
3632 modelica_metatype _n_cls = NULL((void*)0);
3633 volatile mmc_switch_type tmp3;
3634 int tmp4;
3635 // _r_classes has no default value.
3636 // _nr_classes has no default value.
3637 // _cls has no default value.
3638 // _n_cls has no default value.
3639 tmp3 = 0;
3640 for (; tmp3 < 2; tmp3++) {
3641 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3642 case 0: {
3643 if (!listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
3644 /* Pattern matching succeeded */
3645#line 58 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3646 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3647#line 58 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3648 tmpMeta[0] = tmpMeta[1];
3649#line 3649 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3650 goto tmp2_done;
3651 }
3652 case 1: {
3653 if (listEmpty(tmp3_1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) goto tmp2_end;
3654 tmpMeta[1] = MMC_CAR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(1)))))
;
3655 tmpMeta[2] = MMC_CDR(tmp3_1)(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
3656 _cls = tmpMeta[1];
3657 _r_classes = tmpMeta[2];
3658 /* Pattern matching succeeded */
3659#line 61 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3660 _nr_classes = omc_BlockCallRewrite_parseClasses(threadData, _r_classes, _defs);
3661#line 3661 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3662
3663#line 62 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3664 _n_cls = omc_BlockCallRewrite_parseClass(threadData, _cls, _defs);
3665#line 3665 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3666#line 63 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3667 tmpMeta[1] = mmc_mk_cons(_n_cls, _nr_classes);
3668#line 63 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3669 tmpMeta[0] = tmpMeta[1];
3670#line 3670 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3671 goto tmp2_done;
3672 }
3673 }
3674 goto tmp2_end;
3675 tmp2_end: ;
3676 }
3677 goto goto_1;
3678 goto_1:;
3679 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3680 goto tmp2_done;
3681 tmp2_done:;
3682 }
3683 }
3684 _out_classes = tmpMeta[0];
3685 _return: OMC_LABEL_UNUSED__attribute__((unused))
3686 return _out_classes;
3687}
3688
3689PROTECTED_FUNCTION_STATIC modelica_metatype omc_BlockCallRewrite_parseProgram(threadData_t *threadData, modelica_metatype _inPg, modelica_metatype _defs)
3690{
3691 modelica_metatype _outPg = NULL((void*)0);
3692 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
3693 MMC_SO()mmc_check_stackoverflow(threadData);
3694 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3695 _outPg = _inPg;
3696#line 3696 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3697 { /* match expression */
3698 modelica_metatype tmp3_1;
3699 tmp3_1 = _outPg;
Value stored to 'tmp3_1' is never read
3700 {
3701 volatile mmc_switch_type tmp3;
3702 int tmp4;
3703 tmp3 = 0;
3704 for (; tmp3 < 1; tmp3++) {
3705 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3706 case 0: {
3707
3708 /* Pattern matching succeeded */
3709#line 43 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3710 tmpMeta[1] = MMC_TAGPTR(mmc_alloc_words(4))((void*)((char*)(mmc_alloc_words(4)) + 3));
3711#line 43 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3712 memcpy(MMC_UNTAGPTR(tmpMeta[1])((void*)((char*)(tmpMeta[1]) - 3)), MMC_UNTAGPTR(_outPg)((void*)((char*)(_outPg) - 3)), 4*sizeof(modelica_metatype));
3713#line 43 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3714 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[1])((void*)((char*)(tmpMeta[1]) - 3)))[2] = omc_BlockCallRewrite_parseClasses(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_outPg), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_outPg) - 3))) +
(2)))))
), _defs);
3715#line 43 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3716 _outPg = tmpMeta[1];
3717#line 3717 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3718#line 44 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3719 tmpMeta[0] = _outPg;
3720#line 3720 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3721 goto tmp2_done;
3722 }
3723 }
3724 goto tmp2_end;
3725 tmp2_end: ;
3726 }
3727 goto goto_1;
3728 goto_1:;
3729 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3730 goto tmp2_done;
3731 tmp2_done:;
3732 }
3733 }
3734 _outPg = tmpMeta[0];
3735 _return: OMC_LABEL_UNUSED__attribute__((unused))
3736 return _outPg;
3737}
3738
3739DLLExport
3740modelica_metatype omc_BlockCallRewrite_rewriteBlockCall(threadData_t *threadData, modelica_metatype _inPg, modelica_metatype _inDefs)
3741{
3742 modelica_metatype _newOut = NULL((void*)0);
3743 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3744 MMC_SO()mmc_check_stackoverflow(threadData);
3745 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3746 // _newOut has no default value.
3747#line 3747 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3748 { /* match expression */
3749 {
3750 modelica_metatype _pg2 = NULL((void*)0);
3751 modelica_string _res = NULL((void*)0);
3752 volatile mmc_switch_type tmp3;
3753 int tmp4;
3754 // _pg2 has no default value.
3755 // _res has no default value.
3756 tmp3 = 0;
3757 for (; tmp3 < 1; tmp3++) {
3758 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3759 case 0: {
3760 /* Pattern matching succeeded */
3761#line 26 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3762 _pg2 = omc_BlockCallRewrite_parseProgram(threadData, _inPg, _inDefs);
3763#line 3763 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3764
3765#line 28 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3766 _res = omc_Dump_unparseStr(threadData, _pg2, 0, _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)));
3767#line 3767 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3768
3769#line 29 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3770 fputs(MMC_STRINGDATA(_res)(((struct mmc_string*)((void*)((char*)(_res) - 3)))->data),stdoutstdout);
3771#line 3771 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3772#line 31 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/Script/BlockCallRewrite.mo"
3773 tmpMeta[0] = _pg2;
3774#line 3774 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/BlockCallRewrite.c"
3775 goto tmp2_done;
3776 }
3777 }
3778 goto tmp2_end;
3779 tmp2_end: ;
3780 }
3781 goto goto_1;
3782 goto_1:;
3783 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3784 goto tmp2_done;
3785 tmp2_done:;
3786 }
3787 }
3788 _newOut = tmpMeta[0];
3789 _return: OMC_LABEL_UNUSED__attribute__((unused))
3790 return _newOut;
3791}
3792