Bug Summary

File:OMCompiler/Compiler/boot/build/NFExpandableConnectors.c
Warning:line 1178, column 3
Undefined or garbage value returned to caller

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/NFExpandableConnectors.c" OMC_BASE_FILE
3#else
4 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
5#endif
6#include "omc_simulation_settings.h"
7#include "NFExpandableConnectors.h"
8static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT0,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT0
= { (((1) << 10) + (((5) & 255) << 2)),
{&ErrorTypes_MessageType_TRANSLATION__desc,}};
9#define _OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT0)((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3))
10static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT1,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT1
= { (((1) << 10) + (((4) & 255) << 2)),
{&ErrorTypes_Severity_ERROR__desc,}};
11#define _OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT1)((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3))
12#define _OMC_LIT2_data"The type of variables %s and %s\nare inconsistent in connect equations." "The type of variables %s and %s\nare inconsistent in connect equations."
13static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT2,70,_OMC_LIT2_data)struct { mmc_uint_t header; const char data[(70)+1]; } _OMC_LIT_STRUCT2
= { ((((mmc_uint_t)70)<<(3))+((1<<(3+3))+5)), "The type of variables %s and %s\nare inconsistent in connect equations."
}
;
14#define _OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT2)((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3))
15static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT3,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT3
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT2((void*)((char*)(&(_OMC_LIT_STRUCT2).header) + 3))}};
16#define _OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT3)((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3))
17static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT4,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT4
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(52))((void*)(((((mmc_uint_t) (52)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT3((void*)((char*)(&(_OMC_LIT_STRUCT3).header) + 3))}};
18#define _OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT4)((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3))
19static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT5,1,10)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT5
= { (((1) << 10) + (((10) & 255) << 2)),
{&NFInstNode_InstNode_EMPTY__NODE__desc,}};
20#define _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT5)((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3))
21#define _OMC_LIT6_data"NFExpandableConnectors.augmentExpandableConnector got non-component element" "NFExpandableConnectors.augmentExpandableConnector got non-component element"
22static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT6,75,_OMC_LIT6_data)struct { mmc_uint_t header; const char data[(75)+1]; } _OMC_LIT_STRUCT6
= { ((((mmc_uint_t)75)<<(3))+((1<<(3+3))+5)), "NFExpandableConnectors.augmentExpandableConnector got non-component element"
}
;
23#define _OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT6)((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3))
24#define _OMC_LIT7_data"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
25static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT7,110,_OMC_LIT7_data)struct { mmc_uint_t header; const char data[(110)+1]; } _OMC_LIT_STRUCT7
= { ((((mmc_uint_t)110)<<(3))+((1<<(3+3))+5)), "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
}
;
26#define _OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT7)((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))
27static const MMC_DEFREALLIT(_OMC_LIT_STRUCT8_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT8_6 = {0,(((8/8) << 10
) + 9),1588090879.0}
;
28#define _OMC_LIT8_6((void*)((char*)(&(_OMC_LIT_STRUCT8_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT8_6)((void*)((char*)(&(_OMC_LIT_STRUCT8_6).header) + 3))
29static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT8,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT8
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(421))((void*)(((((mmc_uint_t) (421)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(9))((void*)(((((mmc_uint_t) (9)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(421))((void*)(((((mmc_uint_t) (421)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(95))((void*)(((((mmc_uint_t) (95)) << 1)+0))),_OMC_LIT8_6((void*)((char*)(&(_OMC_LIT_STRUCT8_6).header) + 3))}};
30#define _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT8)((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))
31#define _OMC_LIT9_data"" ""
32static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT9,0,_OMC_LIT9_data)struct { mmc_uint_t header; const char data[(0)+1]; } _OMC_LIT_STRUCT9
= { ((((mmc_uint_t)0)<<(3))+((1<<(3+3))+5)), "" }
;
33#define _OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT9)((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))
34static const MMC_DEFREALLIT(_OMC_LIT_STRUCT10,0.0)struct mmc_real_lit _OMC_LIT_STRUCT10 = {0,(((8/8) << 10
) + 9),0.0}
;
35#define _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT10)((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))
36static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT11
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).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_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))}};
37#define _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))
38static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT12,4,3)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT12
= { (((4) << 10) + (((3) & 255) << 2)),
{&NFBinding_Binding_UNBOUND__desc,MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),_OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))}};
39#define _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT12)((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))
40static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,1,4)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT13
= { (((1) << 10) + (((4) & 255) << 2)),
{&NFPrefixes_Replaceable_NOT__REPLACEABLE__desc,}};
41#define _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))
42static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT14,9,3)struct { mmc_uint_t header; const void *data[9]; } _OMC_LIT_STRUCT14
= { (((9) << 10) + (((3) & 255) << 2)),
{&NFComponent_Component_Attributes_ATTRIBUTES__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(7))((void*)(((((mmc_uint_t) (7)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 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_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
43#define _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT14)((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3))
44#define _OMC_LIT15_data"virtual variable in expandable connector" "virtual variable in expandable connector"
45static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT15,40,_OMC_LIT15_data)struct { mmc_uint_t header; const char data[(40)+1]; } _OMC_LIT_STRUCT15
= { ((((mmc_uint_t)40)<<(3))+((1<<(3+3))+5)), "virtual variable in expandable connector"
}
;
46#define _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT15)((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))
47static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT16,1,1)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT16
= { (((1) << 10) + (((1) & 255) << 2)),
{_OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))}};
48#define _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT16)((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))
49static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT17,3,3)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT17
= { (((3) << 10) + (((3) & 255) << 2)),
{&SCode_Comment_COMMENT__desc,MMC_REFSTRUCTLIT(mmc_none)((void*)((char*)(&(mmc_none).header) + 3)),_OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))}};
50#define _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT17)((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3))
51static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT18,1,1)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT18
= { (((1) << 10) + (((1) & 255) << 2)),
{_OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3))}};
52#define _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT18)((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))
53static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT19,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT19
= { (((1) << 10) + (((3) & 255) << 2)),
{&DAE_Prefix_NOPRE__desc,}};
54#define _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT19)((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))
55static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT20,1,11)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT20
= { (((1) << 10) + (((11) & 255) << 2)),
{&DAE_Type_T__UNKNOWN__desc,}};
56#define _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT20)((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3))
57static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT21,4,4)struct { mmc_uint_t header; const void *data[4]; } _OMC_LIT_STRUCT21
= { (((4) << 10) + (((4) & 255) << 2)),
{&DAE_ComponentRef_CREF__IDENT__desc,_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)),_OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)),MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))}};
58#define _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT21)((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3))
59static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT22,2,0)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT22
= { (((2) << 10) + (((0) & 255) << 2)),
{_OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)),_OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3))}};
60#define _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT22)((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3))
61#define _OMC_LIT23_data"Cannot connect undeclared connectors %s with %s. At least one of them must be declared." "Cannot connect undeclared connectors %s with %s. At least one of them must be declared."
62static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT23,87,_OMC_LIT23_data)struct { mmc_uint_t header; const char data[(87)+1]; } _OMC_LIT_STRUCT23
= { ((((mmc_uint_t)87)<<(3))+((1<<(3+3))+5)), "Cannot connect undeclared connectors %s with %s. At least one of them must be declared."
}
;
63#define _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT23)((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3))
64static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT24,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT24
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3))}};
65#define _OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT24)((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3))
66static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT25,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT25
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(50))((void*)(((((mmc_uint_t) (50)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3))}};
67#define _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT25)((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3))
68#define _OMC_LIT26_data"Cannot connect expandable connector %s with non-expandable connector %s." "Cannot connect expandable connector %s with non-expandable connector %s."
69static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,72,_OMC_LIT26_data)struct { mmc_uint_t header; const char data[(72)+1]; } _OMC_LIT_STRUCT26
= { ((((mmc_uint_t)72)<<(3))+((1<<(3+3))+5)), "Cannot connect expandable connector %s with non-expandable connector %s."
}
;
70#define _OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))
71static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT27
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))}};
72#define _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))
73static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT28,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT28
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(49))((void*)(((((mmc_uint_t) (49)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))}};
74#define _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT28)((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))
75#include "util/modelica.h"
76
77#include "NFExpandableConnectors_includes.h"
78
79
80/* default, do not make protected functions static */
81#if !defined(PROTECTED_FUNCTION_STATIC)
82#define PROTECTED_FUNCTION_STATIC
83#endif
84PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updatePotentiallyPresentVariable(threadData_t *threadData, modelica_metatype _D_24in_var);
85static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updatePotentiallyPresentVariable,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_updatePotentiallyPresentVariable
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_updatePotentiallyPresentVariableomc_NFExpandableConnectors_updatePotentiallyPresentVariable,0}};
86#define boxvar_NFExpandableConnectors_updatePotentiallyPresentVariable((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updatePotentiallyPresentVariable
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updatePotentiallyPresentVariable)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updatePotentiallyPresentVariable
).header) + 3))
87PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateExpandableConnector(threadData_t *threadData, modelica_metatype _D_24in_conn, modelica_metatype *out_ty);
88static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateExpandableConnector,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_updateExpandableConnector
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_updateExpandableConnectoromc_NFExpandableConnectors_updateExpandableConnector,0}};
89#define boxvar_NFExpandableConnectors_updateExpandableConnector((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateExpandableConnector
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateExpandableConnector)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateExpandableConnector
).header) + 3))
90PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateExpandableConnection(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _D_24in_conns);
91static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateExpandableConnection,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_updateExpandableConnection
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_updateExpandableConnectionomc_NFExpandableConnectors_updateExpandableConnection,0}};
92#define boxvar_NFExpandableConnectors_updateExpandableConnection((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateExpandableConnection
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateExpandableConnection)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateExpandableConnection
).header) + 3))
93PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateUndeclaredConnection(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _D_24in_conns);
94static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_updateUndeclaredConnectionomc_NFExpandableConnectors_updateUndeclaredConnection,0}};
95#define boxvar_NFExpandableConnectors_updateUndeclaredConnection((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection
).header) + 3))
96PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_augmentExpandableConnector(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _expandableSet, modelica_metatype _D_24in_vars);
97static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_augmentExpandableConnector,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_augmentExpandableConnector
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_augmentExpandableConnectoromc_NFExpandableConnectors_augmentExpandableConnector,0}};
98#define boxvar_NFExpandableConnectors_augmentExpandableConnector((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_augmentExpandableConnector
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_augmentExpandableConnector)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_augmentExpandableConnector
).header) + 3))
99PROTECTED_FUNCTION_STATIC void omc_NFExpandableConnectors_markComponentPresent(threadData_t *threadData, modelica_metatype _node);
100static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_markComponentPresent,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_markComponentPresent
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_markComponentPresentomc_NFExpandableConnectors_markComponentPresent,0}};
101#define boxvar_NFExpandableConnectors_markComponentPresent((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_markComponentPresent
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_markComponentPresent)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_markComponentPresent
).header) + 3))
102PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_elaborateExpandableSet(threadData_t *threadData, modelica_metatype _set, modelica_metatype _D_24in_vars);
103static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_elaborateExpandableSet,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_elaborateExpandableSet
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_elaborateExpandableSetomc_NFExpandableConnectors_elaborateExpandableSet,0}};
104#define boxvar_NFExpandableConnectors_elaborateExpandableSet((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_elaborateExpandableSet
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_elaborateExpandableSet)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_elaborateExpandableSet
).header) + 3))
105PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_makeVirtualConnector(threadData_t *threadData, modelica_metatype _virtualConnector, modelica_metatype _normalConnector);
106static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_makeVirtualConnector,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_makeVirtualConnector
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_makeVirtualConnectoromc_NFExpandableConnectors_makeVirtualConnector,0}};
107#define boxvar_NFExpandableConnectors_makeVirtualConnector((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_makeVirtualConnector
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_makeVirtualConnector)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_makeVirtualConnector
).header) + 3))
108PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addConnectionToSets(threadData_t *threadData, modelica_metatype _c1, modelica_metatype _c2, modelica_metatype _D_24in_csets);
109static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addConnectionToSets,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_addConnectionToSets
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_addConnectionToSetsomc_NFExpandableConnectors_addConnectionToSets,0}};
110#define boxvar_NFExpandableConnectors_addConnectionToSets((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addConnectionToSets
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addConnectionToSets)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addConnectionToSets
).header) + 3))
111PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addUndeclaredConnectorToSets(threadData_t *threadData, modelica_metatype _D_24in_conn, modelica_metatype _D_24in_csets, modelica_metatype *out_csets);
112static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_addUndeclaredConnectorToSetsomc_NFExpandableConnectors_addUndeclaredConnectorToSets,0}};
113#define boxvar_NFExpandableConnectors_addUndeclaredConnectorToSets((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets
).header) + 3))
114PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_getExpandableConnectorsInConnector(threadData_t *threadData, modelica_metatype _c1);
115static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_getExpandableConnectorsInConnector,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_getExpandableConnectorsInConnector
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_getExpandableConnectorsInConnectoromc_NFExpandableConnectors_getExpandableConnectorsInConnector,0}};
116#define boxvar_NFExpandableConnectors_getExpandableConnectorsInConnector((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_getExpandableConnectorsInConnector
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_getExpandableConnectorsInConnector)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_getExpandableConnectorsInConnector
).header) + 3))
117PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addNestedExpandableConnectorsToSets(threadData_t *threadData, modelica_metatype _c1, modelica_metatype _c2, modelica_metatype _D_24in_csets);
118static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addNestedExpandableConnectorsToSets,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_addNestedExpandableConnectorsToSets
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_addNestedExpandableConnectorsToSetsomc_NFExpandableConnectors_addNestedExpandableConnectorsToSets,0}};
119#define boxvar_NFExpandableConnectors_addNestedExpandableConnectorsToSets((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addNestedExpandableConnectorsToSets
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addNestedExpandableConnectorsToSets)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addNestedExpandableConnectorsToSets
).header) + 3))
120PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addExpandableConnectorsToSets(threadData_t *threadData, modelica_metatype _conns, modelica_metatype _D_24in_csets);
121static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addExpandableConnectorsToSets,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_addExpandableConnectorsToSets
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_addExpandableConnectorsToSetsomc_NFExpandableConnectors_addExpandableConnectorsToSets,0}};
122#define boxvar_NFExpandableConnectors_addExpandableConnectorsToSets((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addExpandableConnectorsToSets
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_addExpandableConnectorsToSets)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addExpandableConnectorsToSets
).header) + 3))
123PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_sortConnections(threadData_t *threadData, modelica_metatype _conns, modelica_metatype *out_undeclaredConnections, modelica_metatype *out_normalConnections);
124static const MMC_DEFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_sortConnections,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFExpandableConnectors_sortConnections
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFExpandableConnectors_sortConnectionsomc_NFExpandableConnectors_sortConnections,0}};
125#define boxvar_NFExpandableConnectors_sortConnections((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_sortConnections
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFExpandableConnectors_sortConnections)((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_sortConnections
).header) + 3))
126
127PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updatePotentiallyPresentVariable(threadData_t *threadData, modelica_metatype _D_24in_var)
128{
129 modelica_metatype _var = NULL((void*)0);
130 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
131 MMC_SO()mmc_check_stackoverflow(threadData);
132 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
133 _var = _D_24in_var;
134#line 487 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
135 if(omc_NFPrefixes_ConnectorType_isPotentiallyPresent(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_var), 6)))), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(((*(void**)(((void*)((void**)(((void*)((char*)(_var) - 3)))
+ (6))))))) - 3))) + (2)))))))) >> 1)
))
136#line 487 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
137 {
138#line 488 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
139 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(10))((void*)((char*)(mmc_alloc_words(10)) + 3));
140#line 488 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
141 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_var)((void*)((char*)(_var) - 3)), 10*sizeof(modelica_metatype));
142#line 488 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
143 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[6] = omc_NFComponent_Component_getAttributes(threadData, omc_NFInstNode_InstNode_component(threadData, omc_NFComponentRef_node(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_var), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_var) - 3))) + (
2)))))
))));
144#line 488 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
145 _var = tmpMeta[0];
146#line 146 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
147 }
148 _return: OMC_LABEL_UNUSED__attribute__((unused))
149 return _var;
150}
151
152PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateExpandableConnector(threadData_t *threadData, modelica_metatype _D_24in_conn, modelica_metatype *out_ty)
153{
154 modelica_metatype _conn = NULL((void*)0);
155 modelica_metatype _ty = NULL((void*)0);
156 modelica_metatype _name = NULL((void*)0);
157 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
158 MMC_SO()mmc_check_stackoverflow(threadData);
159 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
160 _conn = _D_24in_conn;
161 // _ty has no default value.
162 // _name has no default value.
163#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
164 /* Pattern-matching assignment */
165#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
166 tmpMeta[0] = _conn;
167#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
168 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],0,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((5 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
169#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
170 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
171#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
172 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (3)))))
;
173#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
174 _name = tmpMeta[1];
175#line 478 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
176 _ty = tmpMeta[2];
177#line 177 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
178
179#line 479 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
180 _name = omc_NFComponentRef_updateNodeType(threadData, _name);
181#line 181 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
182
183#line 480 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
184 _ty = omc_NFType_setArrayElementType(threadData, _ty, omc_NFType_arrayElementType(threadData, omc_NFComponentRef_nodeType(threadData, _name)));
185#line 185 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
186
187#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
188 tmpMeta[0] = mmc_mk_box6(3, &NFConnector_CONNECTOR__desc, _name, _ty, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_conn), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_conn) - 3))) +
(4)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_conn), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_conn) - 3))) +
(5)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_conn), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_conn) - 3))) +
(6)))))
));
189#line 481 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
190 _conn = tmpMeta[0];
191#line 191 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
192 _return: OMC_LABEL_UNUSED__attribute__((unused))
193 if (out_ty) { *out_ty = _ty; }
194 return _conn;
195}
196
197PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateExpandableConnection(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _D_24in_conns)
198{
199 modelica_metatype _conns = NULL((void*)0);
200 modelica_metatype _c1 = NULL((void*)0);
201 modelica_metatype _c2 = NULL((void*)0);
202 modelica_metatype _ty1 = NULL((void*)0);
203 modelica_metatype _ty2 = NULL((void*)0);
204 modelica_integer _mk;
205 modelica_metatype _e1 = NULL((void*)0);
206 modelica_metatype _e2 = NULL((void*)0);
207 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
208 MMC_SO()mmc_check_stackoverflow(threadData);
209 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
210 _conns = _D_24in_conns;
211 // _c1 has no default value.
212 // _c2 has no default value.
213 // _ty1 has no default value.
214 // _ty2 has no default value.
215 // _mk has no default value.
216 // _e1 has no default value.
217 // _e2 has no default value.
218#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
219 /* Pattern-matching assignment */
220#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
221 tmpMeta[0] = _conn;
222#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
223 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
224#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
225 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
226#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
227 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (3)))))
;
228#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
229 _c1 = tmpMeta[1];
230#line 455 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
231 _c2 = tmpMeta[2];
232#line 232 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
233
234#line 456 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
235 _c1 = omc_NFExpandableConnectors_updateExpandableConnector(threadData, _c1 ,&_ty1);
236#line 236 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
237
238#line 457 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
239 _c2 = omc_NFExpandableConnectors_updateExpandableConnector(threadData, _c2 ,&_ty2);
240#line 240 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
241
242#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
243 tmpMeta[0] = mmc_mk_box3(8, &NFExpression_CREF__desc, _ty1, omc_NFConnector_name(threadData, _c1));
244#line 460 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
245 _e1 = tmpMeta[0];
246#line 246 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
247
248#line 461 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
249 tmpMeta[0] = mmc_mk_box3(8, &NFExpression_CREF__desc, _ty2, omc_NFConnector_name(threadData, _c2));
250#line 461 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
251 _e2 = tmpMeta[0];
252#line 252 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
253
254#line 462 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
255 omc_NFTypeCheck_matchExpressions(threadData, _e1, _ty1, _e2, _ty2, 1 ,NULL((void*)0) ,NULL((void*)0) ,&_mk);
256#line 256 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
257
258#line 464 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
259 if(omc_NFTypeCheck_isIncompatibleMatch(threadData, (modelica_integer)_mk))
260#line 464 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
261 {
262#line 465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
263 tmpMeta[0] = mmc_mk_cons(omc_NFExpression_toString(threadData, _e1), mmc_mk_cons(omc_NFExpression_toString(threadData, _e2), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
264#line 465 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
265 omc_Error_addSourceMessageAndFail(threadData, _OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)), tmpMeta[0], omc_NFConnector_getInfo(threadData, _c1));
266#line 266 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
267 }
268
269#line 469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
270 tmpMeta[1] = mmc_mk_box3(3, &NFConnection_CONNECTION__desc, _c1, _c2);
271#line 469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
272 tmpMeta[0] = mmc_mk_cons(tmpMeta[1], _conns);
273#line 469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
274 _conns = tmpMeta[0];
275#line 275 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
276 _return: OMC_LABEL_UNUSED__attribute__((unused))
277 return _conns;
278}
279
280PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_updateUndeclaredConnection(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _D_24in_conns)
281{
282 modelica_metatype _conns = NULL((void*)0);
283 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
284 MMC_SO()mmc_check_stackoverflow(threadData);
285 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
286 _conns = _D_24in_conns;
287#line 443 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
288 tmpMeta[0] = mmc_mk_cons(_conn, _conns);
289#line 443 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
290 _conns = tmpMeta[0];
291#line 291 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
292 _return: OMC_LABEL_UNUSED__attribute__((unused))
293 return _conns;
294}
295
296PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_augmentExpandableConnector(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _expandableSet, modelica_metatype _D_24in_vars)
297{
298 modelica_metatype _vars = NULL((void*)0);
299 modelica_metatype _exp_name = NULL((void*)0);
300 modelica_metatype _elem_name = NULL((void*)0);
301 modelica_metatype _exp_node = NULL((void*)0);
302 modelica_metatype _comp_node = NULL((void*)0);
303 modelica_metatype _cls_node = NULL((void*)0);
304 modelica_metatype _node = NULL((void*)0);
305 modelica_metatype _cls = NULL((void*)0);
306 modelica_metatype _cls_tree = NULL((void*)0);
307 modelica_metatype _comp = NULL((void*)0);
308 modelica_metatype _nodes = NULL((void*)0);
309 modelica_metatype _var = NULL((void*)0);
310 modelica_metatype _ty = NULL((void*)0);
311 modelica_metatype _complex_ty = NULL((void*)0);
312 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
313 MMC_SO()mmc_check_stackoverflow(threadData);
314 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
315 _vars = _D_24in_vars;
316 // _exp_name has no default value.
317 // _elem_name has no default value.
318 // _exp_node has no default value.
319 // _comp_node has no default value.
320 // _cls_node has no default value.
321 // _node has no default value.
322 // _cls has no default value.
323 // _cls_tree has no default value.
324 // _comp has no default value.
325 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
326 _nodes = tmpMeta[0];
327 // _var has no default value.
328 // _ty has no default value.
329 // _complex_ty has no default value.
330#line 383 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
331 _exp_name = omc_NFConnector_name(threadData, _conn);
332#line 332 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
333
334#line 384 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
335 _exp_node = omc_NFComponentRef_node(threadData, _exp_name);
336#line 336 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
337
338#line 385 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
339 _cls_node = omc_NFInstNode_InstNode_classScope(threadData, _exp_node);
340#line 340 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
341
342#line 386 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
343 _cls = omc_NFInstNode_InstNode_getClass(threadData, _cls_node);
344#line 344 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
345
346#line 387 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
347 _cls_tree = omc_NFClass_Class_classTree(threadData, _cls);
348#line 348 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
349
350#line 390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
351 {
352#line 390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
353 modelica_metatype _c;
354#line 390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
355 for (tmpMeta[1] = _expandableSet; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
356#line 390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
357 {
358#line 390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
359 _c = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
360#line 391 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
361 _elem_name = omc_NFConnector_name(threadData, _c);
362#line 362 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
363
364#line 392 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
365 _node = omc_NFComponentRef_node(threadData, _elem_name);
366#line 366 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
367
368#line 368 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
369 { /* matchcontinue expression */
370 {
371 volatile mmc_switch_type tmp3;
372 int tmp4;
373 tmp3 = 0;
374 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) {
375 tmp2_top:
376 threadData->mmc_jumper = &new_mmc_jumper;
377 for (; tmp3 < 2; tmp3++) {
378 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
379 case 0: {
380 /* Pattern matching succeeded */
381#line 395 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
382 _comp_node = omc_NFClassTree_ClassTree_lookupElement(threadData, omc_NFInstNode_InstNode_name(threadData, _node), _cls_tree, NULL((void*)0));
383#line 383 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
384#line 384 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
385 goto tmp2_done;
386 }
387 case 1: {
388 /* Pattern matching succeeded */
389#line 397 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
390 _comp_node = _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3));
391#line 391 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
392#line 392 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
393 goto tmp2_done;
394 }
395 }
396 goto tmp2_end;
397 tmp2_end: ;
398 }
399 goto goto_1;
400 tmp2_done:
401 (void)tmp3;
402 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
403 goto tmp2_done2;
404 goto_1:;
405 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
406 if (++tmp3 < 2) {
407 goto tmp2_top;
408 }
409 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
410 tmp2_done2:;
411 }
412 }
413 ;
414
415#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
416 if(omc_NFInstNode_InstNode_isEmpty(threadData, _comp_node))
417#line 400 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
418 {
419#line 403 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
420 tmpMeta[2] = mmc_mk_cons(_node, _nodes);
421#line 403 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
422 _nodes = tmpMeta[2];
423#line 423 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
424
425#line 404 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
426 _ty = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (3
)))))
);
427#line 427 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
428
429#line 405 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
430 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
431#line 405 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
432 _elem_name = omc_NFComponentRef_prefixCref(threadData, _node, _ty, tmpMeta[2], _exp_name);
433#line 433 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
434
435#line 407 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
436 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
437#line 407 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
438 tmpMeta[3] = mmc_mk_box9(3, &NFVariable_VARIABLE__desc, _elem_name, _ty, _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)), mmc_mk_integermmc_mk_icon(1), _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)), tmpMeta[2], _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3)), omc_ElementSource_getInfo(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (6
)))))
)));
439#line 407 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
440 _var = tmpMeta[3];
441#line 441 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
442
443#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
444 tmpMeta[2] = mmc_mk_cons(_var, _vars);
445#line 411 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
446 _vars = tmpMeta[2];
447#line 447 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
448 }
449 else
450 {
451#line 413 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
452 _comp_node = omc_NFClassTree_ClassTree_lookupElement(threadData, omc_NFInstNode_InstNode_name(threadData, _node), _cls_tree, NULL((void*)0));
453#line 453 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
454
455#line 414 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
456 _comp_node = omc_NFInstNode_InstNode_resolveInner(threadData, _comp_node);
457#line 457 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
458
459#line 416 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
460 if(omc_NFInstNode_InstNode_isComponent(threadData, _comp_node))
461#line 416 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
462 {
463#line 419 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
464 omc_NFExpandableConnectors_markComponentPresent(threadData, _comp_node);
465#line 465 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
466 }
467 else
468 {
469#line 421 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
470 omc_Error_addInternalError(threadData, _OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)), _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)));
471#line 471 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
472 }
473 }
474 }
475 }
476
477#line 426 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
478 if((!listEmpty(_nodes)((*(mmc_uint_t*)((void*)((char*)(_nodes) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
))
479#line 426 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
480 {
481#line 427 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
482 _cls_tree = omc_NFClassTree_ClassTree_addElementsToFlatTree(threadData, _nodes, _cls_tree);
483#line 483 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
484
485#line 428 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
486 _cls = omc_NFClass_Class_setClassTree(threadData, _cls_tree, _cls);
487#line 487 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
488 }
489
490#line 432 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
491 _complex_ty = omc_NFTyping_makeConnectorType(threadData, _cls_tree, 0);
492#line 492 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
493
494#line 433 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
495 tmpMeta[1] = mmc_mk_box3(14, &NFType_COMPLEX__desc, _cls_node, _complex_ty);
496#line 433 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
497 _ty = tmpMeta[1];
498#line 498 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
499
500#line 434 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
501 _cls = omc_NFClass_Class_setType(threadData, _ty, _cls);
502#line 502 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
503
504#line 435 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
505 omc_NFInstNode_InstNode_updateClass(threadData, _cls, _cls_node);
506#line 506 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
507
508#line 436 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
509 omc_NFInstNode_InstNode_componentApply(threadData, _exp_node, boxvar_NFComponent_Component_setType((void*)((char*)(&(boxvar_lit_NFComponent_Component_setType
).header) + 3))
, _ty);
510#line 510 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
511 _return: OMC_LABEL_UNUSED__attribute__((unused))
512 return _vars;
513}
514
515PROTECTED_FUNCTION_STATIC void omc_NFExpandableConnectors_markComponentPresent(threadData_t *threadData, modelica_metatype _node)
516{
517 modelica_metatype _comp = NULL((void*)0);
518 modelica_integer _cty;
519 MMC_SO()mmc_check_stackoverflow(threadData);
520 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
521 // _comp has no default value.
522 // _cty has no default value.
523#line 358 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
524 _comp = omc_NFInstNode_InstNode_component(threadData, _node);
525#line 525 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
526
527#line 359 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
528 _cty = omc_NFComponent_Component_connectorType(threadData, _comp);
529#line 529 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
530
531#line 361 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
532 if(omc_NFPrefixes_ConnectorType_isPotentiallyPresent(threadData, _cty))
533#line 361 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
534 {
535#line 362 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
536 _cty = omc_NFPrefixes_ConnectorType_setPresent(threadData, _cty);
537#line 537 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
538
539#line 363 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
540 _comp = omc_NFComponent_Component_setConnectorType(threadData, _cty, _comp);
541#line 541 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
542
543#line 364 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
544 omc_NFInstNode_InstNode_updateComponent(threadData, _comp, _node);
545#line 545 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
546 }
547 _return: OMC_LABEL_UNUSED__attribute__((unused))
548 return;
549}
550
551PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_elaborateExpandableSet(threadData_t *threadData, modelica_metatype _set, modelica_metatype _D_24in_vars)
552{
553 modelica_metatype _vars = NULL((void*)0);
554 modelica_metatype _exp_set = NULL((void*)0);
555 modelica_metatype _exp_conns = NULL((void*)0);
556 modelica_metatype _exp_set_lst = NULL((void*)0);
557 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
558 MMC_SO()mmc_check_stackoverflow(threadData);
559 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
560 _vars = _D_24in_vars;
561 // _exp_set has no default value.
562 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
563 _exp_conns = tmpMeta[0];
564 // _exp_set_lst has no default value.
565#line 334 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
566 _exp_set = omc_NFExpandableConnectors_ExpandableSet_emptySet(threadData, omc_Util_nextPrime(threadData, listLength(_set)));
567#line 567 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
568
569#line 336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
570 {
571#line 336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
572 modelica_metatype _c;
573#line 336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
574 for (tmpMeta[1] = _set; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
575#line 336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
576 {
577#line 336 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
578 _c = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
579#line 337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
580 if(omc_NFPrefixes_ConnectorType_isExpandable(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c) - 3))) + (5)))))))) >> 1)
))
581#line 337 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
582 {
583#line 338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
584 tmpMeta[2] = mmc_mk_cons(_c, _exp_conns);
585#line 338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
586 _exp_conns = tmpMeta[2];
587#line 587 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
588 }
589 else
590 {
591 if(omc_NFPrefixes_ConnectorType_isUndeclared(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c) - 3))) + (5)))))))) >> 1)
))
592 {
593#line 340 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
594 _exp_set = omc_BaseHashSet_add(threadData, _c, _exp_set);
595#line 595 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
596
597#line 341 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
598 omc_NFExpandableConnectors_markComponentPresent(threadData, omc_NFComponentRef_node(threadData, omc_NFConnector_name(threadData, _c)));
599#line 599 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
600 }
601 }
602 }
603 }
604
605#line 345 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
606 _exp_set_lst = omc_BaseHashSet_hashSetList(threadData, _exp_set);
607#line 607 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
608
609#line 347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
610 {
611#line 347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
612 modelica_metatype _ec;
613#line 347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
614 for (tmpMeta[1] = _exp_conns; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
615#line 347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
616 {
617#line 347 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
618 _ec = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
619#line 348 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
620 _vars = omc_NFExpandableConnectors_augmentExpandableConnector(threadData, _ec, _exp_set_lst, _vars);
621#line 621 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
622 }
623 }
624 _return: OMC_LABEL_UNUSED__attribute__((unused))
625 return _vars;
626}
627
628PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_makeVirtualConnector(threadData_t *threadData, modelica_metatype _virtualConnector, modelica_metatype _normalConnector)
629{
630 modelica_metatype _newConnector = NULL((void*)0);
631 modelica_metatype _virtual_cref = NULL((void*)0);
632 modelica_metatype _normal_cref = NULL((void*)0);
633 modelica_metatype _ty = NULL((void*)0);
634 modelica_metatype _node = NULL((void*)0);
635 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
636 MMC_SO()mmc_check_stackoverflow(threadData);
637 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
638 // _newConnector has no default value.
639 // _virtual_cref has no default value.
640 // _normal_cref has no default value.
641 // _ty has no default value.
642 // _node has no default value.
643#line 311 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
644 _virtual_cref = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_virtualConnector), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_virtualConnector
) - 3))) + (2)))))
);
645#line 645 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
646
647#line 312 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
648 _normal_cref = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_normalConnector), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_normalConnector
) - 3))) + (2)))))
);
649#line 649 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
650
651#line 313 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
652 _ty = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_normalConnector), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_normalConnector
) - 3))) + (3)))))
);
653#line 653 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
654
655#line 316 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
656 _node = omc_NFComponentRef_node(threadData, _normal_cref);
657#line 657 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
658
659#line 317 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
660 _node = omc_NFInstNode_InstNode_clone(threadData, _node);
661#line 661 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
662
663#line 318 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
664 _node = omc_NFInstNode_InstNode_rename(threadData, omc_NFComponentRef_firstName(threadData, _virtual_cref), _node);
665#line 665 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
666
667#line 319 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
668 _node = omc_NFInstNode_InstNode_setParent(threadData, omc_NFComponentRef_node(threadData, omc_NFComponentRef_rest(threadData, _virtual_cref)), _node);
669#line 669 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
670
671#line 320 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
672 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
673#line 320 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
674 _virtual_cref = omc_NFComponentRef_prefixCref(threadData, _node, _ty, tmpMeta[0], omc_NFComponentRef_rest(threadData, _virtual_cref));
675#line 675 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
676
677#line 323 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
678 tmpMeta[0] = mmc_mk_box6(3, &NFConnector_CONNECTOR__desc, _virtual_cref, _ty, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_virtualConnector), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_virtualConnector
) - 3))) + (4)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_virtualConnector), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_virtualConnector
) - 3))) + (5)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_virtualConnector), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_virtualConnector
) - 3))) + (6)))))
));
679#line 323 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
680 _newConnector = tmpMeta[0];
681#line 681 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
682 _return: OMC_LABEL_UNUSED__attribute__((unused))
683 return _newConnector;
684}
685
686PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addConnectionToSets(threadData_t *threadData, modelica_metatype _c1, modelica_metatype _c2, modelica_metatype _D_24in_csets)
687{
688 modelica_metatype _csets = NULL((void*)0);
689 MMC_SO()mmc_check_stackoverflow(threadData);
690 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
691 _csets = _D_24in_csets;
692#line 299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
693 _csets = omc_NFConnectionSets_ConnectionSets_merge(threadData, omc_NFConnector_setOutside(threadData, _c1), omc_NFConnector_setOutside(threadData, _c2), _csets);
694#line 694 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
695 _return: OMC_LABEL_UNUSED__attribute__((unused))
696 return _csets;
697}
698
699PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addUndeclaredConnectorToSets(threadData_t *threadData, modelica_metatype _D_24in_conn, modelica_metatype _D_24in_csets, modelica_metatype *out_csets)
700{
701 modelica_metatype _conn = NULL((void*)0);
702 modelica_metatype _csets = NULL((void*)0);
703 modelica_metatype _c1 = NULL((void*)0);
704 modelica_metatype _c2 = NULL((void*)0);
705 modelica_metatype _c = NULL((void*)0);
706 modelica_metatype _ec = NULL((void*)0);
707 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
708 MMC_SO()mmc_check_stackoverflow(threadData);
709 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
710 _conn = _D_24in_conn;
711 _csets = _D_24in_csets;
712 // _c1 has no default value.
713 // _c2 has no default value.
714 // _c has no default value.
715 // _ec has no default value.
716#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
717 /* Pattern-matching assignment */
718#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
719 tmpMeta[0] = _conn;
720#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
721 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
722#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
723 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
724#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
725 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (3)))))
;
726#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
727 _c1 = tmpMeta[1];
728#line 263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
729 _c2 = tmpMeta[2];
730#line 730 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
731
732#line 266 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
733 if(omc_NFPrefixes_ConnectorType_isUndeclared(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c1), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c1) - 3))) + (5)))))))) >> 1)
))
734#line 266 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
735 {
736#line 267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
737 if(omc_NFPrefixes_ConnectorType_isVirtual(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c1), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c1) - 3))) + (5)))))))) >> 1)
))
738#line 267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
739 {
740#line 268 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
741 _c1 = omc_NFExpandableConnectors_makeVirtualConnector(threadData, _c1, _c2);
742#line 742 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
743
744#line 269 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
745 tmpMeta[0] = mmc_mk_box3(3, &NFConnection_CONNECTION__desc, _c1, _c2);
746#line 269 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
747 _conn = tmpMeta[0];
748#line 748 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
749 }
750
751#line 272 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
752 _c = _c1;
753#line 753 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
754 }
755 else
756 {
757#line 274 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
758 if(omc_NFPrefixes_ConnectorType_isVirtual(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c2), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c2) - 3))) + (5)))))))) >> 1)
))
759#line 274 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
760 {
761#line 275 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
762 _c2 = omc_NFExpandableConnectors_makeVirtualConnector(threadData, _c2, _c1);
763#line 763 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
764
765#line 276 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
766 tmpMeta[0] = mmc_mk_box3(3, &NFConnection_CONNECTION__desc, _c1, _c2);
767#line 276 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
768 _conn = tmpMeta[0];
769#line 769 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
770 }
771
772#line 279 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
773 _c = _c2;
774#line 774 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
775 }
776
777#line 284 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
778 tmpMeta[0] = mmc_mk_box6(3, &NFConnector_CONNECTOR__desc, omc_NFComponentRef_rest(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (2
)))))
)), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (3
)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (4
)))))
), mmc_mk_integermmc_mk_icon(((modelica_integer) 64)), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (6
)))))
));
779#line 284 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
780 _ec = tmpMeta[0];
781#line 781 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
782
783#line 287 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
784 _csets = omc_NFExpandableConnectors_addConnectionToSets(threadData, _c, _ec, _csets);
785#line 785 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
786 _return: OMC_LABEL_UNUSED__attribute__((unused))
787 if (out_csets) { *out_csets = _csets; }
788 return _conn;
789}
790
791PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_getExpandableConnectorsInConnector(threadData_t *threadData, modelica_metatype _c1)
792{
793 modelica_metatype _ecl = NULL((void*)0);
794 modelica_metatype _nodes = NULL((void*)0);
795 modelica_metatype _par_name = NULL((void*)0);
796 modelica_metatype _name = NULL((void*)0);
797 modelica_metatype _ty = NULL((void*)0);
798 modelica_metatype tmpMeta[5] __attribute__((unused)) = {0};
799 MMC_SO()mmc_check_stackoverflow(threadData);
800 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
801 // _ecl has no default value.
802 // _nodes has no default value.
803 // _par_name has no default value.
804 // _name has no default value.
805 // _ty has no default value.
806#line 806 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
807 { /* match expression */
808 modelica_metatype tmp3_1;
809 tmp3_1 = _c1;
810 {
811 volatile mmc_switch_type tmp3;
812 int tmp4;
813 tmp3 = 0;
814 for (; tmp3 < 2; tmp3++) {
815 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
816 case 0: {
817 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;
818 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
819 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
820 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[2],11,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[2]) - 3)))==(((2 +1)
<< 10) + (((11 +3) & 255) << 2)))
== 0) goto tmp2_end;
821 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[2]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[2]) - 3
))) + (3)))))
;
822 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[3],3,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3)))==(((2 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
823 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[3]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (3)))))
;
824
825 _par_name = tmpMeta[1];
826 _nodes = tmpMeta[4];
827 /* Pattern matching succeeded */
828#line 243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
829 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
830#line 243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
831 _ecl = tmpMeta[1];
832#line 832 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
833
834#line 245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
835 {
836#line 245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
837 modelica_metatype _n;
838#line 245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
839 for (tmpMeta[1] = _nodes; !listEmpty(tmpMeta[1])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[1]=MMC_CDR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
)
840#line 245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
841 {
842#line 245 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
843 _n = MMC_CAR(tmpMeta[1])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
844#line 246 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
845 _ty = omc_NFInstNode_InstNode_getType(threadData, _n);
846#line 846 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
847
848#line 247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
849 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
850#line 247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
851 _name = omc_NFComponentRef_prefixCref(threadData, _n, _ty, tmpMeta[2], _par_name);
852#line 852 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
853
854#line 248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
855 tmpMeta[2] = mmc_mk_cons(omc_NFConnector_fromCref(threadData, _name, _ty, omc_ElementSource_createElementSource(threadData, omc_NFInstNode_InstNode_info(threadData, _n), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)), _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)))), _ecl);
856#line 248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
857 _ecl = tmpMeta[2];
858#line 858 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
859 }
860 }
861#line 250 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
862 tmpMeta[0] = _ecl;
863#line 863 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
864 goto tmp2_done;
865 }
866 case 1: {
867
868 /* Pattern matching succeeded */
869#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
870 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
871#line 253 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
872 tmpMeta[0] = tmpMeta[1];
873#line 873 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
874 goto tmp2_done;
875 }
876 }
877 goto tmp2_end;
878 tmp2_end: ;
879 }
880 goto goto_1;
881 goto_1:;
882 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
883 goto tmp2_done;
884 tmp2_done:;
885 }
886 }
887 _ecl = tmpMeta[0];
888 _return: OMC_LABEL_UNUSED__attribute__((unused))
889 return _ecl;
890}
891
892PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addNestedExpandableConnectorsToSets(threadData_t *threadData, modelica_metatype _c1, modelica_metatype _c2, modelica_metatype _D_24in_csets)
893{
894 modelica_metatype _csets = NULL((void*)0);
895 modelica_metatype _ecl1 = NULL((void*)0);
896 modelica_metatype _ecl2 = NULL((void*)0);
897 modelica_metatype _oec = NULL((void*)0);
898 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
899 MMC_SO()mmc_check_stackoverflow(threadData);
900 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
901 _csets = _D_24in_csets;
902 // _ecl1 has no default value.
903 // _ecl2 has no default value.
904 // _oec has no default value.
905#line 215 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
906 _ecl1 = omc_NFExpandableConnectors_getExpandableConnectorsInConnector(threadData, _c1);
907#line 907 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
908
909#line 216 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
910 _ecl2 = omc_NFExpandableConnectors_getExpandableConnectorsInConnector(threadData, _c2);
911#line 911 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
912
913#line 218 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
914 if((listEmpty(_ecl1)((*(mmc_uint_t*)((void*)((char*)(_ecl1) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
&& listEmpty(_ecl2)((*(mmc_uint_t*)((void*)((char*)(_ecl2) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
))
915#line 218 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
916 {
917#line 219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
918 goto _return;
919#line 919 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
920 }
921
922#line 222 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
923 {
924#line 222 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
925 modelica_metatype _ec1;
926#line 222 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
927 for (tmpMeta[0] = _ecl1; !listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[0]=MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
)
928#line 222 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
929 {
930#line 222 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
931 _ec1 = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
932#line 223 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
933 _ecl2 = omc_List_deleteMemberOnTrue(threadData, _ec1, _ecl2, boxvar_NFConnector_isNodeNameEqual((void*)((char*)(&(boxvar_lit_NFConnector_isNodeNameEqual
).header) + 3))
,&_oec);
934#line 934 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
935
936#line 225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
937 if(isSome(_oec)(0==((((((*(mmc_uint_t*)((void*)((char*)(_oec) - 3)))) & (
7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(_oec) - 3))))
>> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)(_oec) -
3)))) >> 10)) ? 0 : 1)
)
938#line 225 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
939 {
940#line 226 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
941 _csets = omc_NFExpandableConnectors_addConnectionToSets(threadData, _ec1, omc_Util_getOption(threadData, _oec), _csets);
942#line 942 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
943 }
944 }
945 }
946 _return: OMC_LABEL_UNUSED__attribute__((unused))
947 return _csets;
948}
949
950PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_addExpandableConnectorsToSets(threadData_t *threadData, modelica_metatype _conns, modelica_metatype _D_24in_csets)
951{
952 modelica_metatype _csets = NULL((void*)0);
953 modelica_metatype _c1 = NULL((void*)0);
954 modelica_metatype _c2 = NULL((void*)0);
955 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
956 MMC_SO()mmc_check_stackoverflow(threadData);
957 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
958 _csets = _D_24in_csets;
959 // _c1 has no default value.
960 // _c2 has no default value.
961#line 200 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
962 {
963#line 200 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
964 modelica_metatype _conn;
965#line 200 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
966 for (tmpMeta[0] = _conns; !listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[0]=MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
)
967#line 200 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
968 {
969#line 200 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
970 _conn = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
971#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
972 /* Pattern-matching assignment */
973#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
974 tmpMeta[1] = _conn;
975#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
976 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
977#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
978 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
979#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
980 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
981#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
982 _c1 = tmpMeta[2];
983#line 201 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
984 _c2 = tmpMeta[3];
985#line 985 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
986
987#line 202 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
988 _csets = omc_NFExpandableConnectors_addConnectionToSets(threadData, _c1, _c2, _csets);
989#line 989 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
990
991#line 203 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
992 _csets = omc_NFExpandableConnectors_addNestedExpandableConnectorsToSets(threadData, _c1, _c2, _csets);
993#line 993 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
994 }
995 }
996 _return: OMC_LABEL_UNUSED__attribute__((unused))
997 return _csets;
998}
999
1000PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFExpandableConnectors_sortConnections(threadData_t *threadData, modelica_metatype _conns, modelica_metatype *out_undeclaredConnections, modelica_metatype *out_normalConnections)
1001{
1002 modelica_metatype _expandableConnections = NULL((void*)0);
1003 modelica_metatype _undeclaredConnections = NULL((void*)0);
1004 modelica_metatype _normalConnections = NULL((void*)0);
1005 modelica_metatype _c1 = NULL((void*)0);
1006 modelica_metatype _c2 = NULL((void*)0);
1007 modelica_metatype _err_msg = NULL((void*)0);
1008 modelica_boolean _is_undeclared1;
1009 modelica_boolean _is_undeclared2;
1010 modelica_boolean _is_expandable1;
1011 modelica_boolean _is_expandable2;
1012 modelica_metatype tmpMeta[7] __attribute__((unused)) = {0};
1013 MMC_SO()mmc_check_stackoverflow(threadData);
1014 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1015 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1016 _expandableConnections = tmpMeta[0];
1017 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1018 _undeclaredConnections = tmpMeta[1];
1019 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1020 _normalConnections = tmpMeta[2];
1021 // _c1 has no default value.
1022 // _c2 has no default value.
1023 // _err_msg has no default value.
1024 // _is_undeclared1 has no default value.
1025 // _is_undeclared2 has no default value.
1026 // _is_expandable1 has no default value.
1027 // _is_expandable2 has no default value.
1028#line 160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1029 {
1030#line 160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1031 modelica_metatype _conn;
1032#line 160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1033 for (tmpMeta[3] = _conns; !listEmpty(tmpMeta[3])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[3]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[3]=MMC_CDR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (2)))))
)
1034#line 160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1035 {
1036#line 160 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1037 _conn = MMC_CAR(tmpMeta[3])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[3]) - 3
))) + (1)))))
;
1038#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1039 /* Pattern-matching assignment */
1040#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1041 tmpMeta[4] = _conn;
1042#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1043 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[4],0,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[4]) - 3)))==(((2 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1044#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1045 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (2)))))
;
1046#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1047 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[4]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[4]) - 3
))) + (3)))))
;
1048#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1049 _c1 = tmpMeta[5];
1050#line 161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1051 _c2 = tmpMeta[6];
1052#line 1052 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1053
1054#line 163 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1055 _is_undeclared1 = omc_NFPrefixes_ConnectorType_isUndeclared(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c1), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c1) - 3))) + (5)))))))) >> 1)
);
1056#line 1056 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1057
1058#line 164 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1059 _is_undeclared2 = omc_NFPrefixes_ConnectorType_isUndeclared(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c2), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c2) - 3))) + (5)))))))) >> 1)
);
1060#line 1060 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1061
1062#line 165 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1063 _is_expandable1 = omc_NFPrefixes_ConnectorType_isExpandable(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c1), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c1) - 3))) + (5)))))))) >> 1)
);
1064#line 1064 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1065
1066#line 166 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1067 _is_expandable2 = omc_NFPrefixes_ConnectorType_isExpandable(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c2), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_c2) - 3))) + (5)))))))) >> 1)
);
1068#line 1068 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1069
1070#line 168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1071 if((_is_expandable1 || _is_expandable2))
1072#line 168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1073 {
1074#line 169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1075 if((_is_expandable1 && _is_expandable2))
1076#line 169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1077 {
1078#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1079 tmpMeta[4] = mmc_mk_cons(_conn, _expandableConnections);
1080#line 170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1081 _expandableConnections = tmpMeta[4];
1082#line 1082 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1083 }
1084 else
1085 {
1086#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1087 tmpMeta[4] = mmc_mk_cons(omc_NFConnector_toString(threadData, (_is_expandable1?_c1:_c2)), mmc_mk_cons(omc_NFConnector_toString(threadData, (_is_expandable1?_c2:_c1)), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
1088#line 173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1089 omc_Error_addSourceMessageAndFail(threadData, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)), tmpMeta[4], omc_NFConnector_getInfo(threadData, _c1));
1090#line 1090 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1091 }
1092 }
1093 else
1094 {
1095 if((_is_undeclared1 || _is_undeclared2))
1096 {
1097#line 179 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1098 if((_is_undeclared1 && _is_undeclared2))
1099#line 179 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1100 {
1101#line 181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1102 tmpMeta[4] = mmc_mk_cons(omc_NFConnector_toString(threadData, _c1), mmc_mk_cons(omc_NFConnector_toString(threadData, _c2), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
1103#line 181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1104 omc_Error_addSourceMessageAndFail(threadData, _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)), tmpMeta[4], omc_NFConnector_getInfo(threadData, _c1));
1105#line 1105 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1106 }
1107 else
1108 {
1109#line 184 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1110 tmpMeta[4] = mmc_mk_cons(_conn, _undeclaredConnections);
1111#line 184 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1112 _undeclaredConnections = tmpMeta[4];
1113#line 1113 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1114 }
1115 }
1116 else
1117 {
1118#line 187 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1119 tmpMeta[4] = mmc_mk_cons(_conn, _normalConnections);
1120#line 187 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1121 _normalConnections = tmpMeta[4];
1122#line 1122 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1123 }
1124 }
1125 }
1126 }
1127
1128#line 191 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1129 _normalConnections = listReverseInPlace(_normalConnections);
1130#line 1130 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1131 _return: OMC_LABEL_UNUSED__attribute__((unused))
1132 if (out_undeclaredConnections) { *out_undeclaredConnections = _undeclaredConnections; }
1133 if (out_normalConnections) { *out_normalConnections = _normalConnections; }
1134 return _expandableConnections;
1135}
1136
1137DLLExport
1138modelica_metatype omc_NFExpandableConnectors_ExpandableSet_add(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _hashSet)
1139{
1140 modelica_metatype _outHashSet = NULL((void*)0);
1141 MMC_SO()mmc_check_stackoverflow(threadData);
1142 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1143 // _outHashSet has no default value.
1144 _return: OMC_LABEL_UNUSED__attribute__((unused))
1145 return _outHashSet;
1146}
1147
1148DLLExport
1149modelica_metatype omc_NFExpandableConnectors_ExpandableSet_addNoUpdCheck(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _hashSet)
1150{
1151 modelica_metatype _outHashSet = NULL((void*)0);
1152 MMC_SO()mmc_check_stackoverflow(threadData);
1153 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1154 // _outHashSet has no default value.
1155 _return: OMC_LABEL_UNUSED__attribute__((unused))
1156 return _outHashSet;
1157}
1158
1159DLLExport
1160modelica_metatype omc_NFExpandableConnectors_ExpandableSet_addUnique(threadData_t *threadData, modelica_metatype _key, modelica_metatype _hashSet)
1161{
1162 modelica_metatype _outHashSet = NULL((void*)0);
1163 MMC_SO()mmc_check_stackoverflow(threadData);
1164 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1165 // _outHashSet has no default value.
1166 _return: OMC_LABEL_UNUSED__attribute__((unused))
1167 return _outHashSet;
1168}
1169
1170DLLExport
1171modelica_integer omc_NFExpandableConnectors_ExpandableSet_bucketToValuesSize(threadData_t *threadData, modelica_integer _szBucket)
1172{
1173 modelica_integer _szArr;
2
'_szArr' declared without an initial value
1174 MMC_SO()mmc_check_stackoverflow(threadData);
1175 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1176 // _szArr has no default value.
1177 _return: OMC_LABEL_UNUSED__attribute__((unused))
1178 return _szArr;
3
Undefined or garbage value returned to caller
1179}
1180modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_bucketToValuesSize(threadData_t *threadData, modelica_metatype _szBucket)
1181{
1182 modelica_integer tmp1;
1183 modelica_integer _szArr;
1184 modelica_metatype out_szArr;
1185 tmp1 = mmc_unbox_integer(_szBucket)(((mmc_sint_t) (_szBucket)) >> 1);
1186 _szArr = omc_NFExpandableConnectors_ExpandableSet_bucketToValuesSize(threadData, tmp1);
1
Calling 'omc_NFExpandableConnectors_ExpandableSet_bucketToValuesSize'
1187 out_szArr = mmc_mk_icon(_szArr);
1188 return out_szArr;
1189}
1190
1191DLLExport
1192modelica_integer omc_NFExpandableConnectors_ExpandableSet_currentSize(threadData_t *threadData, modelica_metatype _hashSet)
1193{
1194 modelica_integer _sz;
1195 MMC_SO()mmc_check_stackoverflow(threadData);
1196 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1197 // _sz has no default value.
1198 _return: OMC_LABEL_UNUSED__attribute__((unused))
1199 return _sz;
1200}
1201modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_currentSize(threadData_t *threadData, modelica_metatype _hashSet)
1202{
1203 modelica_integer _sz;
1204 modelica_metatype out_sz;
1205 _sz = omc_NFExpandableConnectors_ExpandableSet_currentSize(threadData, _hashSet);
1206 out_sz = mmc_mk_icon(_sz);
1207 return out_sz;
1208}
1209
1210DLLExport
1211modelica_metatype omc_NFExpandableConnectors_ExpandableSet_delete(threadData_t *threadData, modelica_metatype _key, modelica_metatype _hashSet)
1212{
1213 modelica_metatype _outHashSet = NULL((void*)0);
1214 MMC_SO()mmc_check_stackoverflow(threadData);
1215 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1216 // _outHashSet has no default value.
1217 _return: OMC_LABEL_UNUSED__attribute__((unused))
1218 return _outHashSet;
1219}
1220
1221DLLExport
1222void omc_NFExpandableConnectors_ExpandableSet_dumpHashSet(threadData_t *threadData, modelica_metatype _hashSet)
1223{
1224 MMC_SO()mmc_check_stackoverflow(threadData);
1225 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1226 _return: OMC_LABEL_UNUSED__attribute__((unused))
1227 return;
1228}
1229
1230DLLExport
1231modelica_metatype omc_NFExpandableConnectors_ExpandableSet_emptyHashSetWork(threadData_t *threadData, modelica_integer _szBucket, modelica_metatype _fntpl)
1232{
1233 modelica_metatype _hashSet = NULL((void*)0);
1234 MMC_SO()mmc_check_stackoverflow(threadData);
1235 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1236 // _hashSet has no default value.
1237 _return: OMC_LABEL_UNUSED__attribute__((unused))
1238 return _hashSet;
1239}
1240modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_emptyHashSetWork(threadData_t *threadData, modelica_metatype _szBucket, modelica_metatype _fntpl)
1241{
1242 modelica_integer tmp1;
1243 modelica_metatype _hashSet = NULL((void*)0);
1244 tmp1 = mmc_unbox_integer(_szBucket)(((mmc_sint_t) (_szBucket)) >> 1);
1245 _hashSet = omc_NFExpandableConnectors_ExpandableSet_emptyHashSetWork(threadData, tmp1, _fntpl);
1246 /* skip box _hashSet; tuple<array<list<tuple<NFConnector, #Integer>>>, tuple<#Integer, #Integer, array<Option<NFConnector>>>, #Integer, #Integer, tuple<.NFExpandableConnectors.ExpandableSet.FuncHash<function>(NFConnector key, #Integer mod) => #Integer, .NFExpandableConnectors.ExpandableSet.FuncEq<function>(NFConnector key1, NFConnector key2) => #Boolean, .NFExpandableConnectors.ExpandableSet.FuncKeyString<function>(NFConnector key) => String>> */
1247 return _hashSet;
1248}
1249
1250DLLExport
1251modelica_metatype omc_NFExpandableConnectors_ExpandableSet_emptySet(threadData_t *threadData, modelica_integer _size)
1252{
1253 modelica_metatype _set = NULL((void*)0);
1254 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
1255 MMC_SO()mmc_check_stackoverflow(threadData);
1256 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1257 // _set has no default value.
1258#line 132 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1259 tmpMeta[0] = mmc_mk_box3(0, boxvar_NFExpandableConnectors_ExpandableSet_hashConnector((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_ExpandableSet_hashConnector
).header) + 3))
, boxvar_NFConnector_isNodeNameEqual((void*)((char*)(&(boxvar_lit_NFConnector_isNodeNameEqual
).header) + 3))
, boxvar_NFConnector_toString((void*)((char*)(&(boxvar_lit_NFConnector_toString).header
) + 3))
);
1260#line 132 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1261 _set = omc_BaseHashSet_emptyHashSetWork(threadData, _size, tmpMeta[0]);
1262#line 1262 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1263 _return: OMC_LABEL_UNUSED__attribute__((unused))
1264 return _set;
1265}
1266modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_emptySet(threadData_t *threadData, modelica_metatype _size)
1267{
1268 modelica_integer tmp1;
1269 modelica_metatype _set = NULL((void*)0);
1270 tmp1 = mmc_unbox_integer(_size)(((mmc_sint_t) (_size)) >> 1);
1271 _set = omc_NFExpandableConnectors_ExpandableSet_emptySet(threadData, tmp1);
1272 /* skip box _set; tuple<array<list<tuple<NFConnector, #Integer>>>, tuple<#Integer, #Integer, array<Option<NFConnector>>>, #Integer, #Integer, tuple<.NFExpandableConnectors.ExpandableSet.FuncHash<function>(NFConnector key, #Integer mod) => #Integer, .NFExpandableConnectors.ExpandableSet.FuncEq<function>(NFConnector key1, NFConnector key2) => #Boolean, .NFExpandableConnectors.ExpandableSet.FuncKeyString<function>(NFConnector key) => String>> */
1273 return _set;
1274}
1275
1276DLLExport
1277modelica_metatype omc_NFExpandableConnectors_ExpandableSet_get(threadData_t *threadData, modelica_metatype _key, modelica_metatype _hashSet)
1278{
1279 modelica_metatype _okey = NULL((void*)0);
1280 MMC_SO()mmc_check_stackoverflow(threadData);
1281 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1282 // _okey has no default value.
1283 _return: OMC_LABEL_UNUSED__attribute__((unused))
1284 return _okey;
1285}
1286
1287DLLExport
1288modelica_boolean omc_NFExpandableConnectors_ExpandableSet_has(threadData_t *threadData, modelica_metatype _key, modelica_metatype _hashSet)
1289{
1290 modelica_boolean _b;
1291 MMC_SO()mmc_check_stackoverflow(threadData);
1292 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1293 // _b has no default value.
1294 _return: OMC_LABEL_UNUSED__attribute__((unused))
1295 return _b;
1296}
1297modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_has(threadData_t *threadData, modelica_metatype _key, modelica_metatype _hashSet)
1298{
1299 modelica_boolean _b;
1300 modelica_metatype out_b;
1301 _b = omc_NFExpandableConnectors_ExpandableSet_has(threadData, _key, _hashSet);
1302 out_b = mmc_mk_icon(_b);
1303 return out_b;
1304}
1305
1306DLLExport
1307modelica_boolean omc_NFExpandableConnectors_ExpandableSet_hasAll(threadData_t *threadData, modelica_metatype _keys, modelica_metatype _hashSet)
1308{
1309 modelica_boolean _b;
1310 MMC_SO()mmc_check_stackoverflow(threadData);
1311 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1312 // _b has no default value.
1313 _return: OMC_LABEL_UNUSED__attribute__((unused))
1314 return _b;
1315}
1316modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_hasAll(threadData_t *threadData, modelica_metatype _keys, modelica_metatype _hashSet)
1317{
1318 modelica_boolean _b;
1319 modelica_metatype out_b;
1320 _b = omc_NFExpandableConnectors_ExpandableSet_hasAll(threadData, _keys, _hashSet);
1321 out_b = mmc_mk_icon(_b);
1322 return out_b;
1323}
1324
1325DLLExport
1326modelica_integer omc_NFExpandableConnectors_ExpandableSet_hashConnector(threadData_t *threadData, modelica_metatype _conn, modelica_integer _mod)
1327{
1328 modelica_integer _res;
1329 MMC_SO()mmc_check_stackoverflow(threadData);
1330 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1331 // _res has no default value.
1332#line 141 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1333 _res = stringHashDjb2Mod(omc_NFComponentRef_firstName(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_conn), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_conn) - 3))) +
(2)))))
)), _mod);
1334#line 1334 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1335 _return: OMC_LABEL_UNUSED__attribute__((unused))
1336 return _res;
1337}
1338modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_hashConnector(threadData_t *threadData, modelica_metatype _conn, modelica_metatype _mod)
1339{
1340 modelica_integer tmp1;
1341 modelica_integer _res;
1342 modelica_metatype out_res;
1343 tmp1 = mmc_unbox_integer(_mod)(((mmc_sint_t) (_mod)) >> 1);
1344 _res = omc_NFExpandableConnectors_ExpandableSet_hashConnector(threadData, _conn, tmp1);
1345 out_res = mmc_mk_icon(_res);
1346 return out_res;
1347}
1348
1349DLLExport
1350modelica_metatype omc_NFExpandableConnectors_ExpandableSet_hashSetList(threadData_t *threadData, modelica_metatype _hashSet)
1351{
1352 modelica_metatype _lst = NULL((void*)0);
1353 MMC_SO()mmc_check_stackoverflow(threadData);
1354 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1355 // _lst has no default value.
1356 _return: OMC_LABEL_UNUSED__attribute__((unused))
1357 return _lst;
1358}
1359
1360DLLExport
1361void omc_NFExpandableConnectors_ExpandableSet_printHashSet(threadData_t *threadData, modelica_metatype _hashSet)
1362{
1363 MMC_SO()mmc_check_stackoverflow(threadData);
1364 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1365 _return: OMC_LABEL_UNUSED__attribute__((unused))
1366 return;
1367}
1368
1369DLLExport
1370modelica_metatype omc_NFExpandableConnectors_ExpandableSet_valueArrayAdd(threadData_t *threadData, modelica_metatype _valueArray, modelica_metatype _entry)
1371{
1372 modelica_metatype _outValueArray = NULL((void*)0);
1373 MMC_SO()mmc_check_stackoverflow(threadData);
1374 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1375 // _outValueArray has no default value.
1376 _return: OMC_LABEL_UNUSED__attribute__((unused))
1377 return _outValueArray;
1378}
1379
1380DLLExport
1381modelica_metatype omc_NFExpandableConnectors_ExpandableSet_valueArrayClearnth(threadData_t *threadData, modelica_metatype _valueArray, modelica_integer _pos)
1382{
1383 modelica_metatype _outValueArray = NULL((void*)0);
1384 MMC_SO()mmc_check_stackoverflow(threadData);
1385 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1386 // _outValueArray has no default value.
1387 _return: OMC_LABEL_UNUSED__attribute__((unused))
1388 return _outValueArray;
1389}
1390modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_valueArrayClearnth(threadData_t *threadData, modelica_metatype _valueArray, modelica_metatype _pos)
1391{
1392 modelica_integer tmp1;
1393 modelica_metatype _outValueArray = NULL((void*)0);
1394 tmp1 = mmc_unbox_integer(_pos)(((mmc_sint_t) (_pos)) >> 1);
1395 _outValueArray = omc_NFExpandableConnectors_ExpandableSet_valueArrayClearnth(threadData, _valueArray, tmp1);
1396 /* skip box _outValueArray; tuple<#Integer, #Integer, array<Option<NFConnector>>> */
1397 return _outValueArray;
1398}
1399
1400DLLExport
1401modelica_integer omc_NFExpandableConnectors_ExpandableSet_valueArrayLength(threadData_t *threadData, modelica_metatype _valueArray)
1402{
1403 modelica_integer _sz;
1404 MMC_SO()mmc_check_stackoverflow(threadData);
1405 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1406 // _sz has no default value.
1407 _return: OMC_LABEL_UNUSED__attribute__((unused))
1408 return _sz;
1409}
1410modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_valueArrayLength(threadData_t *threadData, modelica_metatype _valueArray)
1411{
1412 modelica_integer _sz;
1413 modelica_metatype out_sz;
1414 _sz = omc_NFExpandableConnectors_ExpandableSet_valueArrayLength(threadData, _valueArray);
1415 out_sz = mmc_mk_icon(_sz);
1416 return out_sz;
1417}
1418
1419DLLExport
1420modelica_metatype omc_NFExpandableConnectors_ExpandableSet_valueArrayList(threadData_t *threadData, modelica_metatype _inValueArray)
1421{
1422 modelica_metatype _outList = NULL((void*)0);
1423 MMC_SO()mmc_check_stackoverflow(threadData);
1424 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1425 // _outList has no default value.
1426 _return: OMC_LABEL_UNUSED__attribute__((unused))
1427 return _outList;
1428}
1429
1430DLLExport
1431modelica_metatype omc_NFExpandableConnectors_ExpandableSet_valueArrayNth(threadData_t *threadData, modelica_metatype _valueArray, modelica_integer _pos)
1432{
1433 modelica_metatype _key = NULL((void*)0);
1434 MMC_SO()mmc_check_stackoverflow(threadData);
1435 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1436 // _key has no default value.
1437 _return: OMC_LABEL_UNUSED__attribute__((unused))
1438 return _key;
1439}
1440modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_valueArrayNth(threadData_t *threadData, modelica_metatype _valueArray, modelica_metatype _pos)
1441{
1442 modelica_integer tmp1;
1443 modelica_metatype _key = NULL((void*)0);
1444 tmp1 = mmc_unbox_integer(_pos)(((mmc_sint_t) (_pos)) >> 1);
1445 _key = omc_NFExpandableConnectors_ExpandableSet_valueArrayNth(threadData, _valueArray, tmp1);
1446 /* skip box _key; NFConnector */
1447 return _key;
1448}
1449
1450DLLExport
1451modelica_metatype omc_NFExpandableConnectors_ExpandableSet_valueArraySetnth(threadData_t *threadData, modelica_metatype _valueArray, modelica_integer _pos, modelica_metatype _entry)
1452{
1453 modelica_metatype _outValueArray = NULL((void*)0);
1454 MMC_SO()mmc_check_stackoverflow(threadData);
1455 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1456 // _outValueArray has no default value.
1457 _return: OMC_LABEL_UNUSED__attribute__((unused))
1458 return _outValueArray;
1459}
1460modelica_metatype boxptr_NFExpandableConnectors_ExpandableSet_valueArraySetnth(threadData_t *threadData, modelica_metatype _valueArray, modelica_metatype _pos, modelica_metatype _entry)
1461{
1462 modelica_integer tmp1;
1463 modelica_metatype _outValueArray = NULL((void*)0);
1464 tmp1 = mmc_unbox_integer(_pos)(((mmc_sint_t) (_pos)) >> 1);
1465 _outValueArray = omc_NFExpandableConnectors_ExpandableSet_valueArraySetnth(threadData, _valueArray, tmp1, _entry);
1466 /* skip box _outValueArray; tuple<#Integer, #Integer, array<Option<NFConnector>>> */
1467 return _outValueArray;
1468}
1469
1470DLLExport
1471modelica_metatype omc_NFExpandableConnectors_elaborate(threadData_t *threadData, modelica_metatype _D_24in_flatModel, modelica_metatype _D_24in_connections, modelica_metatype *out_connections)
1472{
1473 modelica_metatype _flatModel = NULL((void*)0);
1474 modelica_metatype _connections = NULL((void*)0);
1475 modelica_metatype _expandable_conns = NULL((void*)0);
1476 modelica_metatype _undeclared_conns = NULL((void*)0);
1477 modelica_metatype _conns = NULL((void*)0);
1478 modelica_metatype _vars = NULL((void*)0);
1479 modelica_metatype _csets = NULL((void*)0);
1480 modelica_metatype _csets_array = NULL((void*)0);
1481 modelica_integer tmp1;
1482 modelica_integer tmp2;
1483 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1484 MMC_SO()mmc_check_stackoverflow(threadData);
1485 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1486 _flatModel = _D_24in_flatModel;
1487 _connections = _D_24in_connections;
1488 // _expandable_conns has no default value.
1489 // _undeclared_conns has no default value.
1490 // _conns has no default value.
1491 // _vars has no default value.
1492 // _csets has no default value.
1493 // _csets_array has no default value.
1494#line 78 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1495 _expandable_conns = omc_NFExpandableConnectors_sortConnections(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_connections), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_connections) -
3))) + (2)))))
) ,&_undeclared_conns ,&_conns);
1496#line 1496 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1497
1498#line 81 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1499 if((listEmpty(_expandable_conns)((*(mmc_uint_t*)((void*)((char*)(_expandable_conns) - 3))) ==
(((0) << 10) + (((0) & 255) << 2)))
&& listEmpty(_undeclared_conns)((*(mmc_uint_t*)((void*)((char*)(_undeclared_conns) - 3))) ==
(((0) << 10) + (((0) & 255) << 2)))
))
1500#line 81 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1501 {
1502#line 82 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1503 goto _return;
1504#line 1504 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1505 }
1506
1507#line 88 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1508 _csets = omc_NFConnectionSets_ConnectionSets_emptySets(threadData, listLength(_expandable_conns) + listLength(_undeclared_conns));
1509#line 1509 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1510
1511#line 89 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1512 _csets = omc_NFExpandableConnectors_addExpandableConnectorsToSets(threadData, _expandable_conns, _csets);
1513#line 1513 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1514
1515#line 90 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1516 _undeclared_conns = omc_List_mapFold(threadData, _undeclared_conns, boxvar_NFExpandableConnectors_addUndeclaredConnectorToSets((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_addUndeclaredConnectorToSets
).header) + 3))
, _csets ,&_csets);
1517#line 1517 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1518
1519#line 92 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1520 _csets_array = omc_NFConnectionSets_ConnectionSets_extractSets(threadData, _csets, NULL((void*)0));
1521#line 1521 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1522
1523#line 102 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1524 _vars = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_flatModel), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_flatModel) - 3
))) + (3)))))
);
1525#line 1525 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1526
1527#line 103 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1528 {
1529#line 103 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1530 modelica_metatype _set;
1531#line 103 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1532 for (tmpMeta[0] = _csets_array, tmp2 = arrayLength(tmpMeta[0]), tmp1 = 1; tmp1 <= tmp2; tmp1++)
1533#line 103 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1534 {
1535#line 103 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1536 _set = arrayGet(tmpMeta[0],tmp1)nobox_arrayGet(threadData,tmpMeta[0],tmp1);
1537#line 104 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1538 _vars = omc_NFExpandableConnectors_elaborateExpandableSet(threadData, _set, _vars);
1539#line 1539 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1540 }
1541 }
1542
1543#line 108 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1544 _conns = omc_List_fold(threadData, _undeclared_conns, boxvar_NFExpandableConnectors_updateUndeclaredConnection((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateUndeclaredConnection
).header) + 3))
, _conns);
1545#line 1545 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1546
1547#line 109 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1548 _conns = omc_List_fold(threadData, _expandable_conns, boxvar_NFExpandableConnectors_updateExpandableConnection((void*)((char*)(&(boxvar_lit_NFExpandableConnectors_updateExpandableConnection
).header) + 3))
, _conns);
1549#line 1549 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1550
1551#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1552 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(5))((void*)((char*)(mmc_alloc_words(5)) + 3));
1553#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1554 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_connections)((void*)((char*)(_connections) - 3)), 5*sizeof(modelica_metatype));
1555#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1556 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[2] = _conns;
1557#line 110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1558 _connections = tmpMeta[0];
1559#line 1559 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1560
1561#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1562 {
1563#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1564 modelica_metatype _D_24tmpVar1;
1565#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1566 modelica_metatype* tmp3;
1567#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1568 modelica_metatype _D_24tmpVar0;
1569#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1570 int tmp4;
1571#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1572 modelica_metatype _v_loopVar = 0;
1573#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1574 modelica_metatype _v;
1575#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1576 _v_loopVar = _vars;
1577#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1578 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1579#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1580 _D_24tmpVar1 = tmpMeta[1]; /* defaultValue */
1581#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1582 tmp3 = &_D_24tmpVar1;
1583#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1584 while(1) {
1585#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1586 tmp4 = 1;
1587#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1588 if (!listEmpty(_v_loopVar)((*(mmc_uint_t*)((void*)((char*)(_v_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
1589#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1590 _v = MMC_CAR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (1)))))
;
1591#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1592 _v_loopVar = MMC_CDR(_v_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_v_loopVar) - 3
))) + (2)))))
;
1593#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1594 tmp4--;
1595#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1596 }
1597#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1598 if (tmp4 == 0) {
1599#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1600 _D_24tmpVar0 = omc_NFExpandableConnectors_updatePotentiallyPresentVariable(threadData, _v);
1601#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1602 *tmp3 = mmc_mk_cons(_D_24tmpVar0,0);
1603#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1604 tmp3 = &MMC_CDR(*tmp3)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp3) - 3))) +
(2)))))
;
1605#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1606 } else if (tmp4 == 1) {
1607#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1608 break;
1609#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1610 } else {
1611#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1612 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1613#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1614 }
1615#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1616 }
1617#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1618 *tmp3 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
1619#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1620 tmpMeta[0] = _D_24tmpVar1;
1621#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1622 }
1623#line 115 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1624 _vars = tmpMeta[0];
1625#line 1625 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1626
1627#line 116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1628 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(9))((void*)((char*)(mmc_alloc_words(9)) + 3));
1629#line 116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1630 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_flatModel)((void*)((char*)(_flatModel) - 3)), 9*sizeof(modelica_metatype));
1631#line 116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1632 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[3] = _vars;
1633#line 116 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFExpandableConnectors.mo"
1634 _flatModel = tmpMeta[0];
1635#line 1635 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFExpandableConnectors.c"
1636 _return: OMC_LABEL_UNUSED__attribute__((unused))
1637 if (out_connections) { *out_connections = _connections; }
1638 return _flatModel;
1639}
1640