Bug Summary

File:OMCompiler/Compiler/boot/build/NFClassTree.c
Warning:line 5530, column 13
Value stored to '_inst_scope' is never read

Annotated Source Code

[?] Use j/k keys for keyboard navigation

1#ifdef OMC_BASE_FILE
2 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c" OMC_BASE_FILE
3#else
4 #define OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5#endif
6#include "omc_simulation_settings.h"
7#include "NFClassTree.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"Modifier '%s' found on outer element %s." "Modifier '%s' found on outer element %s."
13static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT2,40,_OMC_LIT2_data)struct { mmc_uint_t header; const char data[(40)+1]; } _OMC_LIT_STRUCT2
= { ((((mmc_uint_t)40)<<(3))+((1<<(3+3))+5)), "Modifier '%s' found on outer element %s."
}
;
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(307))((void*)(((((mmc_uint_t) (307)) << 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,10,3)struct { mmc_uint_t header; const void *data[10]; } _OMC_LIT_STRUCT5
= { (((10) << 10) + (((3) & 255) << 2)),
{&SCodeDump_SCodeDumpOptions_OPTIONS__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),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(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))),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0)))}};
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"Illegal outer class %s, outer classes may only be declared using short-class definitions." "Illegal outer class %s, outer classes may only be declared using short-class definitions."
22static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT6,89,_OMC_LIT6_data)struct { mmc_uint_t header; const char data[(89)+1]; } _OMC_LIT_STRUCT6
= { ((((mmc_uint_t)89)<<(3))+((1<<(3+3))+5)), "Illegal outer class %s, outer classes may only be declared using short-class definitions."
}
;
23#define _OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT6)((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3))
24static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT7,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT7
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT6((void*)((char*)(&(_OMC_LIT_STRUCT6).header) + 3))}};
25#define _OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT7)((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))
26static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT8,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT8
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(308))((void*)(((((mmc_uint_t) (308)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT7((void*)((char*)(&(_OMC_LIT_STRUCT7).header) + 3))}};
27#define _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT8)((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3))
28#define _OMC_LIT9_data"Found inner %s %s instead of expected %s." "Found inner %s %s instead of expected %s."
29static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT9,41,_OMC_LIT9_data)struct { mmc_uint_t header; const char data[(41)+1]; } _OMC_LIT_STRUCT9
= { ((((mmc_uint_t)41)<<(3))+((1<<(3+3))+5)), "Found inner %s %s instead of expected %s."
}
;
30#define _OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT9)((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))
31static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT10,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT10
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT9((void*)((char*)(&(_OMC_LIT_STRUCT9).header) + 3))}};
32#define _OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT10)((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))
33static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT11,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT11
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(305))((void*)(((((mmc_uint_t) (305)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT10((void*)((char*)(&(_OMC_LIT_STRUCT10).header) + 3))}};
34#define _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT11)((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3))
35#define _OMC_LIT12_data"Illegal redeclare of element %s, no inherited element with that name exists." "Illegal redeclare of element %s, no inherited element with that name exists."
36static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT12,76,_OMC_LIT12_data)struct { mmc_uint_t header; const char data[(76)+1]; } _OMC_LIT_STRUCT12
= { ((((mmc_uint_t)76)<<(3))+((1<<(3+3))+5)), "Illegal redeclare of element %s, no inherited element with that name exists."
}
;
37#define _OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT12)((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))
38static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT13,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT13
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT12((void*)((char*)(&(_OMC_LIT_STRUCT12).header) + 3))}};
39#define _OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT13)((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))
40static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT14,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT14
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(228))((void*)(((((mmc_uint_t) (228)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT13((void*)((char*)(&(_OMC_LIT_STRUCT13).header) + 3))}};
41#define _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT14)((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3))
42#define _OMC_LIT15_data"Base class targeted by class extends %s not found in the inherited classes." "Base class targeted by class extends %s not found in the inherited classes."
43static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT15,75,_OMC_LIT15_data)struct { mmc_uint_t header; const char data[(75)+1]; } _OMC_LIT_STRUCT15
= { ((((mmc_uint_t)75)<<(3))+((1<<(3+3))+5)), "Base class targeted by class extends %s not found in the inherited classes."
}
;
44#define _OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT15)((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))
45static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT16,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT16
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT15((void*)((char*)(&(_OMC_LIT_STRUCT15).header) + 3))}};
46#define _OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT16)((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))
47static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT17,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT17
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(579))((void*)(((((mmc_uint_t) (579)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT16((void*)((char*)(&(_OMC_LIT_STRUCT16).header) + 3))}};
48#define _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT17)((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3))
49#define _OMC_LIT18_data"An element with name %s is already declared in this scope." "An element with name %s is already declared in this scope."
50static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT18,58,_OMC_LIT18_data)struct { mmc_uint_t header; const char data[(58)+1]; } _OMC_LIT_STRUCT18
= { ((((mmc_uint_t)58)<<(3))+((1<<(3+3))+5)), "An element with name %s is already declared in this scope."
}
;
51#define _OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT18)((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))
52static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT19,2,3)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT19
= { (((2) << 10) + (((3) & 255) << 2)),
{&Gettext_TranslatableContent_gettext__desc,_OMC_LIT18((void*)((char*)(&(_OMC_LIT_STRUCT18).header) + 3))}};
53#define _OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT19)((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))
54static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT20,5,3)struct { mmc_uint_t header; const void *data[5]; } _OMC_LIT_STRUCT20
= { (((5) << 10) + (((3) & 255) << 2)),
{&ErrorTypes_Message_MESSAGE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(161))((void*)(((((mmc_uint_t) (161)) << 1)+0))),_OMC_LIT0((void*)((char*)(&(_OMC_LIT_STRUCT0).header) + 3)),_OMC_LIT1((void*)((char*)(&(_OMC_LIT_STRUCT1).header) + 3)),_OMC_LIT19((void*)((char*)(&(_OMC_LIT_STRUCT19).header) + 3))}};
55#define _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT20)((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3))
56#define _OMC_LIT21_data"NFClassTree.ClassTree.findLocalConflictElement got invalid entry index" "NFClassTree.ClassTree.findLocalConflictElement got invalid entry index"
57static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT21,70,_OMC_LIT21_data)struct { mmc_uint_t header; const char data[(70)+1]; } _OMC_LIT_STRUCT21
= { ((((mmc_uint_t)70)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.findLocalConflictElement got invalid entry index"
}
;
58#define _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT21)((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3))
59#define _OMC_LIT22_data"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo" "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
60static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT22,99,_OMC_LIT22_data)struct { mmc_uint_t header; const char data[(99)+1]; } _OMC_LIT_STRUCT22
= { ((((mmc_uint_t)99)<<(3))+((1<<(3+3))+5)), "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
}
;
61#define _OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT22)((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3))
62static const MMC_DEFREALLIT(_OMC_LIT_STRUCT23_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT23_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
63#define _OMC_LIT23_6((void*)((char*)(&(_OMC_LIT_STRUCT23_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT23_6)((void*)((char*)(&(_OMC_LIT_STRUCT23_6).header) + 3))
64static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT23,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT23
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1597))((void*)(((((mmc_uint_t) (1597)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(13))((void*)(((((mmc_uint_t) (13)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1597))((void*)(((((mmc_uint_t) (1597)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(108))((void*)(((((mmc_uint_t) (108)) << 1)+0))),_OMC_LIT23_6((void*)((char*)(&(_OMC_LIT_STRUCT23_6).header) + 3))}};
65#define _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT23)((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3))
66#define _OMC_LIT24_data"NFClassTree.ClassTree.findLocalConflictElement got invalid entry" "NFClassTree.ClassTree.findLocalConflictElement got invalid entry"
67static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT24,64,_OMC_LIT24_data)struct { mmc_uint_t header; const char data[(64)+1]; } _OMC_LIT_STRUCT24
= { ((((mmc_uint_t)64)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.findLocalConflictElement got invalid entry"
}
;
68#define _OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT24)((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3))
69static const MMC_DEFREALLIT(_OMC_LIT_STRUCT25_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT25_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
70#define _OMC_LIT25_6((void*)((char*)(&(_OMC_LIT_STRUCT25_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT25_6)((void*)((char*)(&(_OMC_LIT_STRUCT25_6).header) + 3))
71static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT25,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT25
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1603))((void*)(((((mmc_uint_t) (1603)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(13))((void*)(((((mmc_uint_t) (13)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1603))((void*)(((((mmc_uint_t) (1603)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(91))((void*)(((((mmc_uint_t) (91)) << 1)+0))),_OMC_LIT25_6((void*)((char*)(&(_OMC_LIT_STRUCT25_6).header) + 3))}};
72#define _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT25)((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3))
73#define _OMC_LIT26_data"NFClassTree.ClassTree.getRedeclaredNode failed on " "NFClassTree.ClassTree.getRedeclaredNode failed on "
74static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT26,50,_OMC_LIT26_data)struct { mmc_uint_t header; const char data[(50)+1]; } _OMC_LIT_STRUCT26
= { ((((mmc_uint_t)50)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.getRedeclaredNode failed on "
}
;
75#define _OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT26)((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3))
76static const MMC_DEFREALLIT(_OMC_LIT_STRUCT27_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT27_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
77#define _OMC_LIT27_6((void*)((char*)(&(_OMC_LIT_STRUCT27_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT27_6)((void*)((char*)(&(_OMC_LIT_STRUCT27_6).header) + 3))
78static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT27,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT27
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1372))((void*)(((((mmc_uint_t) (1372)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(9))((void*)(((((mmc_uint_t) (9)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(1372))((void*)(((((mmc_uint_t) (1372)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(87))((void*)(((((mmc_uint_t) (87)) << 1)+0))),_OMC_LIT27_6((void*)((char*)(&(_OMC_LIT_STRUCT27_6).header) + 3))}};
79#define _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT27)((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3))
80static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT28,1,10)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT28
= { (((1) << 10) + (((10) & 255) << 2)),
{&NFInstNode_InstNode_EMPTY__NODE__desc,}};
81#define _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT28)((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))
82static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT29,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT29
= { (((1) << 10) + (((5) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_EMPTY__desc,}};
83#define _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT29)((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3))
84static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT30,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT30
= { (((1) << 10) + (((5) & 255) << 2)),
{&NFClassTree_DuplicateTree_Tree_EMPTY__desc,}};
85#define _OMC_LIT30((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT30)((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3))
86#define _OMC_LIT31_data"NFClassTree.ClassTree.instantiate miscounted components in " "NFClassTree.ClassTree.instantiate miscounted components in "
87static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT31,59,_OMC_LIT31_data)struct { mmc_uint_t header; const char data[(59)+1]; } _OMC_LIT_STRUCT31
= { ((((mmc_uint_t)59)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.instantiate miscounted components in "
}
;
88#define _OMC_LIT31((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT31)((void*)((char*)(&(_OMC_LIT_STRUCT31).header) + 3))
89static const MMC_DEFREALLIT(_OMC_LIT_STRUCT32_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT32_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
90#define _OMC_LIT32_6((void*)((char*)(&(_OMC_LIT_STRUCT32_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT32_6)((void*)((char*)(&(_OMC_LIT_STRUCT32_6).header) + 3))
91static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT32,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT32
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(685))((void*)(((((mmc_uint_t) (685)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(15))((void*)(((((mmc_uint_t) (15)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(686))((void*)(((((mmc_uint_t) (686)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(54))((void*)(((((mmc_uint_t) (54)) << 1)+0))),_OMC_LIT32_6((void*)((char*)(&(_OMC_LIT_STRUCT32_6).header) + 3))}};
92#define _OMC_LIT32((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT32)((void*)((char*)(&(_OMC_LIT_STRUCT32).header) + 3))
93#define _OMC_LIT33_data"NFClassTree.ClassTree.instantiate miscounted classes in " "NFClassTree.ClassTree.instantiate miscounted classes in "
94static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT33,56,_OMC_LIT33_data)struct { mmc_uint_t header; const char data[(56)+1]; } _OMC_LIT_STRUCT33
= { ((((mmc_uint_t)56)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.instantiate miscounted classes in "
}
;
95#define _OMC_LIT33((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT33)((void*)((char*)(&(_OMC_LIT_STRUCT33).header) + 3))
96static const MMC_DEFREALLIT(_OMC_LIT_STRUCT34_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT34_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
97#define _OMC_LIT34_6((void*)((char*)(&(_OMC_LIT_STRUCT34_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT34_6)((void*)((char*)(&(_OMC_LIT_STRUCT34_6).header) + 3))
98static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT34,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT34
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(690))((void*)(((((mmc_uint_t) (690)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(15))((void*)(((((mmc_uint_t) (15)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(691))((void*)(((((mmc_uint_t) (691)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(54))((void*)(((((mmc_uint_t) (54)) << 1)+0))),_OMC_LIT34_6((void*)((char*)(&(_OMC_LIT_STRUCT34_6).header) + 3))}};
99#define _OMC_LIT34((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT34)((void*)((char*)(&(_OMC_LIT_STRUCT34).header) + 3))
100#define _OMC_LIT35_data"NFClassTree.ClassTree.instantiate got invalid class" "NFClassTree.ClassTree.instantiate got invalid class"
101static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT35,51,_OMC_LIT35_data)struct { mmc_uint_t header; const char data[(51)+1]; } _OMC_LIT_STRUCT35
= { ((((mmc_uint_t)51)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.instantiate got invalid class"
}
;
102#define _OMC_LIT35((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT35)((void*)((char*)(&(_OMC_LIT_STRUCT35).header) + 3))
103static const MMC_DEFREALLIT(_OMC_LIT_STRUCT36_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT36_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
104#define _OMC_LIT36_6((void*)((char*)(&(_OMC_LIT_STRUCT36_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT36_6)((void*)((char*)(&(_OMC_LIT_STRUCT36_6).header) + 3))
105static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT36,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT36
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(729))((void*)(((((mmc_uint_t) (729)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(13))((void*)(((((mmc_uint_t) (13)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(729))((void*)(((((mmc_uint_t) (729)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(91))((void*)(((((mmc_uint_t) (91)) << 1)+0))),_OMC_LIT36_6((void*)((char*)(&(_OMC_LIT_STRUCT36_6).header) + 3))}};
106#define _OMC_LIT36((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT36)((void*)((char*)(&(_OMC_LIT_STRUCT36).header) + 3))
107#define _OMC_LIT37_data"NFClassTree.ClassTree.expand got invalid component" "NFClassTree.ClassTree.expand got invalid component"
108static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT37,50,_OMC_LIT37_data)struct { mmc_uint_t header; const char data[(50)+1]; } _OMC_LIT_STRUCT37
= { ((((mmc_uint_t)50)<<(3))+((1<<(3+3))+5)), "NFClassTree.ClassTree.expand got invalid component"
}
;
109#define _OMC_LIT37((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT37)((void*)((char*)(&(_OMC_LIT_STRUCT37).header) + 3))
110static const MMC_DEFREALLIT(_OMC_LIT_STRUCT38_6,1588090879.0)struct mmc_real_lit _OMC_LIT_STRUCT38_6 = {0,(((8/8) <<
10) + 9),1588090879.0}
;
111#define _OMC_LIT38_6((void*)((char*)(&(_OMC_LIT_STRUCT38_6).header) + 3)) MMC_REFREALLIT(_OMC_LIT_STRUCT38_6)((void*)((char*)(&(_OMC_LIT_STRUCT38_6).header) + 3))
112static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT38,8,3)struct { mmc_uint_t header; const void *data[8]; } _OMC_LIT_STRUCT38
= { (((8) << 10) + (((3) & 255) << 2)),
{&SourceInfo_SOURCEINFO__desc,_OMC_LIT22((void*)((char*)(&(_OMC_LIT_STRUCT22).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(0))((void*)(((((mmc_uint_t) (0)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(496))((void*)(((((mmc_uint_t) (496)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(15))((void*)(((((mmc_uint_t) (15)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(496))((void*)(((((mmc_uint_t) (496)) << 1)+0))),MMC_IMMEDIATE(MMC_TAGFIXNUM(97))((void*)(((((mmc_uint_t) (97)) << 1)+0))),_OMC_LIT38_6((void*)((char*)(&(_OMC_LIT_STRUCT38_6).header) + 3))}};
113#define _OMC_LIT38((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT38)((void*)((char*)(&(_OMC_LIT_STRUCT38).header) + 3))
114#define _OMC_LIT39_data"min" "min"
115static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT39,3,_OMC_LIT39_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT39
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "min"
}
;
116#define _OMC_LIT39((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT39)((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3))
117static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT40,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT40
= { (((2) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Entry_COMPONENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(2))((void*)(((((mmc_uint_t) (2)) << 1)+0)))}};
118#define _OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT40)((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3))
119#define _OMC_LIT41_data"max" "max"
120static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT41,3,_OMC_LIT41_data)struct { mmc_uint_t header; const char data[(3)+1]; } _OMC_LIT_STRUCT41
= { ((((mmc_uint_t)3)<<(3))+((1<<(3+3))+5)), "max"
}
;
121#define _OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT41)((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3))
122static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT42,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT42
= { (((2) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Entry_COMPONENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(3))((void*)(((((mmc_uint_t) (3)) << 1)+0)))}};
123#define _OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT42)((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3))
124#define _OMC_LIT43_data"fixed" "fixed"
125static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT43,5,_OMC_LIT43_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT43
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "fixed"
}
;
126#define _OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT43)((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3))
127static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT44,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT44
= { (((2) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Entry_COMPONENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(5))((void*)(((((mmc_uint_t) (5)) << 1)+0)))}};
128#define _OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT44)((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3))
129static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT45,3,4)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT45
= { (((3) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_LEAF__desc,_OMC_LIT43((void*)((char*)(&(_OMC_LIT_STRUCT43).header) + 3)),_OMC_LIT44((void*)((char*)(&(_OMC_LIT_STRUCT44).header) + 3))}};
130#define _OMC_LIT45((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT45)((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3))
131static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT46,6,3)struct { mmc_uint_t header; const void *data[6]; } _OMC_LIT_STRUCT46
= { (((6) << 10) + (((3) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_NODE__desc,_OMC_LIT41((void*)((char*)(&(_OMC_LIT_STRUCT41).header) + 3)),_OMC_LIT42((void*)((char*)(&(_OMC_LIT_STRUCT42).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(2))((void*)(((((mmc_uint_t) (2)) << 1)+0))),_OMC_LIT45((void*)((char*)(&(_OMC_LIT_STRUCT45).header) + 3)),_OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3))}};
132#define _OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT46)((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3))
133#define _OMC_LIT47_data"quantity" "quantity"
134static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT47,8,_OMC_LIT47_data)struct { mmc_uint_t header; const char data[(8)+1]; } _OMC_LIT_STRUCT47
= { ((((mmc_uint_t)8)<<(3))+((1<<(3+3))+5)), "quantity"
}
;
135#define _OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT47)((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3))
136static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT48,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT48
= { (((2) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Entry_COMPONENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0)))}};
137#define _OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT48)((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3))
138#define _OMC_LIT49_data"start" "start"
139static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT49,5,_OMC_LIT49_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT49
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "start"
}
;
140#define _OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT49)((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3))
141static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT50,2,4)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT50
= { (((2) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Entry_COMPONENT__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(4))((void*)(((((mmc_uint_t) (4)) << 1)+0)))}};
142#define _OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT50)((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3))
143static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT51,3,4)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT51
= { (((3) << 10) + (((4) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_LEAF__desc,_OMC_LIT49((void*)((char*)(&(_OMC_LIT_STRUCT49).header) + 3)),_OMC_LIT50((void*)((char*)(&(_OMC_LIT_STRUCT50).header) + 3))}};
144#define _OMC_LIT51((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT51)((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3))
145static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT52,6,3)struct { mmc_uint_t header; const void *data[6]; } _OMC_LIT_STRUCT52
= { (((6) << 10) + (((3) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_NODE__desc,_OMC_LIT47((void*)((char*)(&(_OMC_LIT_STRUCT47).header) + 3)),_OMC_LIT48((void*)((char*)(&(_OMC_LIT_STRUCT48).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(2))((void*)(((((mmc_uint_t) (2)) << 1)+0))),_OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)),_OMC_LIT51((void*)((char*)(&(_OMC_LIT_STRUCT51).header) + 3))}};
146#define _OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT52)((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))
147static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT53,6,3)struct { mmc_uint_t header; const void *data[6]; } _OMC_LIT_STRUCT53
= { (((6) << 10) + (((3) & 255) << 2)),
{&NFClassTree_LookupTree_Tree_NODE__desc,_OMC_LIT39((void*)((char*)(&(_OMC_LIT_STRUCT39).header) + 3)),_OMC_LIT40((void*)((char*)(&(_OMC_LIT_STRUCT40).header) + 3)),MMC_IMMEDIATE(MMC_TAGFIXNUM(3))((void*)(((((mmc_uint_t) (3)) << 1)+0))),_OMC_LIT46((void*)((char*)(&(_OMC_LIT_STRUCT46).header) + 3)),_OMC_LIT52((void*)((char*)(&(_OMC_LIT_STRUCT52).header) + 3))}};
148#define _OMC_LIT53((void*)((char*)(&(_OMC_LIT_STRUCT53).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT53)((void*)((char*)(&(_OMC_LIT_STRUCT53).header) + 3))
149static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT54,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT54
= { (((1) << 10) + (((5) & 255) << 2)),
{&NFType_STRING__desc,}};
150#define _OMC_LIT54((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT54)((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3))
151static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT55,1,5)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT55
= { (((1) << 10) + (((5) & 255) << 2)),
{&NFModifier_Modifier_NOMOD__desc,}};
152#define _OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT55)((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))
153static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT56,3,8)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT56
= { (((3) << 10) + (((8) & 255) << 2)),
{&NFComponent_Component_TYPE__ATTRIBUTE__desc,_OMC_LIT54((void*)((char*)(&(_OMC_LIT_STRUCT54).header) + 3)),_OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))}};
154#define _OMC_LIT56((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT56)((void*)((char*)(&(_OMC_LIT_STRUCT56).header) + 3))
155static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT57,1,6)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT57
= { (((1) << 10) + (((6) & 255) << 2)),
{&NFType_BOOLEAN__desc,}};
156#define _OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT57)((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3))
157static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT58,3,8)struct { mmc_uint_t header; const void *data[3]; } _OMC_LIT_STRUCT58
= { (((3) << 10) + (((8) & 255) << 2)),
{&NFComponent_Component_TYPE__ATTRIBUTE__desc,_OMC_LIT57((void*)((char*)(&(_OMC_LIT_STRUCT57).header) + 3)),_OMC_LIT55((void*)((char*)(&(_OMC_LIT_STRUCT55).header) + 3))}};
158#define _OMC_LIT58((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT58)((void*)((char*)(&(_OMC_LIT_STRUCT58).header) + 3))
159static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT59,2,6)struct { mmc_uint_t header; const void *data[2]; } _OMC_LIT_STRUCT59
= { (((2) << 10) + (((6) & 255) << 2)),
{&NFInstNode_InstNode_REF__NODE__desc,MMC_IMMEDIATE(MMC_TAGFIXNUM(1))((void*)(((((mmc_uint_t) (1)) << 1)+0)))}};
160#define _OMC_LIT59((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT59)((void*)((char*)(&(_OMC_LIT_STRUCT59).header) + 3))
161static const MMC_DEFSTRUCTLIT(_OMC_LIT_STRUCT60,1,3)struct { mmc_uint_t header; const void *data[1]; } _OMC_LIT_STRUCT60
= { (((1) << 10) + (((3) & 255) << 2)),
{&NFInstNode_InstNodeType_NORMAL__CLASS__desc,}};
162#define _OMC_LIT60((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3)) MMC_REFSTRUCTLIT(_OMC_LIT_STRUCT60)((void*)((char*)(&(_OMC_LIT_STRUCT60).header) + 3))
163#define _OMC_LIT61_data"(" "("
164static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT61,1,_OMC_LIT61_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT61
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "("
}
;
165#define _OMC_LIT61((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT61)((void*)((char*)(&(_OMC_LIT_STRUCT61).header) + 3))
166#define _OMC_LIT62_data", " ", "
167static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT62,2,_OMC_LIT62_data)struct { mmc_uint_t header; const char data[(2)+1]; } _OMC_LIT_STRUCT62
= { ((((mmc_uint_t)2)<<(3))+((1<<(3+3))+5)), ", "
}
;
168#define _OMC_LIT62((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT62)((void*)((char*)(&(_OMC_LIT_STRUCT62).header) + 3))
169#define _OMC_LIT63_data")" ")"
170static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT63,1,_OMC_LIT63_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT63
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), ")"
}
;
171#define _OMC_LIT63((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT63)((void*)((char*)(&(_OMC_LIT_STRUCT63).header) + 3))
172#define _OMC_LIT64_data"EMPTY()" "EMPTY()"
173static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT64,7,_OMC_LIT64_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT64
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), "EMPTY()"
}
;
174#define _OMC_LIT64((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT64)((void*)((char*)(&(_OMC_LIT_STRUCT64).header) + 3))
175#define _OMC_LIT65_data"" ""
176static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT65,0,_OMC_LIT65_data)struct { mmc_uint_t header; const char data[(0)+1]; } _OMC_LIT_STRUCT65
= { ((((mmc_uint_t)0)<<(3))+((1<<(3+3))+5)), "" }
;
177#define _OMC_LIT65((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT65)((void*)((char*)(&(_OMC_LIT_STRUCT65).header) + 3))
178#define _OMC_LIT66_data"\n" "\n"
179static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT66,1,_OMC_LIT66_data)struct { mmc_uint_t header; const char data[(1)+1]; } _OMC_LIT_STRUCT66
= { ((((mmc_uint_t)1)<<(3))+((1<<(3+3))+5)), "\n"
}
;
180#define _OMC_LIT66((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT66)((void*)((char*)(&(_OMC_LIT_STRUCT66).header) + 3))
181#define _OMC_LIT67_data" " " "
182static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT67,5,_OMC_LIT67_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT67
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), " "
}
;
183#define _OMC_LIT67((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT67)((void*)((char*)(&(_OMC_LIT_STRUCT67).header) + 3))
184#define _OMC_LIT68_data" │ " " │ "
185static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT68,7,_OMC_LIT68_data)struct { mmc_uint_t header; const char data[(7)+1]; } _OMC_LIT_STRUCT68
= { ((((mmc_uint_t)7)<<(3))+((1<<(3+3))+5)), " │ "
}
;
186#define _OMC_LIT68((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT68)((void*)((char*)(&(_OMC_LIT_STRUCT68).header) + 3))
187#define _OMC_LIT69_data" ┌" " ┌"
188static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT69,4,_OMC_LIT69_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT69
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), " ┌"
}
;
189#define _OMC_LIT69((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT69)((void*)((char*)(&(_OMC_LIT_STRUCT69).header) + 3))
190#define _OMC_LIT70_data" └" " └"
191static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT70,4,_OMC_LIT70_data)struct { mmc_uint_t header; const char data[(4)+1]; } _OMC_LIT_STRUCT70
= { ((((mmc_uint_t)4)<<(3))+((1<<(3+3))+5)), " └"
}
;
192#define _OMC_LIT70((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT70)((void*)((char*)(&(_OMC_LIT_STRUCT70).header) + 3))
193#define _OMC_LIT71_data"────" "────"
194static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT71,12,_OMC_LIT71_data)struct { mmc_uint_t header; const char data[(12)+1]; } _OMC_LIT_STRUCT71
= { ((((mmc_uint_t)12)<<(3))+((1<<(3+3))+5)), "────"
}
;
195#define _OMC_LIT71((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT71)((void*)((char*)(&(_OMC_LIT_STRUCT71).header) + 3))
196#define _OMC_LIT72_data"class " "class "
197static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT72,6,_OMC_LIT72_data)struct { mmc_uint_t header; const char data[(6)+1]; } _OMC_LIT_STRUCT72
= { ((((mmc_uint_t)6)<<(3))+((1<<(3+3))+5)), "class "
}
;
198#define _OMC_LIT72((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT72)((void*)((char*)(&(_OMC_LIT_STRUCT72).header) + 3))
199#define _OMC_LIT73_data"comp " "comp "
200static const MMC_DEFSTRINGLIT(_OMC_LIT_STRUCT73,5,_OMC_LIT73_data)struct { mmc_uint_t header; const char data[(5)+1]; } _OMC_LIT_STRUCT73
= { ((((mmc_uint_t)5)<<(3))+((1<<(3+3))+5)), "comp "
}
;
201#define _OMC_LIT73((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3)) MMC_REFSTRINGLIT(_OMC_LIT_STRUCT73)((void*)((char*)(&(_OMC_LIT_STRUCT73).header) + 3))
202#include "util/modelica.h"
203
204#include "NFClassTree_includes.h"
205
206
207/* default, do not make protected functions static */
208#if !defined(PROTECTED_FUNCTION_STATIC)
209#define PROTECTED_FUNCTION_STATIC
210#endif
211PROTECTED_FUNCTION_STATIC void omc_NFClassTree_ClassTree_checkOuterClass(threadData_t *threadData, modelica_metatype _outerCls);
212static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_checkOuterClass,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_checkOuterClass
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_checkOuterClassomc_NFClassTree_ClassTree_checkOuterClass,0}};
213#define boxvar_NFClassTree_ClassTree_checkOuterClass((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_checkOuterClass
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_checkOuterClass)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_checkOuterClass
).header) + 3))
214PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_linkInnerOuter(threadData_t *threadData, modelica_metatype _outerNode, modelica_metatype _scope);
215static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_linkInnerOuter,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_linkInnerOuter
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_linkInnerOuteromc_NFClassTree_ClassTree_linkInnerOuter,0}};
216#define boxvar_NFClassTree_ClassTree_linkInnerOuter((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_linkInnerOuter
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_linkInnerOuter)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_linkInnerOuter
).header) + 3))
217PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates4(threadData_t *threadData, modelica_metatype _D_24in_entry, modelica_metatype _node);
218static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates4,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_replaceDuplicates4
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_replaceDuplicates4omc_NFClassTree_ClassTree_replaceDuplicates4,0}};
219#define boxvar_NFClassTree_ClassTree_replaceDuplicates4((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates4
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates4)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates4
).header) + 3))
220PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates3(threadData_t *threadData, modelica_metatype _D_24in_entry, modelica_metatype _kept, modelica_metatype _tree);
221static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates3,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_replaceDuplicates3
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_replaceDuplicates3omc_NFClassTree_ClassTree_replaceDuplicates3,0}};
222#define boxvar_NFClassTree_ClassTree_replaceDuplicates3((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates3
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates3)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates3
).header) + 3))
223PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates2(threadData_t *threadData, modelica_string _name, modelica_metatype _D_24in_entry, modelica_metatype _tree);
224static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_replaceDuplicates2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_replaceDuplicates2omc_NFClassTree_ClassTree_replaceDuplicates2,0}};
225#define boxvar_NFClassTree_ClassTree_replaceDuplicates2((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates2)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_replaceDuplicates2
).header) + 3))
226PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_getRedeclareChain(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype _D_24in_chain);
227static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_getRedeclareChain,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_getRedeclareChain
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_getRedeclareChainomc_NFClassTree_ClassTree_getRedeclareChain,0}};
228#define boxvar_NFClassTree_ClassTree_getRedeclareChain((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_getRedeclareChain
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_getRedeclareChain)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_getRedeclareChain
).header) + 3))
229PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_mapRedeclareChain(threadData_t *threadData, modelica_string _name, modelica_metatype _D_24in_entry, modelica_fnptr _func, modelica_metatype _tree);
230static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_mapRedeclareChain,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_mapRedeclareChain
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_mapRedeclareChainomc_NFClassTree_ClassTree_mapRedeclareChain,0}};
231#define boxvar_NFClassTree_ClassTree_mapRedeclareChain((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_mapRedeclareChain
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_mapRedeclareChain)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_mapRedeclareChain
).header) + 3))
232PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates4(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components);
233static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates4,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates4
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_enumerateDuplicates4omc_NFClassTree_ClassTree_enumerateDuplicates4,0}};
234#define boxvar_NFClassTree_ClassTree_enumerateDuplicates4((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates4
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates4)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates4
).header) + 3))
235PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates3(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components);
236static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates3,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates3
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_enumerateDuplicates3omc_NFClassTree_ClassTree_enumerateDuplicates3,0}};
237#define boxvar_NFClassTree_ClassTree_enumerateDuplicates3((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates3
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates3)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates3
).header) + 3))
238PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates2(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components);
239static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_enumerateDuplicates2omc_NFClassTree_ClassTree_enumerateDuplicates2,0}};
240#define boxvar_NFClassTree_ClassTree_enumerateDuplicates2((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2
).header) + 3))
241PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates(threadData_t *threadData, modelica_metatype _duplicates, modelica_metatype *out_components);
242static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_enumerateDuplicatesomc_NFClassTree_ClassTree_enumerateDuplicates,0}};
243#define boxvar_NFClassTree_ClassTree_enumerateDuplicates((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates
).header) + 3))
244PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_joinDuplicates(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name);
245static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_joinDuplicates,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_joinDuplicates
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_joinDuplicatesomc_NFClassTree_ClassTree_joinDuplicates,0}};
246#define boxvar_NFClassTree_ClassTree_joinDuplicates((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_joinDuplicates
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_joinDuplicates)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_joinDuplicates
).header) + 3))
247PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_offsetDuplicate(threadData_t *threadData, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset);
248PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_offsetDuplicate(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset);
249static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_offsetDuplicate,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_offsetDuplicate
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_offsetDuplicate,0}};
250#define boxvar_NFClassTree_ClassTree_offsetDuplicate((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_offsetDuplicate
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_offsetDuplicate)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_offsetDuplicate
).header) + 3))
251PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_offsetDuplicates(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset);
252PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_offsetDuplicates(threadData_t *threadData, modelica_metatype _name, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset);
253static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_offsetDuplicates,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_offsetDuplicates
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_offsetDuplicates,0}};
254#define boxvar_NFClassTree_ClassTree_offsetDuplicates((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_offsetDuplicates
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_offsetDuplicates)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_offsetDuplicates
).header) + 3))
255PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addInheritedElementConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _duplicates, modelica_metatype _extDuplicates);
256static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addInheritedElementConflict,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addInheritedElementConflict
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addInheritedElementConflictomc_NFClassTree_ClassTree_addInheritedElementConflict,0}};
257#define boxvar_NFClassTree_ClassTree_addInheritedElementConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addInheritedElementConflict
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addInheritedElementConflict)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addInheritedElementConflict
).header) + 3))
258PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addInheritedElement(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset, modelica_fnptr _conflictFunc, modelica_metatype _D_24in_tree);
259PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_addInheritedElement(threadData_t *threadData, modelica_metatype _name, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset, modelica_fnptr _conflictFunc, modelica_metatype _D_24in_tree);
260static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addInheritedElement,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addInheritedElement
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addInheritedElement,0}};
261#define boxvar_NFClassTree_ClassTree_addInheritedElement((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addInheritedElement
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addInheritedElement)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addInheritedElement
).header) + 3))
262PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_expandExtends(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_tree, modelica_integer _classOffset, modelica_integer _componentOffset, modelica_metatype _duplicates);
263PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_expandExtends(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_tree, modelica_metatype _classOffset, modelica_metatype _componentOffset, modelica_metatype _duplicates);
264static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_expandExtends,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_expandExtends
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_expandExtends,0}};
265#define boxvar_NFClassTree_ClassTree_expandExtends((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_expandExtends
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_expandExtends)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_expandExtends
).header) + 3))
266PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_countInheritedElements(threadData_t *threadData, modelica_metatype _extendsNode, modelica_integer _D_24in_classCount, modelica_integer _D_24in_componentCount, modelica_integer *out_componentCount);
267PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_countInheritedElements(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_classCount, modelica_metatype _D_24in_componentCount, modelica_metatype *out_componentCount);
268static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_countInheritedElements,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_countInheritedElements
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_countInheritedElements,0}};
269#define boxvar_NFClassTree_ClassTree_countInheritedElements((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_countInheritedElements
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_countInheritedElements)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_countInheritedElements
).header) + 3))
270PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_countElements(threadData_t *threadData, modelica_metatype _elements, modelica_integer *out_compCount, modelica_integer *out_extCount);
271PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_countElements(threadData_t *threadData, modelica_metatype _elements, modelica_metatype *out_compCount, modelica_metatype *out_extCount);
272static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_countElements,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_countElements
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_countElements,0}};
273#define boxvar_NFClassTree_ClassTree_countElements((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_countElements
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_countElements)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_countElements
).header) + 3))
274PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveImport(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree);
275PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveImport(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree);
276static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveImport,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveImport
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveImport,0}};
277#define boxvar_NFClassTree_ClassTree_resolveImport((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveImport
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveImport)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveImport
).header) + 3))
278PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveComponent(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree);
279PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveComponent(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree);
280static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveComponent,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveComponent
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveComponent,0}};
281#define boxvar_NFClassTree_ClassTree_resolveComponent((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveComponent
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveComponent)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveComponent
).header) + 3))
282PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveClass(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree);
283PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveClass(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree);
284static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveClass,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveClass
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveClass,0}};
285#define boxvar_NFClassTree_ClassTree_resolveClass((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveClass
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveClass)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveClass
).header) + 3))
286PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveDuplicateEntriesPtr(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype _D_24in_elements);
287static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveDuplicateEntriesPtr,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveDuplicateEntriesPtr
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveDuplicateEntriesPtromc_NFClassTree_ClassTree_resolveDuplicateEntriesPtr,0}};
288#define boxvar_NFClassTree_ClassTree_resolveDuplicateEntriesPtr((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveDuplicateEntriesPtr
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveDuplicateEntriesPtr)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveDuplicateEntriesPtr
).header) + 3))
289PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveEntryPtr(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree);
290static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveEntryPtr,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveEntryPtr
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveEntryPtromc_NFClassTree_ClassTree_resolveEntryPtr,0}};
291#define boxvar_NFClassTree_ClassTree_resolveEntryPtr((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveEntryPtr
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveEntryPtr)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveEntryPtr
).header) + 3))
292PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveEntry(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_boolean *out_isImport);
293PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveEntry(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype *out_isImport);
294static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveEntry,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_resolveEntry
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_resolveEntry,0}};
295#define boxvar_NFClassTree_ClassTree_resolveEntry((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveEntry
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_resolveEntry)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_resolveEntry
).header) + 3))
296PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addDuplicateConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name);
297static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addDuplicateConflictomc_NFClassTree_ClassTree_addDuplicateConflict,0}};
298#define boxvar_NFClassTree_ClassTree_addDuplicateConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict
).header) + 3))
299PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addDuplicate(threadData_t *threadData, modelica_string _name, modelica_metatype _duplicateEntry, modelica_metatype _keptEntry, modelica_metatype _D_24in_duplicates);
300static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addDuplicate,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addDuplicate
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addDuplicateomc_NFClassTree_ClassTree_addDuplicate,0}};
301#define boxvar_NFClassTree_ClassTree_addDuplicate((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addDuplicate
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addDuplicate)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addDuplicate
).header) + 3))
302PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addImportConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _imports);
303static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addImportConflict,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addImportConflict
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addImportConflictomc_NFClassTree_ClassTree_addImportConflict,0}};
304#define boxvar_NFClassTree_ClassTree_addImportConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addImportConflict
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addImportConflict)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addImportConflict
).header) + 3))
305PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addImport(threadData_t *threadData, modelica_metatype _imp, modelica_integer _index, modelica_metatype _D_24in_tree, modelica_metatype _imports);
306PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_addImport(threadData_t *threadData, modelica_metatype _imp, modelica_metatype _index, modelica_metatype _D_24in_tree, modelica_metatype _imports);
307static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addImport,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addImport
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addImport,0}};
308#define boxvar_NFClassTree_ClassTree_addImport((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addImport
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addImport)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addImport
).header) + 3))
309PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addEnumConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _literal);
310static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addEnumConflict,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addEnumConflict
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addEnumConflictomc_NFClassTree_ClassTree_addEnumConflict,0}};
311#define boxvar_NFClassTree_ClassTree_addEnumConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addEnumConflict
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addEnumConflict)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addEnumConflict
).header) + 3))
312PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_findLocalConflictElement(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _classTree);
313static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_findLocalConflictElement,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_findLocalConflictElement
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_findLocalConflictElementomc_NFClassTree_ClassTree_findLocalConflictElement,0}};
314#define boxvar_NFClassTree_ClassTree_findLocalConflictElement((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_findLocalConflictElement
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_findLocalConflictElement)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_findLocalConflictElement
).header) + 3))
315PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addLocalElementConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _classTree);
316static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addLocalElementConflict,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addLocalElementConflict
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addLocalElementConflictomc_NFClassTree_ClassTree_addLocalElementConflict,0}};
317#define boxvar_NFClassTree_ClassTree_addLocalElementConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addLocalElementConflict
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addLocalElementConflict)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addLocalElementConflict
).header) + 3))
318PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addLocalElement(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _classTree, modelica_metatype _D_24in_tree);
319static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addLocalElement,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_addLocalElement
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_addLocalElementomc_NFClassTree_ClassTree_addLocalElement,0}};
320#define boxvar_NFClassTree_ClassTree_addLocalElement((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addLocalElement
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_addLocalElement)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addLocalElement
).header) + 3))
321PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_lookupTree(threadData_t *threadData, modelica_metatype _ctree);
322static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_lookupTree,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_lookupTree
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_lookupTreeomc_NFClassTree_ClassTree_lookupTree,0}};
323#define boxvar_NFClassTree_ClassTree_lookupTree((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_lookupTree
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_lookupTree)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_lookupTree
).header) + 3))
324PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_getDuplicates(threadData_t *threadData, modelica_metatype _tree);
325static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_getDuplicates,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_getDuplicates
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_getDuplicatesomc_NFClassTree_ClassTree_getDuplicates,0}};
326#define boxvar_NFClassTree_ClassTree_getDuplicates((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_getDuplicates
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_getDuplicates)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_getDuplicates
).header) + 3))
327PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_instExtendsComps(threadData_t *threadData, modelica_metatype _extNode, modelica_metatype _comps, modelica_integer _D_24in_index);
328PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_instExtendsComps(threadData_t *threadData, modelica_metatype _extNode, modelica_metatype _comps, modelica_metatype _D_24in_index);
329static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_instExtendsComps,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_ClassTree_instExtendsComps
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_ClassTree_instExtendsComps,0}};
330#define boxvar_NFClassTree_ClassTree_instExtendsComps((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_instExtendsComps
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_ClassTree_instExtendsComps)((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_instExtendsComps
).header) + 3))
331PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_DuplicateTree_balance(threadData_t *threadData, modelica_metatype _inTree);
332static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_balance,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_balance
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_balanceomc_NFClassTree_DuplicateTree_balance,0}};
333#define boxvar_NFClassTree_DuplicateTree_balance((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_balance
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_balance)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_balance
).header) + 3))
334PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_DuplicateTree_calculateBalance(threadData_t *threadData, modelica_metatype _inNode);
335PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_DuplicateTree_calculateBalance(threadData_t *threadData, modelica_metatype _inNode);
336static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_calculateBalance,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_calculateBalance
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_calculateBalance,0}};
337#define boxvar_NFClassTree_DuplicateTree_calculateBalance((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_calculateBalance
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_calculateBalance)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_calculateBalance
).header) + 3))
338PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_DuplicateTree_height(threadData_t *threadData, modelica_metatype _inNode);
339PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_DuplicateTree_height(threadData_t *threadData, modelica_metatype _inNode);
340static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_height,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_height
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_height,0}};
341#define boxvar_NFClassTree_DuplicateTree_height((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_height
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_height)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_height
).header) + 3))
342PROTECTED_FUNCTION_STATIC modelica_string omc_NFClassTree_DuplicateTree_printTreeStr2(threadData_t *threadData, modelica_metatype _inTree, modelica_boolean _isLeft, modelica_string _inIndent);
343PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_DuplicateTree_printTreeStr2(threadData_t *threadData, modelica_metatype _inTree, modelica_metatype _isLeft, modelica_metatype _inIndent);
344static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_printTreeStr2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_printTreeStr2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_printTreeStr2,0}};
345#define boxvar_NFClassTree_DuplicateTree_printTreeStr2((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_printTreeStr2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_printTreeStr2)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_printTreeStr2
).header) + 3))
346PROTECTED_FUNCTION_STATIC modelica_boolean omc_NFClassTree_DuplicateTree_referenceEqOrEmpty(threadData_t *threadData, modelica_metatype _t1, modelica_metatype _t2);
347PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_DuplicateTree_referenceEqOrEmpty(threadData_t *threadData, modelica_metatype _t1, modelica_metatype _t2);
348static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_referenceEqOrEmpty,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_referenceEqOrEmpty
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_referenceEqOrEmpty,0}};
349#define boxvar_NFClassTree_DuplicateTree_referenceEqOrEmpty((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_referenceEqOrEmpty
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_referenceEqOrEmpty)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_referenceEqOrEmpty
).header) + 3))
350PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_DuplicateTree_rotateLeft(threadData_t *threadData, modelica_metatype _inNode);
351static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_rotateLeft,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_rotateLeft
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_rotateLeftomc_NFClassTree_DuplicateTree_rotateLeft,0}};
352#define boxvar_NFClassTree_DuplicateTree_rotateLeft((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_rotateLeft
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_rotateLeft)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_rotateLeft
).header) + 3))
353PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_DuplicateTree_rotateRight(threadData_t *threadData, modelica_metatype _inNode);
354static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_rotateRight,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_DuplicateTree_rotateRight
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_DuplicateTree_rotateRightomc_NFClassTree_DuplicateTree_rotateRight,0}};
355#define boxvar_NFClassTree_DuplicateTree_rotateRight((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_rotateRight
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_DuplicateTree_rotateRight)((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_rotateRight
).header) + 3))
356PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_LookupTree_balance(threadData_t *threadData, modelica_metatype _inTree);
357static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_balance,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_balance
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_balanceomc_NFClassTree_LookupTree_balance,0}};
358#define boxvar_NFClassTree_LookupTree_balance((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_balance
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_balance)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_balance
).header) + 3))
359PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_LookupTree_calculateBalance(threadData_t *threadData, modelica_metatype _inNode);
360PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_LookupTree_calculateBalance(threadData_t *threadData, modelica_metatype _inNode);
361static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_calculateBalance,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_calculateBalance
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_calculateBalance,0}};
362#define boxvar_NFClassTree_LookupTree_calculateBalance((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_calculateBalance
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_calculateBalance)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_calculateBalance
).header) + 3))
363PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_LookupTree_height(threadData_t *threadData, modelica_metatype _inNode);
364PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_LookupTree_height(threadData_t *threadData, modelica_metatype _inNode);
365static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_height,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_height
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_height,0}};
366#define boxvar_NFClassTree_LookupTree_height((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_height
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_height)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_height
).header) + 3))
367PROTECTED_FUNCTION_STATIC modelica_string omc_NFClassTree_LookupTree_printTreeStr2(threadData_t *threadData, modelica_metatype _inTree, modelica_boolean _isLeft, modelica_string _inIndent);
368PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_LookupTree_printTreeStr2(threadData_t *threadData, modelica_metatype _inTree, modelica_metatype _isLeft, modelica_metatype _inIndent);
369static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_printTreeStr2,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_printTreeStr2
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_printTreeStr2,0}};
370#define boxvar_NFClassTree_LookupTree_printTreeStr2((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_printTreeStr2
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_printTreeStr2)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_printTreeStr2
).header) + 3))
371PROTECTED_FUNCTION_STATIC modelica_boolean omc_NFClassTree_LookupTree_referenceEqOrEmpty(threadData_t *threadData, modelica_metatype _t1, modelica_metatype _t2);
372PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_LookupTree_referenceEqOrEmpty(threadData_t *threadData, modelica_metatype _t1, modelica_metatype _t2);
373static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_referenceEqOrEmpty,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_referenceEqOrEmpty
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_referenceEqOrEmpty,0}};
374#define boxvar_NFClassTree_LookupTree_referenceEqOrEmpty((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_referenceEqOrEmpty
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_referenceEqOrEmpty)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_referenceEqOrEmpty
).header) + 3))
375PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_LookupTree_rotateLeft(threadData_t *threadData, modelica_metatype _inNode);
376static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_rotateLeft,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_rotateLeft
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_rotateLeftomc_NFClassTree_LookupTree_rotateLeft,0}};
377#define boxvar_NFClassTree_LookupTree_rotateLeft((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_rotateLeft
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_rotateLeft)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_rotateLeft
).header) + 3))
378PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_LookupTree_rotateRight(threadData_t *threadData, modelica_metatype _inNode);
379static const MMC_DEFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_rotateRight,2,0)struct { mmc_uint_t header; const void *data[2]; } boxvar_lit_NFClassTree_LookupTree_rotateRight
= { (((2) << 10) + (((0) & 255) << 2)),
{(void*) boxptr_NFClassTree_LookupTree_rotateRightomc_NFClassTree_LookupTree_rotateRight,0}};
380#define boxvar_NFClassTree_LookupTree_rotateRight((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_rotateRight
).header) + 3))
MMC_REFSTRUCTLIT(boxvar_lit_NFClassTree_LookupTree_rotateRight)((void*)((char*)(&(boxvar_lit_NFClassTree_LookupTree_rotateRight
).header) + 3))
381
382PROTECTED_FUNCTION_STATIC void omc_NFClassTree_ClassTree_checkOuterClass(threadData_t *threadData, modelica_metatype _outerCls)
383{
384 modelica_metatype _def = NULL((void*)0);
385 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
386 MMC_SO()mmc_check_stackoverflow(threadData);
387 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
388 // _def has no default value.
389#line 2280 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
390 if(omc_NFInstNode_InstNode_isOnlyOuter(threadData, _outerCls))
391#line 2280 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
392 {
393#line 2281 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
394 _def = omc_SCodeUtil_getClassDef(threadData, omc_NFInstNode_InstNode_definition(threadData, _outerCls));
395#line 395 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
396
397#line 397 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
398 { /* match expression */
399 modelica_metatype tmp3_1;
400 tmp3_1 = _def;
401 {
402 volatile mmc_switch_type tmp3;
403 int tmp4;
404 tmp3 = 0;
405 for (; tmp3 < 3; tmp3++) {
406 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
407 case 0: {
408 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
409 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
410 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],2,0)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((0 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
411
412 /* Pattern matching succeeded */
413#line 413 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
414 goto tmp2_done;
415 }
416 case 1: {
417 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,3)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((3 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
418
419 /* Pattern matching succeeded */
420#line 2290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
421 tmpMeta[0] = mmc_mk_cons(omc_SCodeDump_printModStr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_def), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_def) - 3))) + (
3)))))
), _OMC_LIT5((void*)((char*)(&(_OMC_LIT_STRUCT5).header) + 3))), mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _outerCls), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
422#line 2290 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
423 omc_Error_addSourceMessage(threadData, _OMC_LIT4((void*)((char*)(&(_OMC_LIT_STRUCT4).header) + 3)), tmpMeta[0], omc_NFInstNode_InstNode_info(threadData, _outerCls));
424#line 424 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
425#line 2293 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
426 goto goto_1;
427#line 427 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
428 goto tmp2_done;
429 }
430 case 2: {
431
432 /* Pattern matching succeeded */
433#line 2299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
434 tmpMeta[0] = mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _outerCls), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
435#line 2299 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
436 omc_Error_addSourceMessage(threadData, _OMC_LIT8((void*)((char*)(&(_OMC_LIT_STRUCT8).header) + 3)), tmpMeta[0], omc_NFInstNode_InstNode_info(threadData, _outerCls));
437#line 437 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
438#line 2301 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
439 goto goto_1;
440#line 440 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
441 goto tmp2_done;
442 }
443 }
444 goto tmp2_end;
445 tmp2_end: ;
446 }
447 goto goto_1;
448 goto_1:;
449 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
450 goto tmp2_done;
451 tmp2_done:;
452 }
453 }
454 ;
455 }
456 _return: OMC_LABEL_UNUSED__attribute__((unused))
457 return;
458}
459
460PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_linkInnerOuter(threadData_t *threadData, modelica_metatype _outerNode, modelica_metatype _scope)
461{
462 modelica_metatype _innerOuterNode = NULL((void*)0);
463 modelica_metatype _inner_node = NULL((void*)0);
464 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
465 MMC_SO()mmc_check_stackoverflow(threadData);
466 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
467 // _innerOuterNode has no default value.
468 // _inner_node has no default value.
469#line 2260 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
470 _inner_node = omc_NFLookup_lookupInner(threadData, _outerNode, _scope);
471#line 471 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
472
473#line 2263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
474 if((valueConstructor(_outerNode)((((*(mmc_uint_t*)((void*)((char*)(_outerNode) - 3)))) >>
2) & 255)
!= valueConstructor(_inner_node)((((*(mmc_uint_t*)((void*)((char*)(_inner_node) - 3)))) >>
2) & 255)
))
475#line 2263 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
476 {
477#line 2264 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
478 tmpMeta[0] = mmc_mk_cons(omc_NFInstNode_InstNode_typeName(threadData, _inner_node), mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _outerNode), mmc_mk_cons(omc_NFInstNode_InstNode_typeName(threadData, _outerNode), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)))));
479#line 2264 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
480 tmpMeta[1] = mmc_mk_cons(omc_NFInstNode_InstNode_info(threadData, _outerNode), mmc_mk_cons(omc_NFInstNode_InstNode_info(threadData, _inner_node), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
481#line 2264 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
482 omc_Error_addMultiSourceMessage(threadData, _OMC_LIT11((void*)((char*)(&(_OMC_LIT_STRUCT11).header) + 3)), tmpMeta[0], tmpMeta[1]);
483#line 483 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
484
485#line 2267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
486 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
487#line 487 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
488 }
489
490#line 2270 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
491 tmpMeta[0] = mmc_mk_box3(5, &NFInstNode_InstNode_INNER__OUTER__NODE__desc, _inner_node, _outerNode);
492#line 2270 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
493 _innerOuterNode = tmpMeta[0];
494#line 494 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
495 _return: OMC_LABEL_UNUSED__attribute__((unused))
496 return _innerOuterNode;
497}
498
499PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates4(threadData_t *threadData, modelica_metatype _D_24in_entry, modelica_metatype _node)
500{
501 modelica_metatype _entry = NULL((void*)0);
502 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
503 MMC_SO()mmc_check_stackoverflow(threadData);
504 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
505 _entry = _D_24in_entry;
506#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
507 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
508#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
509 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
510#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
511 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[3] = mmc_mk_some(_node);
512#line 2247 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
513 _entry = tmpMeta[0];
514#line 514 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
515
516#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
517 {
518#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
519 modelica_metatype _D_24tmpVar1;
520#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
521 modelica_metatype* tmp1;
522#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
523 modelica_metatype _D_24tmpVar0;
524#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
525 int tmp2;
526#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
527 modelica_metatype _c_loopVar = 0;
528#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
529 modelica_metatype _c;
530#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
531 _c_loopVar = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
);
532#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
533 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
534#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
535 _D_24tmpVar1 = tmpMeta[2]; /* defaultValue */
536#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
537 tmp1 = &_D_24tmpVar1;
538#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
539 while(1) {
540#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
541 tmp2 = 1;
542#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
543 if (!listEmpty(_c_loopVar)((*(mmc_uint_t*)((void*)((char*)(_c_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
544#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
545 _c = MMC_CAR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (1)))))
;
546#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
547 _c_loopVar = MMC_CDR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (2)))))
;
548#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
549 tmp2--;
550#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
551 }
552#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
553 if (tmp2 == 0) {
554#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
555 _D_24tmpVar0 = omc_NFClassTree_ClassTree_replaceDuplicates4(threadData, _c, _node);
556#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
557 *tmp1 = mmc_mk_cons(_D_24tmpVar0,0);
558#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
559 tmp1 = &MMC_CDR(*tmp1)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp1) - 3))) +
(2)))))
;
560#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
561 } else if (tmp2 == 1) {
562#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
563 break;
564#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
565 } else {
566#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
567 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
568#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
569 }
570#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
571 }
572#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
573 *tmp1 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
574#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
575 tmpMeta[1] = _D_24tmpVar1;
576#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
577 }
578#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
579 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
580#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
581 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
582#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
583 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
584#line 2248 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
585 _entry = tmpMeta[0];
586#line 586 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
587 _return: OMC_LABEL_UNUSED__attribute__((unused))
588 return _entry;
589}
590
591PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates3(threadData_t *threadData, modelica_metatype _D_24in_entry, modelica_metatype _kept, modelica_metatype _tree)
592{
593 modelica_metatype _entry = NULL((void*)0);
594 modelica_metatype _node_ptr = NULL((void*)0);
595 modelica_metatype _node = NULL((void*)0);
596 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
597 MMC_SO()mmc_check_stackoverflow(threadData);
598 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
599 _entry = _D_24in_entry;
600 // _node_ptr has no default value.
601 // _node has no default value.
602#line 2236 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
603 _node_ptr = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree);
604#line 604 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
605
606#line 2237 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
607 _node = omc_Mutable_access(threadData, _node_ptr);
608#line 608 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
609
610#line 2238 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
611 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
612#line 2238 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
613 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
614#line 2238 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
615 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[3] = mmc_mk_some(_node);
616#line 2238 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
617 _entry = tmpMeta[0];
618#line 618 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
619
620#line 2239 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
621 omc_Mutable_update(threadData, _node_ptr, _kept);
622#line 622 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
623
624#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
625 {
626#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
627 modelica_metatype _D_24tmpVar3;
628#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
629 modelica_metatype* tmp1;
630#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
631 modelica_metatype _D_24tmpVar2;
632#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
633 int tmp2;
634#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
635 modelica_metatype _c_loopVar = 0;
636#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
637 modelica_metatype _c;
638#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
639 _c_loopVar = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
);
640#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
641 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
642#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
643 _D_24tmpVar3 = tmpMeta[2]; /* defaultValue */
644#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
645 tmp1 = &_D_24tmpVar3;
646#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
647 while(1) {
648#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
649 tmp2 = 1;
650#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
651 if (!listEmpty(_c_loopVar)((*(mmc_uint_t*)((void*)((char*)(_c_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
652#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
653 _c = MMC_CAR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (1)))))
;
654#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
655 _c_loopVar = MMC_CDR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (2)))))
;
656#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
657 tmp2--;
658#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
659 }
660#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
661 if (tmp2 == 0) {
662#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
663 _D_24tmpVar2 = omc_NFClassTree_ClassTree_replaceDuplicates3(threadData, _c, _kept, _tree);
664#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
665 *tmp1 = mmc_mk_cons(_D_24tmpVar2,0);
666#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
667 tmp1 = &MMC_CDR(*tmp1)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp1) - 3))) +
(2)))))
;
668#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
669 } else if (tmp2 == 1) {
670#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
671 break;
672#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
673 } else {
674#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
675 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
676#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
677 }
678#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
679 }
680#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
681 *tmp1 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
682#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
683 tmpMeta[1] = _D_24tmpVar3;
684#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
685 }
686#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
687 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
688#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
689 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
690#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
691 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
692#line 2240 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
693 _entry = tmpMeta[0];
694#line 694 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
695 _return: OMC_LABEL_UNUSED__attribute__((unused))
696 return _entry;
697}
698
699PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates2(threadData_t *threadData, modelica_string _name, modelica_metatype _D_24in_entry, modelica_metatype _tree)
700{
701 modelica_metatype _entry = NULL((void*)0);
702 modelica_metatype _kept = NULL((void*)0);
703 modelica_metatype _node_ptr = NULL((void*)0);
704 modelica_metatype _children = NULL((void*)0);
705 modelica_metatype _kept_entry = NULL((void*)0);
706 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
707 MMC_SO()mmc_check_stackoverflow(threadData);
708 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
709 _entry = _D_24in_entry;
710 // _kept has no default value.
711 // _node_ptr has no default value.
712 // _children has no default value.
713 // _kept_entry has no default value.
714#line 2206 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
715 _node_ptr = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree);
716#line 716 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
717
718#line 718 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
719 { /* match expression */
720 modelica_metatype tmp3_1;
721 tmp3_1 = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(5)))))
);
722 {
723 volatile mmc_switch_type tmp3;
724 int tmp4;
725 tmp3 = 0;
726 for (; tmp3 < 3; tmp3++) {
727 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
728 case 0: {
729 modelica_integer tmp5;
730 tmp5 = mmc_unbox_integer(tmp3_1)(((mmc_sint_t) (tmp3_1)) >> 1);
731 if (2 != tmp5) goto tmp2_end;
732 /* Pattern matching succeeded */
733#line 2211 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
734 _kept = omc_Mutable_access(threadData, omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree));
735#line 735 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
736
737#line 2212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
738 _entry = omc_NFClassTree_ClassTree_replaceDuplicates4(threadData, _entry, _kept);
739#line 739 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
740#line 740 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
741 goto tmp2_done;
742 }
743 case 1: {
744 modelica_integer tmp6;
745 tmp6 = mmc_unbox_integer(tmp3_1)(((mmc_sint_t) (tmp3_1)) >> 1);
746 if (1 != tmp6) goto tmp2_end;
747 /* Pattern matching succeeded */
748#line 2218 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
749 _kept = omc_Mutable_access(threadData, _node_ptr);
750#line 750 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
751
752#line 2219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
753 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
754#line 2219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
755 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
756#line 2219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
757 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[3] = mmc_mk_some(_kept);
758#line 2219 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
759 _entry = tmpMeta[0];
760#line 760 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
761
762#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
763 {
764#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
765 modelica_metatype _D_24tmpVar5;
766#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
767 modelica_metatype* tmp7;
768#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
769 modelica_metatype _D_24tmpVar4;
770#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
771 int tmp8;
772#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
773 modelica_metatype _c_loopVar = 0;
774#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
775 modelica_metatype _c;
776#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
777 _c_loopVar = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
);
778#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
779 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
780#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
781 _D_24tmpVar5 = tmpMeta[2]; /* defaultValue */
782#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
783 tmp7 = &_D_24tmpVar5;
784#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
785 while(1) {
786#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
787 tmp8 = 1;
788#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
789 if (!listEmpty(_c_loopVar)((*(mmc_uint_t*)((void*)((char*)(_c_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
790#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
791 _c = MMC_CAR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (1)))))
;
792#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
793 _c_loopVar = MMC_CDR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (2)))))
;
794#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
795 tmp8--;
796#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
797 }
798#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
799 if (tmp8 == 0) {
800#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
801 _D_24tmpVar4 = omc_NFClassTree_ClassTree_replaceDuplicates3(threadData, _c, _kept, _tree);
802#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
803 *tmp7 = mmc_mk_cons(_D_24tmpVar4,0);
804#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
805 tmp7 = &MMC_CDR(*tmp7)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp7) - 3))) +
(2)))))
;
806#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
807 } else if (tmp8 == 1) {
808#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
809 break;
810#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
811 } else {
812#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
813 goto goto_1;
814#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
815 }
816#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
817 }
818#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
819 *tmp7 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
820#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
821 tmpMeta[1] = _D_24tmpVar5;
822#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
823 }
824#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
825 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
826#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
827 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
828#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
829 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
830#line 2220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
831 _entry = tmpMeta[0];
832#line 832 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
833#line 833 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
834 goto tmp2_done;
835 }
836 case 2: {
837
838 /* Pattern matching succeeded */
839#line 839 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
840 goto tmp2_done;
841 }
842 }
843 goto tmp2_end;
844 tmp2_end: ;
845 }
846 goto goto_1;
847 goto_1:;
848 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
849 goto tmp2_done;
850 tmp2_done:;
851 }
852 }
853 ;
854 _return: OMC_LABEL_UNUSED__attribute__((unused))
855 return _entry;
856}
857
858PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_getRedeclareChain(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype _D_24in_chain)
859{
860 modelica_metatype _chain = NULL((void*)0);
861 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
862 MMC_SO()mmc_check_stackoverflow(threadData);
863 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
864 _chain = _D_24in_chain;
865#line 865 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
866 { /* match expression */
867 modelica_metatype tmp3_1;
868 tmp3_1 = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(5)))))
);
869 {
870 modelica_metatype _node_ptr = NULL((void*)0);
871 modelica_metatype _node = NULL((void*)0);
872 volatile mmc_switch_type tmp3;
873 int tmp4;
874 // _node_ptr has no default value.
875 // _node has no default value.
876 tmp3 = 0;
877 for (; tmp3 < 3; tmp3++) {
878 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
879 case 0: {
880 modelica_integer tmp5;
881 tmp5 = mmc_unbox_integer(tmp3_1)(((mmc_sint_t) (tmp3_1)) >> 1);
882 if (2 != tmp5) goto tmp2_end;
883 /* Pattern matching succeeded */
884#line 2168 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
885 _node_ptr = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree);
886#line 886 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
887
888#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
889 if(listEmpty((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))))((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)((void**
)(((void*)((char*)(_entry) - 3))) + (4))))))) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
)
890#line 2170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
891 {
892#line 2171 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
893 _node = omc_Mutable_access(threadData, _node_ptr);
894#line 894 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
895
896#line 2173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
897 if(omc_SCodeUtil_isClassExtends(threadData, omc_NFInstNode_InstNode_definition(threadData, _node)))
898#line 2173 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
899 {
900#line 2174 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
901 tmpMeta[1] = mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _node), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
902#line 2174 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
903 omc_Error_addSourceMessage(threadData, _OMC_LIT17((void*)((char*)(&(_OMC_LIT_STRUCT17).header) + 3)), tmpMeta[1], omc_NFInstNode_InstNode_info(threadData, _node));
904#line 904 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
905 }
906 else
907 {
908#line 2177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
909 tmpMeta[1] = mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _node), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
910#line 2177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
911 omc_Error_addSourceMessage(threadData, _OMC_LIT14((void*)((char*)(&(_OMC_LIT_STRUCT14).header) + 3)), tmpMeta[1], omc_NFInstNode_InstNode_info(threadData, _node));
912#line 912 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
913 }
914
915#line 2181 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
916 goto goto_1;
917#line 917 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
918 }
919#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
920 tmpMeta[1] = mmc_mk_cons(_node_ptr, _chain);
921#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
922 /* Tail recursive call */
923#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
924 _entry = listHead((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))))boxptr_listHead(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_entry) - 3))) + (4)))))))
;
925#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
926 _D_24in_chain = tmpMeta[1];
927#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
928 goto _tailrecursive;
929#line 2183 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
930 /* TODO: Make sure any eventual dead code below is never generated */
931#line 931 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
932 goto tmp2_done;
933 }
934 case 1: {
935 modelica_integer tmp6;
936 tmp6 = mmc_unbox_integer(tmp3_1)(((mmc_sint_t) (tmp3_1)) >> 1);
937 if (3 != tmp6) goto tmp2_end;
938 /* Pattern matching succeeded */
939#line 2188 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
940 _node_ptr = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree);
941#line 941 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
942#line 2189 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
943 tmpMeta[1] = mmc_mk_cons(_node_ptr, _chain);
944#line 2189 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
945 tmpMeta[0] = tmpMeta[1];
946#line 946 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
947 goto tmp2_done;
948 }
949 case 2: {
950
951 /* Pattern matching succeeded */
952#line 2192 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
953 tmpMeta[0] = _chain;
954#line 954 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
955 goto tmp2_done;
956 }
957 }
958 goto tmp2_end;
959 tmp2_end: ;
960 }
961 goto goto_1;
962 goto_1:;
963 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
964 goto tmp2_done;
965 tmp2_done:;
966 }
967 }
968 _chain = tmpMeta[0];
969 _return: OMC_LABEL_UNUSED__attribute__((unused))
970 return _chain;
971}
972
973PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_mapRedeclareChain(threadData_t *threadData, modelica_string _name, modelica_metatype _D_24in_entry, modelica_fnptr _func, modelica_metatype _tree)
974{
975 modelica_metatype _entry = NULL((void*)0);
976 modelica_metatype _chain = NULL((void*)0);
977 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
978 MMC_SO()mmc_check_stackoverflow(threadData);
979 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
980 _entry = _D_24in_entry;
981 // _chain has no default value.
982#line 2149 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
983 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
984#line 2149 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
985 _chain = omc_NFClassTree_ClassTree_getRedeclareChain(threadData, _entry, _tree, tmpMeta[0]);
986#line 986 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
987
988#line 2151 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
989 if((!listEmpty(_chain)((*(mmc_uint_t*)((void*)((char*)(_chain) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
))
990#line 2151 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
991 {
992#line 2152 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
993 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _chain) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _chain);
994#line 994 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
995 }
996 _return: OMC_LABEL_UNUSED__attribute__((unused))
997 return _entry;
998}
999
1000PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates4(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components)
1001{
1002 modelica_metatype _classes = NULL((void*)0);
1003 modelica_metatype _components = NULL((void*)0);
1004 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
1005 MMC_SO()mmc_check_stackoverflow(threadData);
1006 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1007 _classes = _D_24in_classes;
1008 _components = _D_24in_components;
1009#line 1009 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1010 { /* match expression */
1011 modelica_metatype tmp3_1;
1012 tmp3_1 = _entry;
1013 {
1014 volatile mmc_switch_type tmp3;
1015 int tmp4;
1016 tmp3 = 0;
1017 for (; tmp3 < 2; tmp3++) {
1018 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1019 case 0: {
1020 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp2_end;
1021
1022 /* Pattern matching succeeded */
1023#line 1023 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1024 goto tmp2_done;
1025 }
1026 case 1: {
1027 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
1028
1029 /* Pattern matching succeeded */
1030#line 2131 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1031 tmpMeta[0] = mmc_mk_cons((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _components);
1032#line 2131 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1033 _components = tmpMeta[0];
1034#line 1034 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1035#line 1035 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1036 goto tmp2_done;
1037 }
1038 }
1039 goto tmp2_end;
1040 tmp2_end: ;
1041 }
1042 goto goto_1;
1043 goto_1:;
1044 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1045 goto tmp2_done;
1046 tmp2_done:;
1047 }
1048 }
1049 ;
1050 _return: OMC_LABEL_UNUSED__attribute__((unused))
1051 if (out_components) { *out_components = _components; }
1052 return _classes;
1053}
1054
1055PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates3(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components)
1056{
1057 modelica_metatype _classes = NULL((void*)0);
1058 modelica_metatype _components = NULL((void*)0);
1059 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1060 MMC_SO()mmc_check_stackoverflow(threadData);
1061 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1062 _classes = _D_24in_classes;
1063 _components = _D_24in_components;
1064#line 2110 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1065 _classes = omc_NFClassTree_ClassTree_enumerateDuplicates4(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _classes, _components ,&_components);
1066#line 1066 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1067
1068#line 2112 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1069 {
1070#line 2112 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1071 modelica_metatype _c;
1072#line 2112 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1073 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
); !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)))))
)
1074#line 2112 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1075 {
1076#line 2112 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1077 _c = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1078#line 2113 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1079 _classes = omc_NFClassTree_ClassTree_enumerateDuplicates3(threadData, _c, _classes, _components ,&_components);
1080#line 1080 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1081 }
1082 }
1083 _return: OMC_LABEL_UNUSED__attribute__((unused))
1084 if (out_components) { *out_components = _components; }
1085 return _classes;
1086}
1087
1088PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates2(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _D_24in_classes, modelica_metatype _D_24in_components, modelica_metatype *out_components)
1089{
1090 modelica_metatype _classes = NULL((void*)0);
1091 modelica_metatype _components = NULL((void*)0);
1092 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1093 MMC_SO()mmc_check_stackoverflow(threadData);
1094 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1095 _classes = _D_24in_classes;
1096 _components = _D_24in_components;
1097#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1098 {
1099#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1100 modelica_metatype _c;
1101#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1102 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
); !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)))))
)
1103#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1104 {
1105#line 2100 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1106 _c = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1107#line 2101 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1108 _classes = omc_NFClassTree_ClassTree_enumerateDuplicates3(threadData, _c, _classes, _components ,&_components);
1109#line 1109 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1110 }
1111 }
1112 _return: OMC_LABEL_UNUSED__attribute__((unused))
1113 if (out_components) { *out_components = _components; }
1114 return _classes;
1115}
1116
1117PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_enumerateDuplicates(threadData_t *threadData, modelica_metatype _duplicates, modelica_metatype *out_components)
1118{
1119 modelica_metatype _classes = NULL((void*)0);
1120 modelica_metatype _components = NULL((void*)0);
1121 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1122 MMC_SO()mmc_check_stackoverflow(threadData);
1123 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1124 // _classes has no default value.
1125 // _components has no default value.
1126#line 2084 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1127 if(omc_NFClassTree_DuplicateTree_isEmpty(threadData, _duplicates))
1128#line 2084 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1129 {
1130#line 2085 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1131 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1132#line 2085 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1133 _classes = tmpMeta[0];
1134#line 1134 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1135
1136#line 2086 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1137 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1138#line 2086 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1139 _components = tmpMeta[0];
1140#line 1140 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1141 }
1142 else
1143 {
1144#line 2088 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1145 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1146#line 2088 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1147 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1148#line 2088 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1149 _classes = omc_NFClassTree_DuplicateTree_fold__2(threadData, _duplicates, boxvar_NFClassTree_ClassTree_enumerateDuplicates2((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_enumerateDuplicates2
).header) + 3))
, tmpMeta[0], tmpMeta[1] ,&_components);
1150#line 1150 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1151
1152#line 2089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1153 _classes = omc_List_sort(threadData, _classes, boxvar_intGt((void*)((char*)(&(boxvar_lit_intGt).header) + 3)));
1154#line 1154 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1155
1156#line 2090 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1157 _components = omc_List_sort(threadData, _components, boxvar_intGt((void*)((char*)(&(boxvar_lit_intGt).header) + 3)));
1158#line 1158 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1159 }
1160 _return: OMC_LABEL_UNUSED__attribute__((unused))
1161 if (out_components) { *out_components = _components; }
1162 return _classes;
1163}
1164
1165PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_joinDuplicates(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name)
1166{
1167 modelica_metatype _entry = NULL((void*)0);
1168 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1169 MMC_SO()mmc_check_stackoverflow(threadData);
1170 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1171 _entry = _oldEntry;
1172#line 2074 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1173 tmpMeta[1] = mmc_mk_cons(_newEntry, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
));
1174#line 2074 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1175 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
1176#line 2074 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1177 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 6*sizeof(modelica_metatype));
1178#line 2074 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1179 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
1180#line 2074 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1181 _entry = tmpMeta[0];
1182#line 1182 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1183 _return: OMC_LABEL_UNUSED__attribute__((unused))
1184 return _entry;
1185}
1186
1187PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_offsetDuplicate(threadData_t *threadData, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset)
1188{
1189 modelica_metatype _offsetEntry = NULL((void*)0);
1190 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1191 MMC_SO()mmc_check_stackoverflow(threadData);
1192 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1193 // _offsetEntry has no default value.
1194#line 1194 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1195 { /* match expression */
1196 modelica_metatype tmp3_1;
1197 tmp3_1 = _entry;
1198 {
1199 volatile mmc_switch_type tmp3;
1200 int tmp4;
1201 tmp3 = 0;
1202 for (; tmp3 < 2; tmp3++) {
1203 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
1204 case 0: {
1205 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp2_end;
1206
1207 /* Pattern matching succeeded */
1208#line 2060 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1209 tmpMeta[1] = mmc_mk_box2(3, &NFClassTree_LookupTree_Entry_CLASS__desc, mmc_mk_integermmc_mk_icon(mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
+ _classOffset));
1210#line 2060 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1211 tmpMeta[0] = tmpMeta[1];
1212#line 1212 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1213 goto tmp2_done;
1214 }
1215 case 1: {
1216 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
1217
1218 /* Pattern matching succeeded */
1219#line 2062 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1220 tmpMeta[1] = mmc_mk_box2(4, &NFClassTree_LookupTree_Entry_COMPONENT__desc, mmc_mk_integermmc_mk_icon(mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
+ _componentOffset));
1221#line 2062 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1222 tmpMeta[0] = tmpMeta[1];
1223#line 1223 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1224 goto tmp2_done;
1225 }
1226 }
1227 goto tmp2_end;
1228 tmp2_end: ;
1229 }
1230 goto goto_1;
1231 goto_1:;
1232 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1233 goto tmp2_done;
1234 tmp2_done:;
1235 }
1236 }
1237 _offsetEntry = tmpMeta[0];
1238 _return: OMC_LABEL_UNUSED__attribute__((unused))
1239 return _offsetEntry;
1240}
1241PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_offsetDuplicate(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset)
1242{
1243 modelica_integer tmp1;
1244 modelica_integer tmp2;
1245 modelica_metatype _offsetEntry = NULL((void*)0);
1246 tmp1 = mmc_unbox_integer(_classOffset)(((mmc_sint_t) (_classOffset)) >> 1);
1247 tmp2 = mmc_unbox_integer(_componentOffset)(((mmc_sint_t) (_componentOffset)) >> 1);
1248 _offsetEntry = omc_NFClassTree_ClassTree_offsetDuplicate(threadData, _entry, tmp1, tmp2);
1249 /* skip box _offsetEntry; NFClassTree.LookupTree.Entry */
1250 return _offsetEntry;
1251}
1252
1253PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_offsetDuplicates(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset)
1254{
1255 modelica_metatype _offsetEntry = NULL((void*)0);
1256 modelica_metatype _parent = NULL((void*)0);
1257 modelica_metatype _children = NULL((void*)0);
1258 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1259 MMC_SO()mmc_check_stackoverflow(threadData);
1260 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1261 // _offsetEntry has no default value.
1262 // _parent has no default value.
1263 // _children has no default value.
1264#line 2047 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1265 _parent = omc_NFClassTree_ClassTree_offsetDuplicate(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _classOffset, _componentOffset);
1266#line 1266 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1267
1268#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1269 {
1270#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1271 modelica_metatype _D_24tmpVar7;
1272#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1273 modelica_metatype* tmp1;
1274#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1275 modelica_metatype _D_24tmpVar6;
1276#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1277 int tmp2;
1278#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1279 modelica_metatype _c_loopVar = 0;
1280#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1281 modelica_metatype _c;
1282#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1283 _c_loopVar = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
);
1284#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1285 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
1286#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1287 _D_24tmpVar7 = tmpMeta[1]; /* defaultValue */
1288#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1289 tmp1 = &_D_24tmpVar7;
1290#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1291 while(1) {
1292#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1293 tmp2 = 1;
1294#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1295 if (!listEmpty(_c_loopVar)((*(mmc_uint_t*)((void*)((char*)(_c_loopVar) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) {
1296#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1297 _c = MMC_CAR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (1)))))
;
1298#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1299 _c_loopVar = MMC_CDR(_c_loopVar)(*(void**)(((void*)((void**)(((void*)((char*)(_c_loopVar) - 3
))) + (2)))))
;
1300#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1301 tmp2--;
1302#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1303 }
1304#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1305 if (tmp2 == 0) {
1306#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1307 _D_24tmpVar6 = omc_NFClassTree_ClassTree_offsetDuplicates(threadData, _name, _c, _classOffset, _componentOffset);
1308#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1309 *tmp1 = mmc_mk_cons(_D_24tmpVar6,0);
1310#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1311 tmp1 = &MMC_CDR(*tmp1)(*(void**)(((void*)((void**)(((void*)((char*)(*tmp1) - 3))) +
(2)))))
;
1312#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1313 } else if (tmp2 == 1) {
1314#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1315 break;
1316#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1317 } else {
1318#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1319 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1320#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1321 }
1322#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1323 }
1324#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1325 *tmp1 = mmc_mk_nil()((void*)((char*)(&(mmc_nil).header) + 3));
1326#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1327 tmpMeta[0] = _D_24tmpVar7;
1328#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1329 }
1330#line 2048 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1331 _children = tmpMeta[0];
1332#line 1332 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1333
1334#line 2049 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1335 tmpMeta[0] = mmc_mk_box5(3, &NFClassTree_DuplicateTree_Entry_ENTRY__desc, _parent, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), _children, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(5)))))
));
1336#line 2049 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1337 _offsetEntry = tmpMeta[0];
1338#line 1338 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1339 _return: OMC_LABEL_UNUSED__attribute__((unused))
1340 return _offsetEntry;
1341}
1342PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_offsetDuplicates(threadData_t *threadData, modelica_metatype _name, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset)
1343{
1344 modelica_integer tmp1;
1345 modelica_integer tmp2;
1346 modelica_metatype _offsetEntry = NULL((void*)0);
1347 tmp1 = mmc_unbox_integer(_classOffset)(((mmc_sint_t) (_classOffset)) >> 1);
1348 tmp2 = mmc_unbox_integer(_componentOffset)(((mmc_sint_t) (_componentOffset)) >> 1);
1349 _offsetEntry = omc_NFClassTree_ClassTree_offsetDuplicates(threadData, _name, _entry, tmp1, tmp2);
1350 /* skip box _offsetEntry; NFClassTree.DuplicateTree.Entry */
1351 return _offsetEntry;
1352}
1353
1354PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addInheritedElementConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _duplicates, modelica_metatype _extDuplicates)
1355{
1356 modelica_metatype _entry = NULL((void*)0);
1357 modelica_metatype _dups = NULL((void*)0);
1358 modelica_metatype _opt_dup_entry = NULL((void*)0);
1359 modelica_metatype _dup_entry = NULL((void*)0);
1360 modelica_integer _new_id;
1361 modelica_integer _old_id;
1362 modelica_integer _ty;
1363 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1364 MMC_SO()mmc_check_stackoverflow(threadData);
1365 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1366 // _entry has no default value.
1367 // _dups has no default value.
1368 // _opt_dup_entry has no default value.
1369 // _dup_entry has no default value.
1370 _new_id = omc_NFClassTree_LookupTree_Entry_index(threadData, _newEntry);
1371 _old_id = omc_NFClassTree_LookupTree_Entry_index(threadData, _oldEntry);
1372 // _ty has no default value.
1373#line 1962 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1374 if(omc_NFClassTree_LookupTree_Entry_isImport(threadData, _oldEntry))
1375#line 1962 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1376 {
1377#line 1963 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1378 _entry = _newEntry;
1379#line 1379 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1380
1381#line 1964 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1382 goto _return;
1383#line 1383 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1384 }
1385
1386#line 1967 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1387 _dups = omc_Mutable_access(threadData, _duplicates);
1388#line 1388 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1389
1390#line 1968 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1391 _opt_dup_entry = omc_NFClassTree_DuplicateTree_getOpt(threadData, _dups, _name);
1392#line 1392 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1393
1394#line 1970 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1395 if(isNone(_opt_dup_entry)(0==((((((*(mmc_uint_t*)((void*)((char*)(_opt_dup_entry) - 3)
))) & (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(_opt_dup_entry
) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*
)(_opt_dup_entry) - 3)))) >> 10)) ? 1 : 0)
)
1396#line 1970 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1397 {
1398#line 1972 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1399 if((_new_id < _old_id))
1400#line 1972 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1401 {
1402#line 1973 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1403 _entry = _newEntry;
1404#line 1404 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1405
1406#line 1974 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1407 _dup_entry = omc_NFClassTree_DuplicateTree_newDuplicate(threadData, _newEntry, _oldEntry);
1408#line 1408 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1409 }
1410 else
1411 {
1412#line 1976 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1413 _entry = _oldEntry;
1414#line 1414 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1415
1416#line 1977 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1417 _dup_entry = omc_NFClassTree_DuplicateTree_newDuplicate(threadData, _oldEntry, _newEntry);
1418#line 1418 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1419 }
1420
1421#line 1980 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1422 _dups = omc_NFClassTree_DuplicateTree_add(threadData, _dups, _name, _dup_entry, boxvar_NFClassTree_DuplicateTree_addConflictDefault((void*)((char*)(&(boxvar_lit_NFClassTree_DuplicateTree_addConflictDefault
).header) + 3))
);
1423#line 1423 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1424
1425#line 1981 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1426 omc_Mutable_update(threadData, _duplicates, _dups);
1427#line 1427 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1428 }
1429 else
1430 {
1431#line 1983 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1432 /* Pattern-matching assignment */
1433#line 1983 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1434 tmpMeta[0] = _opt_dup_entry;
1435#line 1983 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1436 if (optionNone(tmpMeta[0])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[0]) - 3)))) >> 10)) ? 1 : 0)
) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1437#line 1983 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1438 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1439#line 1983 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1440 _dup_entry = tmpMeta[1];
1441#line 1441 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1442
1443#line 1984 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1444 _ty = mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 5))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_dup_entry) - 3))) + (5)))))))) >> 1)
;
1445#line 1445 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1446
1447#line 1990 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1448 if((!omc_NFClassTree_DuplicateTree_idExistsInEntry(threadData, _newEntry, _dup_entry)))
1449#line 1990 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1450 {
1451#line 1991 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1452 if(((modelica_integer)_ty == 2))
1453#line 1991 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1454 {
1455#line 1994 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1456 _entry = _newEntry;
1457#line 1457 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1458
1459#line 1995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1460 tmpMeta[1] = mmc_mk_cons(omc_NFClassTree_DuplicateTree_newEntry(threadData, _newEntry), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (4)))))
));
1461#line 1995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1462 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
1463#line 1995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1464 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_dup_entry)((void*)((char*)(_dup_entry) - 3)), 6*sizeof(modelica_metatype));
1465#line 1995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1466 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
1467#line 1995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1468 _dup_entry = tmpMeta[0];
1469#line 1469 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1470 }
1471 else
1472 {
1473#line 2002 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1474 if((_new_id < _old_id))
1475#line 2002 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1476 {
1477#line 2003 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1478 _entry = _newEntry;
1479#line 1479 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1480
1481#line 2004 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1482 tmpMeta[0] = mmc_mk_cons(omc_NFClassTree_DuplicateTree_newEntry(threadData, _oldEntry), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (4)))))
));
1483#line 2004 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1484 tmpMeta[1] = mmc_mk_box5(3, &NFClassTree_DuplicateTree_Entry_ENTRY__desc, _newEntry, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), tmpMeta[0], (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (5)))))
));
1485#line 2004 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1486 _dup_entry = tmpMeta[1];
1487#line 1487 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1488 }
1489 else
1490 {
1491#line 2007 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1492 _entry = _oldEntry;
1493#line 1493 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1494
1495#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1496 tmpMeta[1] = mmc_mk_cons(omc_NFClassTree_DuplicateTree_newEntry(threadData, _newEntry), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (4)))))
));
1497#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1498 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
1499#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1500 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_dup_entry)((void*)((char*)(_dup_entry) - 3)), 6*sizeof(modelica_metatype));
1501#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1502 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
1503#line 2008 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1504 _dup_entry = tmpMeta[0];
1505#line 1505 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1506 }
1507 }
1508
1509#line 2012 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1510 _dups = omc_NFClassTree_DuplicateTree_update(threadData, _dups, _name, _dup_entry);
1511#line 1511 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1512
1513#line 2013 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1514 omc_Mutable_update(threadData, _duplicates, _dups);
1515#line 1515 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1516 }
1517 else
1518 {
1519 if((!omc_NFClassTree_DuplicateTree_idExistsInEntry(threadData, _oldEntry, _dup_entry)))
1520 {
1521#line 2016 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1522 if((((modelica_integer)_ty == 2) || (_new_id < _old_id)))
1523#line 2016 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1524 {
1525#line 2017 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1526 _entry = _newEntry;
1527#line 1527 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1528
1529#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1530 tmpMeta[1] = mmc_mk_cons(omc_NFClassTree_DuplicateTree_newEntry(threadData, _oldEntry), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (4)))))
));
1531#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1532 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(6))((void*)((char*)(mmc_alloc_words(6)) + 3));
1533#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1534 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_dup_entry)((void*)((char*)(_dup_entry) - 3)), 6*sizeof(modelica_metatype));
1535#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1536 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = tmpMeta[1];
1537#line 2018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1538 _dup_entry = tmpMeta[0];
1539#line 1539 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1540 }
1541 else
1542 {
1543#line 2020 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1544 _entry = _newEntry;
1545#line 1545 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1546
1547#line 2021 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1548 tmpMeta[0] = mmc_mk_cons(omc_NFClassTree_DuplicateTree_newEntry(threadData, _oldEntry), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (4)))))
));
1549#line 2021 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1550 tmpMeta[1] = mmc_mk_box5(3, &NFClassTree_DuplicateTree_Entry_ENTRY__desc, _newEntry, mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), tmpMeta[0], (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_dup_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_dup_entry) - 3
))) + (5)))))
));
1551#line 2021 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1552 _dup_entry = tmpMeta[1];
1553#line 1553 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1554 }
1555
1556#line 2025 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1557 _dups = omc_NFClassTree_DuplicateTree_update(threadData, _dups, _name, _dup_entry);
1558#line 1558 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1559
1560#line 2026 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1561 omc_Mutable_update(threadData, _duplicates, _dups);
1562#line 1562 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1563 }
1564 else
1565 {
1566#line 2030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1567 _entry = ((_new_id < _old_id)?_newEntry:_oldEntry);
1568#line 1568 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1569 }
1570 }
1571 }
1572 _return: OMC_LABEL_UNUSED__attribute__((unused))
1573 return _entry;
1574}
1575
1576PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addInheritedElement(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_integer _classOffset, modelica_integer _componentOffset, modelica_fnptr _conflictFunc, modelica_metatype _D_24in_tree)
1577{
1578 modelica_metatype _tree = NULL((void*)0);
1579 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
1580 MMC_SO()mmc_check_stackoverflow(threadData);
1581 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1582 _tree = _D_24in_tree;
1583#line 1583 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1584 { /* match expression */
1585 modelica_metatype tmp3_1;
1586 tmp3_1 = _entry;
1587 {
1588 int tmp3;
1589 {
1590 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
1591 case 3: {
1592
1593 /* Pattern matching succeeded */
1594#line 1927 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1595 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(3))((void*)((char*)(mmc_alloc_words(3)) + 3));
1596#line 1927 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1597 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 3*sizeof(modelica_metatype));
1598#line 1927 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1599 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[2] = mmc_mk_integermmc_mk_icon(mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
+ _classOffset);
1600#line 1927 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1601 _entry = tmpMeta[0];
1602#line 1602 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1603
1604#line 1928 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1605 _tree = omc_NFClassTree_LookupTree_add(threadData, _tree, _name, _entry, ((modelica_fnptr) _conflictFunc));
1606#line 1606 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1607#line 1607 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1608 goto tmp2_done;
1609 }
1610 case 4: {
1611
1612 /* Pattern matching succeeded */
1613#line 1934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1614 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(3))((void*)((char*)(mmc_alloc_words(3)) + 3));
1615#line 1934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1616 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_entry)((void*)((char*)(_entry) - 3)), 3*sizeof(modelica_metatype));
1617#line 1934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1618 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[2] = mmc_mk_integermmc_mk_icon(mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
+ _componentOffset);
1619#line 1934 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1620 _entry = tmpMeta[0];
1621#line 1621 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1622
1623#line 1935 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1624 _tree = omc_NFClassTree_LookupTree_add(threadData, _tree, _name, _entry, ((modelica_fnptr) _conflictFunc));
1625#line 1625 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1626#line 1626 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1627 goto tmp2_done;
1628 }
1629 default:
1630 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
1631
1632 /* Pattern matching succeeded */
1633#line 1633 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1634 goto tmp2_done;
1635 }
1636 }
1637 goto tmp2_end;
1638 tmp2_end: ;
1639 }
1640 goto goto_1;
1641 goto_1:;
1642 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1643 goto tmp2_done;
1644 tmp2_done:;
1645 }
1646 }
1647 ;
1648 _return: OMC_LABEL_UNUSED__attribute__((unused))
1649 return _tree;
1650}
1651PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_addInheritedElement(threadData_t *threadData, modelica_metatype _name, modelica_metatype _entry, modelica_metatype _classOffset, modelica_metatype _componentOffset, modelica_fnptr _conflictFunc, modelica_metatype _D_24in_tree)
1652{
1653 modelica_integer tmp1;
1654 modelica_integer tmp2;
1655 modelica_metatype _tree = NULL((void*)0);
1656 tmp1 = mmc_unbox_integer(_classOffset)(((mmc_sint_t) (_classOffset)) >> 1);
1657 tmp2 = mmc_unbox_integer(_componentOffset)(((mmc_sint_t) (_componentOffset)) >> 1);
1658 _tree = omc_NFClassTree_ClassTree_addInheritedElement(threadData, _name, _entry, tmp1, tmp2, _conflictFunc, _D_24in_tree);
1659 /* skip box _tree; NFClassTree.LookupTree.Tree */
1660 return _tree;
1661}
1662
1663static modelica_metatype closure0_NFClassTree_ClassTree_offsetDuplicates(threadData_t *thData, modelica_metatype closure, modelica_string name, modelica_metatype entry)
1664{
1665 modelica_metatype classOffset = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
1666 modelica_metatype componentOffset = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
1667 return boxptr_NFClassTree_ClassTree_offsetDuplicates(thData, name, entry, classOffset, componentOffset);
1668}static modelica_metatype closure1_NFClassTree_ClassTree_addInheritedElementConflict(threadData_t *thData, modelica_metatype closure, modelica_metatype newEntry, modelica_metatype oldEntry, modelica_string name)
1669{
1670 modelica_metatype duplicates = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
1671 modelica_metatype extDuplicates = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
1672 return boxptr_NFClassTree_ClassTree_addInheritedElementConflictomc_NFClassTree_ClassTree_addInheritedElementConflict(thData, newEntry, oldEntry, name, duplicates, extDuplicates);
1673}static modelica_metatype closure2_NFClassTree_ClassTree_addInheritedElement(threadData_t *thData, modelica_metatype closure, modelica_string name, modelica_metatype entry, modelica_metatype $in_tree)
1674{
1675 modelica_metatype classOffset = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
1676 modelica_metatype componentOffset = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
1677 modelica_fnptr conflictFunc = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),3))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (3)))))
;
1678 return boxptr_NFClassTree_ClassTree_addInheritedElement(thData, name, entry, classOffset, componentOffset, conflictFunc, $in_tree);
1679}
1680PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_expandExtends(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_tree, modelica_integer _classOffset, modelica_integer _componentOffset, modelica_metatype _duplicates)
1681{
1682 modelica_metatype _tree = NULL((void*)0);
1683 modelica_metatype _cls_tree = NULL((void*)0);
1684 modelica_metatype _ext_tree = NULL((void*)0);
1685 modelica_metatype _ext_dups = NULL((void*)0);
1686 modelica_metatype _dups = NULL((void*)0);
1687 modelica_fnptr _conf_func;
1688 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1689 MMC_SO()mmc_check_stackoverflow(threadData);
1690 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1691 _tree = _D_24in_tree;
1692 // _cls_tree has no default value.
1693 // _ext_tree has no default value.
1694 // _ext_dups has no default value.
1695 // _dups has no default value.
1696#line 1885 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1697 _cls_tree = omc_NFClass_Class_classTree(threadData, omc_NFInstNode_InstNode_getClass(threadData, _extendsNode));
1698#line 1698 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1699
1700#line 1887 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1701
1702#line 1887 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1703
1704#line 1704 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1705 { /* match expression */
1706 modelica_metatype tmp4_1;
1707 tmp4_1 = _cls_tree;
1708 {
1709 int tmp4;
1710 {
1711 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
1712 case 4: {
1713
1714 /* Pattern matching succeeded */
1715#line 1888 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1716 tmpMeta[0+0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls_tree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_cls_tree) - 3)
)) + (2)))))
);
1717#line 1888 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1718 tmpMeta[0+1] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_cls_tree) - 3)
)) + (7)))))
);
1719#line 1719 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1720 goto tmp3_done;
1721 }
1722 case 6: {
1723
1724 /* Pattern matching succeeded */
1725#line 1889 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1726 tmpMeta[0+0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls_tree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_cls_tree) - 3)
)) + (2)))))
);
1727#line 1889 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1728 tmpMeta[0+1] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_cls_tree) - 3)
)) + (6)))))
);
1729#line 1729 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1730 goto tmp3_done;
1731 }
1732 default:
1733 tmp3_default: OMC_LABEL_UNUSED__attribute__((unused)); {
1734
1735 /* Pattern matching succeeded */
1736#line 1890 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1737 goto _return;
1738#line 1738 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1739#line 1890 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1740 tmpMeta[0+0] = _tree;
1741#line 1890 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1742 tmpMeta[0+1] = omc_NFClassTree_DuplicateTree_new(threadData);
1743#line 1743 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1744 goto tmp3_done;
1745 }
1746 }
1747 goto tmp3_end;
1748 tmp3_end: ;
1749 }
1750 goto goto_2;
1751 goto_2:;
1752 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1753 goto tmp3_done;
1754 tmp3_done:;
1755 }
1756 }
1757 _ext_tree = tmpMeta[0+0];
1758 _ext_dups = tmpMeta[0+1];
1759
1760#line 1894 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1761 if((!omc_NFClassTree_DuplicateTree_isEmpty(threadData, _ext_dups)))
1762#line 1894 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1763 {
1764#line 1896 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1765 tmpMeta[0] = mmc_mk_box2(0, mmc_mk_integermmc_mk_icon(_classOffset), mmc_mk_integermmc_mk_icon(_componentOffset));
1766#line 1896 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1767 _dups = omc_NFClassTree_DuplicateTree_map(threadData, _ext_dups, (modelica_fnptr) mmc_mk_box2(0,closure0_NFClassTree_ClassTree_offsetDuplicates,tmpMeta[0]));
1768#line 1768 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1769
1770#line 1899 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1771 _dups = omc_NFClassTree_DuplicateTree_join(threadData, omc_Mutable_access(threadData, _duplicates), _dups, boxvar_NFClassTree_ClassTree_joinDuplicates((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_joinDuplicates
).header) + 3))
);
1772#line 1772 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1773
1774#line 1900 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1775 omc_Mutable_update(threadData, _duplicates, _dups);
1776#line 1776 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1777 }
1778
1779#line 1903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1780 tmpMeta[0] = mmc_mk_box2(0, _duplicates, _ext_dups);
1781#line 1903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1782 _conf_func = (modelica_fnptr) (modelica_fnptr) mmc_mk_box2(0,closure1_NFClassTree_ClassTree_addInheritedElementConflict,tmpMeta[0]);
1783#line 1783 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1784
1785#line 1908 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1786 tmpMeta[0] = mmc_mk_box3(0, mmc_mk_integermmc_mk_icon(_classOffset), mmc_mk_integermmc_mk_icon(_componentOffset), ((modelica_fnptr) _conf_func));
1787#line 1908 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1788 _tree = omc_NFClassTree_LookupTree_fold(threadData, _ext_tree, (modelica_fnptr) mmc_mk_box2(0,closure2_NFClassTree_ClassTree_addInheritedElement,tmpMeta[0]), _tree);
1789#line 1789 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1790 _return: OMC_LABEL_UNUSED__attribute__((unused))
1791 return _tree;
1792}
1793PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_expandExtends(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_tree, modelica_metatype _classOffset, modelica_metatype _componentOffset, modelica_metatype _duplicates)
1794{
1795 modelica_integer tmp1;
1796 modelica_integer tmp2;
1797 modelica_metatype _tree = NULL((void*)0);
1798 tmp1 = mmc_unbox_integer(_classOffset)(((mmc_sint_t) (_classOffset)) >> 1);
1799 tmp2 = mmc_unbox_integer(_componentOffset)(((mmc_sint_t) (_componentOffset)) >> 1);
1800 _tree = omc_NFClassTree_ClassTree_expandExtends(threadData, _extendsNode, _D_24in_tree, tmp1, tmp2, _duplicates);
1801 /* skip box _tree; NFClassTree.LookupTree.Tree */
1802 return _tree;
1803}
1804
1805PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_countInheritedElements(threadData_t *threadData, modelica_metatype _extendsNode, modelica_integer _D_24in_classCount, modelica_integer _D_24in_componentCount, modelica_integer *out_componentCount)
1806{
1807 modelica_integer _classCount;
1808 modelica_integer _componentCount;
1809 modelica_metatype _clss = NULL((void*)0);
1810 modelica_metatype _comps = NULL((void*)0);
1811 modelica_metatype _exts = NULL((void*)0);
1812 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
1813 MMC_SO()mmc_check_stackoverflow(threadData);
1814 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1815 _classCount = _D_24in_classCount;
1816 _componentCount = _D_24in_componentCount;
1817 // _clss has no default value.
1818 // _comps has no default value.
1819 // _exts has no default value.
1820#line 1820 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1821 { /* match expression */
1822 modelica_metatype tmp3_1;
1823 tmp3_1 = omc_NFClass_Class_classTree(threadData, omc_NFInstNode_InstNode_getClass(threadData, _extendsNode));
1824 {
1825 int tmp3;
1826 {
1827 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
1828 case 4: {
1829 modelica_integer tmp4;
1830 modelica_integer tmp5;
1831 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,6)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((6 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
1832 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
1833 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
1834 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(5)))))
;
1835
1836 _clss = tmpMeta[0];
1837 _comps = tmpMeta[1];
1838 _exts = tmpMeta[2];
1839 /* Pattern matching succeeded */
1840#line 1848 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1841 _componentCount = _componentCount + arrayLength(_comps) - arrayLength(_exts);
1842#line 1842 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1843
1844#line 1849 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1845 _classCount = _classCount + arrayLength(_clss);
1846#line 1846 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1847
1848#line 1851 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1849 {
1850#line 1851 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1851 modelica_metatype _ext;
1852#line 1851 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1853 for (tmpMeta[0] = _exts, tmp5 = arrayLength(tmpMeta[0]), tmp4 = 1; tmp4 <= tmp5; tmp4++)
1854#line 1851 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1855 {
1856#line 1851 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1857 _ext = arrayGet(tmpMeta[0],tmp4)nobox_arrayGet(threadData,tmpMeta[0],tmp4);
1858#line 1852 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1859 _classCount = omc_NFClassTree_ClassTree_countInheritedElements(threadData, _ext, _classCount, _componentCount ,&_componentCount);
1860#line 1860 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1861 }
1862 }
1863#line 1863 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1864 goto tmp2_done;
1865 }
1866 case 6: {
1867 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,5)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((5 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
1868 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(3)))))
;
1869 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
1870
1871 _clss = tmpMeta[0];
1872 _comps = tmpMeta[1];
1873 /* Pattern matching succeeded */
1874#line 1859 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1875 _componentCount = _componentCount + arrayLength(_comps);
1876#line 1876 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1877
1878#line 1860 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1879 _classCount = _classCount + arrayLength(_clss);
1880#line 1880 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1881#line 1881 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1882 goto tmp2_done;
1883 }
1884 default:
1885 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
1886
1887 /* Pattern matching succeeded */
1888#line 1888 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1889 goto tmp2_done;
1890 }
1891 }
1892 goto tmp2_end;
1893 tmp2_end: ;
1894 }
1895 goto goto_1;
1896 goto_1:;
1897 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1898 goto tmp2_done;
1899 tmp2_done:;
1900 }
1901 }
1902 ;
1903 _return: OMC_LABEL_UNUSED__attribute__((unused))
1904 if (out_componentCount) { *out_componentCount = _componentCount; }
1905 return _classCount;
1906}
1907PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_countInheritedElements(threadData_t *threadData, modelica_metatype _extendsNode, modelica_metatype _D_24in_classCount, modelica_metatype _D_24in_componentCount, modelica_metatype *out_componentCount)
1908{
1909 modelica_integer tmp1;
1910 modelica_integer tmp2;
1911 modelica_integer _componentCount;
1912 modelica_integer _classCount;
1913 modelica_metatype out_classCount;
1914 tmp1 = mmc_unbox_integer(_D_24in_classCount)(((mmc_sint_t) (_D_24in_classCount)) >> 1);
1915 tmp2 = mmc_unbox_integer(_D_24in_componentCount)(((mmc_sint_t) (_D_24in_componentCount)) >> 1);
1916 _classCount = omc_NFClassTree_ClassTree_countInheritedElements(threadData, _extendsNode, tmp1, tmp2, &_componentCount);
1917 out_classCount = mmc_mk_icon(_classCount);
1918 if (out_componentCount) { *out_componentCount = mmc_mk_icon(_componentCount); }
1919 return out_classCount;
1920}
1921
1922PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_countElements(threadData_t *threadData, modelica_metatype _elements, modelica_integer *out_compCount, modelica_integer *out_extCount)
1923{
1924 modelica_integer _classCount;
1925 modelica_integer _compCount;
1926 modelica_integer _extCount;
1927 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
1928 MMC_SO()mmc_check_stackoverflow(threadData);
1929 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
1930 _classCount = ((modelica_integer) 0);
1931 _compCount = ((modelica_integer) 0);
1932 _extCount = ((modelica_integer) 0);
1933#line 1811 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1934 {
1935#line 1811 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1936 modelica_metatype _e;
1937#line 1811 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1938 for (tmpMeta[0] = _elements; !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)))))
)
1939#line 1811 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1940 {
1941#line 1811 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1942 _e = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
1943#line 1943 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1944 { /* match expression */
1945 modelica_metatype tmp3_1;
1946 tmp3_1 = _e;
1947 {
1948 int tmp3;
1949 {
1950 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
1951 case 5: {
1952
1953 /* Pattern matching succeeded */
1954#line 1815 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1955 _classCount = ((modelica_integer) 1) + _classCount;
1956#line 1956 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1957#line 1957 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1958 goto tmp2_done;
1959 }
1960 case 6: {
1961
1962 /* Pattern matching succeeded */
1963#line 1821 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1964 _compCount = ((modelica_integer) 1) + _compCount;
1965#line 1965 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1966#line 1966 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1967 goto tmp2_done;
1968 }
1969 case 4: {
1970
1971 /* Pattern matching succeeded */
1972#line 1827 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
1973 _extCount = ((modelica_integer) 1) + _extCount;
1974#line 1974 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1975#line 1975 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1976 goto tmp2_done;
1977 }
1978 default:
1979 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
1980
1981 /* Pattern matching succeeded */
1982#line 1982 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
1983 goto tmp2_done;
1984 }
1985 }
1986 goto tmp2_end;
1987 tmp2_end: ;
1988 }
1989 goto goto_1;
1990 goto_1:;
1991 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
1992 goto tmp2_done;
1993 tmp2_done:;
1994 }
1995 }
1996 ;
1997 }
1998 }
1999 _return: OMC_LABEL_UNUSED__attribute__((unused))
2000 if (out_compCount) { *out_compCount = _compCount; }
2001 if (out_extCount) { *out_extCount = _extCount; }
2002 return _classCount;
2003}
2004PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_countElements(threadData_t *threadData, modelica_metatype _elements, modelica_metatype *out_compCount, modelica_metatype *out_extCount)
2005{
2006 modelica_integer _compCount;
2007 modelica_integer _extCount;
2008 modelica_integer _classCount;
2009 modelica_metatype out_classCount;
2010 _classCount = omc_NFClassTree_ClassTree_countElements(threadData, _elements, &_compCount, &_extCount);
2011 out_classCount = mmc_mk_icon(_classCount);
2012 if (out_compCount) { *out_compCount = mmc_mk_icon(_compCount); }
2013 if (out_extCount) { *out_extCount = mmc_mk_icon(_extCount); }
2014 return out_classCount;
2015}
2016
2017PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveImport(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree)
2018{
2019 modelica_metatype _element = NULL((void*)0);
2020 modelica_metatype _imports = NULL((void*)0);
2021 modelica_metatype _imp = NULL((void*)0);
2022 modelica_boolean _changed;
2023 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2024 MMC_SO()mmc_check_stackoverflow(threadData);
2025 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2026 // _element has no default value.
2027 // _imports has no default value.
2028 // _imp has no default value.
2029 // _changed has no default value.
2030#line 2030 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2031 { /* match expression */
2032 modelica_metatype tmp3_1;
2033 tmp3_1 = _tree;
2034 {
2035 int tmp3;
2036 {
2037 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2038 case 3: {
2039
2040 /* Pattern matching succeeded */
2041#line 1788 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2042 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(6)))))
);
2043#line 2043 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2044 goto tmp2_done;
2045 }
2046 case 4: {
2047
2048 /* Pattern matching succeeded */
2049#line 1789 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2050 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(6)))))
);
2051#line 2051 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2052 goto tmp2_done;
2053 }
2054 case 5: {
2055
2056 /* Pattern matching succeeded */
2057#line 1790 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2058 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(7)))))
);
2059#line 2059 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2060 goto tmp2_done;
2061 }
2062 case 6: {
2063
2064 /* Pattern matching succeeded */
2065#line 1791 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2066 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
);
2067#line 2067 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2068 goto tmp2_done;
2069 }
2070 }
2071 goto tmp2_end;
2072 tmp2_end: ;
2073 }
2074 goto goto_1;
2075 goto_1:;
2076 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2077 goto tmp2_done;
2078 tmp2_done:;
2079 }
2080 }
2081 _imports = tmpMeta[0];
2082
2083#line 1795 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2084 _element = omc_NFImport_resolve(threadData, arrayGet(_imports,_index)nobox_arrayGet(threadData,_imports,_index) /* DAE.ASUB */ ,&_changed ,&_imp);
2085#line 2085 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2086
2087#line 1798 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2088 if(_changed)
2089#line 1798 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2090 {
2091#line 1799 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2092 arrayUpdate(_imports, _index, _imp)boxptr_arrayUpdate(threadData,_imports,mmc_mk_icon(_index),_imp
)
;
2093#line 2093 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2094 }
2095 _return: OMC_LABEL_UNUSED__attribute__((unused))
2096 return _element;
2097}
2098PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveImport(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree)
2099{
2100 modelica_integer tmp1;
2101 modelica_metatype _element = NULL((void*)0);
2102 tmp1 = mmc_unbox_integer(_index)(((mmc_sint_t) (_index)) >> 1);
2103 _element = omc_NFClassTree_ClassTree_resolveImport(threadData, tmp1, _tree);
2104 /* skip box _element; NFInstNode.InstNode */
2105 return _element;
2106}
2107
2108PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveComponent(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree)
2109{
2110 modelica_metatype _element = NULL((void*)0);
2111 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2112 MMC_SO()mmc_check_stackoverflow(threadData);
2113 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2114 // _element has no default value.
2115#line 2115 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2116 { /* match expression */
2117 modelica_metatype tmp3_1;
2118 tmp3_1 = _tree;
2119 {
2120 volatile mmc_switch_type tmp3;
2121 int tmp4;
2122 tmp3 = 0;
2123 for (; tmp3 < 2; tmp3++) {
2124 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2125 case 0: {
2126 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
2127
2128 /* Pattern matching succeeded */
2129#line 1773 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2130 tmpMeta[0] = omc_Mutable_access(threadData, arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
);
2131#line 2131 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2132 goto tmp2_done;
2133 }
2134 case 1: {
2135 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,5)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((5 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
2136
2137 /* Pattern matching succeeded */
2138#line 1774 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2139 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
;
2140#line 2140 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2141 goto tmp2_done;
2142 }
2143 }
2144 goto tmp2_end;
2145 tmp2_end: ;
2146 }
2147 goto goto_1;
2148 goto_1:;
2149 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2150 goto tmp2_done;
2151 tmp2_done:;
2152 }
2153 }
2154 _element = tmpMeta[0];
2155 _return: OMC_LABEL_UNUSED__attribute__((unused))
2156 return _element;
2157}
2158PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveComponent(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree)
2159{
2160 modelica_integer tmp1;
2161 modelica_metatype _element = NULL((void*)0);
2162 tmp1 = mmc_unbox_integer(_index)(((mmc_sint_t) (_index)) >> 1);
2163 _element = omc_NFClassTree_ClassTree_resolveComponent(threadData, tmp1, _tree);
2164 /* skip box _element; NFInstNode.InstNode */
2165 return _element;
2166}
2167
2168PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveClass(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree)
2169{
2170 modelica_metatype _element = NULL((void*)0);
2171 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2172 MMC_SO()mmc_check_stackoverflow(threadData);
2173 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2174 // _element has no default value.
2175#line 2175 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2176 { /* match expression */
2177 modelica_metatype tmp3_1;
2178 tmp3_1 = _tree;
2179 {
2180 int tmp3;
2181 {
2182 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2183 case 3: {
2184
2185 /* Pattern matching succeeded */
2186#line 1760 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2187 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (3)))))),_index)
;
2188#line 2188 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2189 goto tmp2_done;
2190 }
2191 case 4: {
2192
2193 /* Pattern matching succeeded */
2194#line 1761 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2195 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (3)))))),_index)
;
2196#line 2196 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2197 goto tmp2_done;
2198 }
2199 case 5: {
2200
2201 /* Pattern matching succeeded */
2202#line 1762 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2203 tmpMeta[0] = omc_Mutable_access(threadData, arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (3)))))),_index)
);
2204#line 2204 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2205 goto tmp2_done;
2206 }
2207 case 6: {
2208
2209 /* Pattern matching succeeded */
2210#line 1763 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2211 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (3)))))),_index)
;
2212#line 2212 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2213 goto tmp2_done;
2214 }
2215 }
2216 goto tmp2_end;
2217 tmp2_end: ;
2218 }
2219 goto goto_1;
2220 goto_1:;
2221 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2222 goto tmp2_done;
2223 tmp2_done:;
2224 }
2225 }
2226 _element = tmpMeta[0];
2227 _return: OMC_LABEL_UNUSED__attribute__((unused))
2228 return _element;
2229}
2230PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveClass(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree)
2231{
2232 modelica_integer tmp1;
2233 modelica_metatype _element = NULL((void*)0);
2234 tmp1 = mmc_unbox_integer(_index)(((mmc_sint_t) (_index)) >> 1);
2235 _element = omc_NFClassTree_ClassTree_resolveClass(threadData, tmp1, _tree);
2236 /* skip box _element; NFInstNode.InstNode */
2237 return _element;
2238}
2239
2240PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveDuplicateEntriesPtr(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype _D_24in_elements)
2241{
2242 modelica_metatype _elements = NULL((void*)0);
2243 modelica_metatype _node_ptr = NULL((void*)0);
2244 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
2245 MMC_SO()mmc_check_stackoverflow(threadData);
2246 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2247 _elements = _D_24in_elements;
2248 // _node_ptr has no default value.
2249#line 1746 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2250 _node_ptr = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree);
2251#line 2251 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2252
2253#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2254 tmpMeta[0] = mmc_mk_cons(_node_ptr, _elements);
2255#line 1747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2256 _elements = tmpMeta[0];
2257#line 2257 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2258
2259#line 1749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2260 {
2261#line 1749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2262 modelica_metatype _child;
2263#line 1749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2264 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
); !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)))))
)
2265#line 1749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2266 {
2267#line 1749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2268 _child = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
2269#line 1750 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2270 _elements = omc_NFClassTree_ClassTree_resolveDuplicateEntriesPtr(threadData, _child, _tree, _elements);
2271#line 2271 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2272 }
2273 }
2274 _return: OMC_LABEL_UNUSED__attribute__((unused))
2275 return _elements;
2276}
2277
2278PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveEntryPtr(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree)
2279{
2280 modelica_metatype _element = NULL((void*)0);
2281 modelica_metatype _elems = NULL((void*)0);
2282 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2283 MMC_SO()mmc_check_stackoverflow(threadData);
2284 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2285 // _element has no default value.
2286 // _elems has no default value.
2287#line 2287 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2288 { /* match expression */
2289 modelica_metatype tmp3_1;
2290 tmp3_1 = _entry;
2291 {
2292 volatile mmc_switch_type tmp3;
2293 int tmp4;
2294 tmp3 = 0;
2295 for (; tmp3 < 2; tmp3++) {
2296 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2297 case 0: {
2298 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,0,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp2_end;
2299
2300 /* Pattern matching succeeded */
2301#line 1727 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2302 /* Pattern-matching assignment */
2303#line 1727 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2304 tmpMeta[1] = _tree;
2305#line 1727 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2306 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,7)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((7 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto goto_1;
2307#line 1727 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2308 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
2309#line 1727 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2310 _elems = tmpMeta[2];
2311#line 2311 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2312#line 1728 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2313 tmpMeta[0] = arrayGet(_elems, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2)))))nobox_arrayGet(threadData,_elems,(((mmc_sint_t) (((*(void**)(
((void*)((void**)(((void*)((char*)(_entry) - 3))) + (2)))))))
) >> 1))
;
2314#line 2314 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2315 goto tmp2_done;
2316 }
2317 case 1: {
2318 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
2319
2320 /* Pattern matching succeeded */
2321#line 1733 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2322 /* Pattern-matching assignment */
2323#line 1733 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2324 tmpMeta[1] = _tree;
2325#line 1733 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2326 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,7)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((7 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto goto_1;
2327#line 1733 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2328 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (4)))))
;
2329#line 1733 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2330 _elems = tmpMeta[2];
2331#line 2331 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2332#line 1734 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2333 tmpMeta[0] = arrayGet(_elems, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2)))))nobox_arrayGet(threadData,_elems,(((mmc_sint_t) (((*(void**)(
((void*)((void**)(((void*)((char*)(_entry) - 3))) + (2)))))))
) >> 1))
;
2334#line 2334 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2335 goto tmp2_done;
2336 }
2337 }
2338 goto tmp2_end;
2339 tmp2_end: ;
2340 }
2341 goto goto_1;
2342 goto_1:;
2343 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2344 goto tmp2_done;
2345 tmp2_done:;
2346 }
2347 }
2348 _element = tmpMeta[0];
2349 _return: OMC_LABEL_UNUSED__attribute__((unused))
2350 return _element;
2351}
2352
2353PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_resolveEntry(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_boolean *out_isImport)
2354{
2355 modelica_metatype _element = NULL((void*)0);
2356 modelica_boolean _isImport;
2357 modelica_boolean tmp1_c1 __attribute__((unused)) = 0;
2358 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
2359 MMC_SO()mmc_check_stackoverflow(threadData);
2360 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2361 // _element has no default value.
2362 // _isImport has no default value.
2363#line 1710 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2364
2365#line 1710 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2366
2367#line 2367 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2368 { /* match expression */
2369 modelica_metatype tmp4_1;
2370 tmp4_1 = _entry;
2371 {
2372 int tmp4;
2373 {
2374 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
2375 case 3: {
2376
2377 /* Pattern matching succeeded */
2378#line 1711 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2379 tmpMeta[0+0] = omc_NFClassTree_ClassTree_resolveClass(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
, _tree);
2380#line 1711 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2381 tmp1_c1 = 0;
2382#line 2382 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2383 goto tmp3_done;
2384 }
2385 case 4: {
2386
2387 /* Pattern matching succeeded */
2388#line 1712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2389 tmpMeta[0+0] = omc_NFClassTree_ClassTree_resolveComponent(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
, _tree);
2390#line 1712 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2391 tmp1_c1 = 0;
2392#line 2392 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2393 goto tmp3_done;
2394 }
2395 case 5: {
2396
2397 /* Pattern matching succeeded */
2398#line 1713 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2399 tmpMeta[0+0] = omc_NFClassTree_ClassTree_resolveImport(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
, _tree);
2400#line 1713 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2401 tmp1_c1 = 1;
2402#line 2402 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2403 goto tmp3_done;
2404 }
2405 }
2406 goto tmp3_end;
2407 tmp3_end: ;
2408 }
2409 goto goto_2;
2410 goto_2:;
2411 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2412 goto tmp3_done;
2413 tmp3_done:;
2414 }
2415 }
2416 _element = tmpMeta[0+0];
2417 _isImport = tmp1_c1;
2418 _return: OMC_LABEL_UNUSED__attribute__((unused))
2419 if (out_isImport) { *out_isImport = _isImport; }
2420 return _element;
2421}
2422PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_resolveEntry(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _tree, modelica_metatype *out_isImport)
2423{
2424 modelica_boolean _isImport;
2425 modelica_metatype _element = NULL((void*)0);
2426 _element = omc_NFClassTree_ClassTree_resolveEntry(threadData, _entry, _tree, &_isImport);
2427 /* skip box _element; NFInstNode.InstNode */
2428 if (out_isImport) { *out_isImport = mmc_mk_icon(_isImport); }
2429 return _element;
2430}
2431
2432PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addDuplicateConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name)
2433{
2434 modelica_metatype _entry = NULL((void*)0);
2435 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
2436 MMC_SO()mmc_check_stackoverflow(threadData);
2437 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2438 // _entry has no default value.
2439#line 1699 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2440 tmpMeta[0] = mmc_mk_cons(listHead((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_newEntry), 4))))boxptr_listHead(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_newEntry) - 3))) + (4)))))))
, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_oldEntry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_oldEntry) - 3)
)) + (4)))))
));
2441#line 1699 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2442 tmpMeta[1] = mmc_mk_box5(3, &NFClassTree_DuplicateTree_Entry_ENTRY__desc, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_newEntry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_newEntry) - 3)
)) + (2)))))
), mmc_mk_none()((void*)((char*)(&(mmc_none).header) + 3)), tmpMeta[0], mmc_mk_integermmc_mk_icon(1));
2443#line 1699 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2444 _entry = tmpMeta[1];
2445#line 2445 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2446 _return: OMC_LABEL_UNUSED__attribute__((unused))
2447 return _entry;
2448}
2449
2450PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addDuplicate(threadData_t *threadData, modelica_string _name, modelica_metatype _duplicateEntry, modelica_metatype _keptEntry, modelica_metatype _D_24in_duplicates)
2451{
2452 modelica_metatype _duplicates = NULL((void*)0);
2453 MMC_SO()mmc_check_stackoverflow(threadData);
2454 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2455 _duplicates = _D_24in_duplicates;
2456#line 1686 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2457 omc_Mutable_update(threadData, _duplicates, omc_NFClassTree_DuplicateTree_add(threadData, omc_Mutable_access(threadData, _duplicates), _name, omc_NFClassTree_DuplicateTree_newDuplicate(threadData, _keptEntry, _duplicateEntry), boxvar_NFClassTree_ClassTree_addDuplicateConflict((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_addDuplicateConflict
).header) + 3))
));
2458#line 2458 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2459 _return: OMC_LABEL_UNUSED__attribute__((unused))
2460 return _duplicates;
2461}
2462
2463PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addImportConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _imports)
2464{
2465 modelica_metatype _entry = NULL((void*)0);
2466 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2467 MMC_SO()mmc_check_stackoverflow(threadData);
2468 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2469 // _entry has no default value.
2470#line 2470 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2471 { /* match expression */
2472 modelica_metatype tmp3_1;modelica_metatype tmp3_2;
2473 tmp3_1 = _newEntry;
2474 tmp3_2 = _oldEntry;
2475 {
2476 modelica_metatype _imp1 = NULL((void*)0);
2477 modelica_metatype _imp2 = NULL((void*)0);
2478 volatile mmc_switch_type tmp3;
2479 int tmp4;
2480 // _imp1 has no default value.
2481 // _imp2 has no default value.
2482 tmp3 = 0;
2483 for (; tmp3 < 2; tmp3++) {
2484 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2485 case 0: {
2486 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
2487 if (mmc__uniontype__metarecord__typedef__equal(tmp3_2,2,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_2) - 3)))==(((1 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
2488
2489 /* Pattern matching succeeded */
2490#line 1646 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2491 _imp1 = arrayGet(_imports,mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_newEntry), 2)))))nobox_arrayGet(threadData,_imports,(((mmc_sint_t) (((*(void**
)(((void*)((void**)(((void*)((char*)(_newEntry) - 3))) + (2))
)))))) >> 1))
/* DAE.ASUB */;
2492#line 2492 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2493
2494#line 1647 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2495 _imp2 = arrayGet(_imports,mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_oldEntry), 2)))))nobox_arrayGet(threadData,_imports,(((mmc_sint_t) (((*(void**
)(((void*)((void**)(((void*)((char*)(_oldEntry) - 3))) + (2))
)))))) >> 1))
/* DAE.ASUB */;
2496#line 2496 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2497#line 2497 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2498 { /* match expression */
2499 modelica_metatype tmp7_1;modelica_metatype tmp7_2;
2500 tmp7_1 = _imp1;
2501 tmp7_2 = _imp2;
2502 {
2503 volatile mmc_switch_type tmp7;
2504 int tmp8;
2505 tmp7 = 0;
2506 for (; tmp7 < 4; tmp7++) {
2507 switch (MMC_SWITCH_CAST(tmp7)(tmp7)) {
2508 case 0: {
2509 if (mmc__uniontype__metarecord__typedef__equal(tmp7_1,0,3)((*(mmc_uint_t*)((void*)((char*)(tmp7_1) - 3)))==(((3 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp6_end;
2510 if (mmc__uniontype__metarecord__typedef__equal(tmp7_2,0,3)((*(mmc_uint_t*)((void*)((char*)(tmp7_2) - 3)))==(((3 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp6_end;
2511
2512 /* Pattern matching succeeded */
2513#line 1655 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2514 tmpMeta[2] = mmc_mk_box3(5, &NFImport_CONFLICTING__IMPORT__desc, _imp1, _imp2);
2515#line 1655 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2516 arrayUpdate(_imports, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_oldEntry), 2)))), tmpMeta[2])boxptr_arrayUpdate(threadData,_imports,mmc_mk_icon((((mmc_sint_t
) (((*(void**)(((void*)((void**)(((void*)((char*)(_oldEntry) -
3))) + (2)))))))) >> 1)),tmpMeta[2])
;
2517#line 2517 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2518#line 1656 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2519 tmpMeta[1] = _oldEntry;
2520#line 2520 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2521 goto tmp6_done;
2522 }
2523 case 1: {
2524 if (mmc__uniontype__metarecord__typedef__equal(tmp7_1,1,2)((*(mmc_uint_t*)((void*)((char*)(tmp7_1) - 3)))==(((2 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp6_end;
2525 if (mmc__uniontype__metarecord__typedef__equal(tmp7_2,1,2)((*(mmc_uint_t*)((void*)((char*)(tmp7_2) - 3)))==(((2 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp6_end;
2526
2527 /* Pattern matching succeeded */
2528#line 1662 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2529 tmpMeta[2] = mmc_mk_box3(5, &NFImport_CONFLICTING__IMPORT__desc, _imp1, _imp2);
2530#line 1662 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2531 arrayUpdate(_imports, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_oldEntry), 2)))), tmpMeta[2])boxptr_arrayUpdate(threadData,_imports,mmc_mk_icon((((mmc_sint_t
) (((*(void**)(((void*)((void**)(((void*)((char*)(_oldEntry) -
3))) + (2)))))))) >> 1)),tmpMeta[2])
;
2532#line 2532 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2533#line 1663 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2534 tmpMeta[1] = _oldEntry;
2535#line 2535 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2536 goto tmp6_done;
2537 }
2538 case 2: {
2539 if (mmc__uniontype__metarecord__typedef__equal(tmp7_1,0,3)((*(mmc_uint_t*)((void*)((char*)(tmp7_1) - 3)))==(((3 +1) <<
10) + (((0 +3) & 255) << 2)))
== 0) goto tmp6_end;
2540
2541 /* Pattern matching succeeded */
2542#line 1667 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2543 tmpMeta[1] = _newEntry;
2544#line 2544 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2545 goto tmp6_done;
2546 }
2547 case 3: {
2548
2549 /* Pattern matching succeeded */
2550#line 1669 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2551 tmpMeta[1] = _oldEntry;
2552#line 2552 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2553 goto tmp6_done;
2554 }
2555 }
2556 goto tmp6_end;
2557 tmp6_end: ;
2558 }
2559 goto goto_5;
2560 goto_5:;
2561 goto goto_1;
2562 goto tmp6_done;
2563 tmp6_done:;
2564 }
2565 }tmpMeta[0] = tmpMeta[1];
2566 goto tmp2_done;
2567 }
2568 case 1: {
2569
2570 /* Pattern matching succeeded */
2571#line 1675 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2572 tmpMeta[0] = _oldEntry;
2573#line 2573 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2574 goto tmp2_done;
2575 }
2576 }
2577 goto tmp2_end;
2578 tmp2_end: ;
2579 }
2580 goto goto_1;
2581 goto_1:;
2582 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2583 goto tmp2_done;
2584 tmp2_done:;
2585 }
2586 }
2587 _entry = tmpMeta[0];
2588 _return: OMC_LABEL_UNUSED__attribute__((unused))
2589 return _entry;
2590}
2591
2592static modelica_metatype closure3_NFClassTree_ClassTree_addImportConflict(threadData_t *thData, modelica_metatype closure, modelica_metatype newEntry, modelica_metatype oldEntry, modelica_string name)
2593{
2594 modelica_metatype imports = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
2595 return boxptr_NFClassTree_ClassTree_addImportConflictomc_NFClassTree_ClassTree_addImportConflict(thData, newEntry, oldEntry, name, imports);
2596}
2597PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addImport(threadData_t *threadData, modelica_metatype _imp, modelica_integer _index, modelica_metatype _D_24in_tree, modelica_metatype _imports)
2598{
2599 modelica_metatype _tree = NULL((void*)0);
2600 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
2601 MMC_SO()mmc_check_stackoverflow(threadData);
2602 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2603 _tree = _D_24in_tree;
2604#line 1629 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2605 tmpMeta[0] = mmc_mk_box2(5, &NFClassTree_LookupTree_Entry_IMPORT__desc, mmc_mk_integermmc_mk_icon(_index));
2606#line 1629 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2607 tmpMeta[1] = mmc_mk_box1(0, _imports);
2608#line 1629 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2609 _tree = omc_NFClassTree_LookupTree_add(threadData, _tree, omc_NFImport_name(threadData, _imp), tmpMeta[0], (modelica_fnptr) mmc_mk_box2(0,closure3_NFClassTree_ClassTree_addImportConflict,tmpMeta[1]));
2610#line 2610 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2611 _return: OMC_LABEL_UNUSED__attribute__((unused))
2612 return _tree;
2613}
2614PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_addImport(threadData_t *threadData, modelica_metatype _imp, modelica_metatype _index, modelica_metatype _D_24in_tree, modelica_metatype _imports)
2615{
2616 modelica_integer tmp1;
2617 modelica_metatype _tree = NULL((void*)0);
2618 tmp1 = mmc_unbox_integer(_index)(((mmc_sint_t) (_index)) >> 1);
2619 _tree = omc_NFClassTree_ClassTree_addImport(threadData, _imp, tmp1, _D_24in_tree, _imports);
2620 /* skip box _tree; NFClassTree.LookupTree.Tree */
2621 return _tree;
2622}
2623
2624PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addEnumConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _literal)
2625{
2626 modelica_metatype _entry = NULL((void*)0);
2627 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2628 MMC_SO()mmc_check_stackoverflow(threadData);
2629 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2630 // _entry has no default value.
2631#line 1618 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2632 tmpMeta[0] = mmc_mk_cons(omc_NFInstNode_InstNode_name(threadData, _literal), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
2633#line 1618 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2634 omc_Error_addSourceMessage(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)), tmpMeta[0], omc_NFInstNode_InstNode_info(threadData, _literal));
2635#line 2635 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2636
2637#line 1620 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2638 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2639#line 2639 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2640 _return: OMC_LABEL_UNUSED__attribute__((unused))
2641 return _entry;
2642}
2643
2644PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_findLocalConflictElement(threadData_t *threadData, modelica_metatype _entry, modelica_metatype _classTree)
2645{
2646 modelica_metatype _node = NULL((void*)0);
2647 modelica_metatype tmpMeta[4] __attribute__((unused)) = {0};
2648 MMC_SO()mmc_check_stackoverflow(threadData);
2649 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2650 // _node has no default value.
2651#line 2651 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2652 { /* match expression */
2653 modelica_metatype tmp3_1;
2654 tmp3_1 = _entry;
2655 {
2656 modelica_metatype _comps = NULL((void*)0);
2657 modelica_metatype _exts = NULL((void*)0);
2658 modelica_integer _i;
2659 int tmp3;
2660 // _comps has no default value.
2661 // _exts has no default value.
2662 // _i has no default value.
2663 {
2664 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2665 case 3: {
2666
2667 /* Pattern matching succeeded */
2668#line 1568 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2669 tmpMeta[0] = omc_NFClassTree_ClassTree_resolveClass(threadData, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
, _classTree);
2670#line 2670 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2671 goto tmp2_done;
2672 }
2673 case 4: {
2674 modelica_integer tmp4 = 0;
2675 modelica_integer tmp9;
2676 modelica_integer tmp10;
2677
2678 /* Pattern matching succeeded */
2679#line 1577 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2680 _i = ((modelica_integer) 0);
2681#line 2681 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2682
2683#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2684 /* Pattern-matching assignment */
2685#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2686 tmpMeta[1] = _classTree;
2687#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2688 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],0,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((6 +1)
<< 10) + (((0 +3) & 255) << 2)))
== 0) goto goto_1;
2689#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2690 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (4)))))
;
2691#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2692 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (5)))))
;
2693#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2694 _comps = tmpMeta[2];
2695#line 1578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2696 _exts = tmpMeta[3];
2697#line 2697 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2698
2699#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2700 {
2701#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2702 modelica_metatype _c;
2703#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2704 for (tmpMeta[1] = _comps, tmp10 = arrayLength(tmpMeta[1]), tmp9 = 1; tmp9 <= tmp10; tmp9++)
2705#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2706 {
2707#line 1580 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2708 _c = arrayGet(tmpMeta[1],tmp9)nobox_arrayGet(threadData,tmpMeta[1],tmp9);
2709#line 2709 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2710 { /* match expression */
2711 modelica_metatype tmp7_1;
2712 tmp7_1 = _c;
2713 {
2714 volatile mmc_switch_type tmp7;
2715 int tmp8;
2716 tmp7 = 0;
2717 for (; tmp7 < 2; tmp7++) {
2718 switch (MMC_SWITCH_CAST(tmp7)(tmp7)) {
2719 case 0: {
2720 if (mmc__uniontype__metarecord__typedef__equal(tmp7_1,1,5)((*(mmc_uint_t*)((void*)((char*)(tmp7_1) - 3)))==(((5 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp6_end;
2721
2722 /* Pattern matching succeeded */
2723#line 1582 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2724 tmp4 = ((modelica_integer) 1) + _i;
2725#line 2725 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2726 goto tmp6_done;
2727 }
2728 case 1: {
2729 if (mmc__uniontype__metarecord__typedef__equal(tmp7_1,3,1)((*(mmc_uint_t*)((void*)((char*)(tmp7_1) - 3)))==(((1 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp6_end;
2730
2731 /* Pattern matching succeeded */
2732#line 1585 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2733 omc_NFClassTree_ClassTree_countInheritedElements(threadData, arrayGet(_exts,mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 2)))))nobox_arrayGet(threadData,_exts,(((mmc_sint_t) (((*(void**)((
(void*)((void**)(((void*)((char*)(_c) - 3))) + (2)))))))) >>
1))
/* DAE.ASUB */, ((modelica_integer) 0), _i ,&_i);
2734#line 2734 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2735#line 1586 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2736 tmp4 = _i;
2737#line 2737 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2738 goto tmp6_done;
2739 }
2740 }
2741 goto tmp6_end;
2742 tmp6_end: ;
2743 }
2744 goto goto_5;
2745 goto_5:;
2746 goto goto_1;
2747 goto tmp6_done;
2748 tmp6_done:;
2749 }
2750 }
2751 _i = tmp4;
2752
2753#line 1590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2754 if((_i == mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
))
2755#line 1590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2756 {
2757#line 1591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2758 _node = _c;
2759#line 2759 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2760
2761#line 1592 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2762 break;
2763#line 2763 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2764 }
2765 }
2766 }
2767
2768#line 1597 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2769 omc_Error_assertion(threadData, (_i == mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
), _OMC_LIT21((void*)((char*)(&(_OMC_LIT_STRUCT21).header) + 3)), _OMC_LIT23((void*)((char*)(&(_OMC_LIT_STRUCT23).header) + 3)));
2770#line 2770 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2771#line 1598 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2772 tmpMeta[0] = _node;
2773#line 2773 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2774 goto tmp2_done;
2775 }
2776 default:
2777 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
2778
2779 /* Pattern matching succeeded */
2780#line 1603 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2781 omc_Error_assertion(threadData, 0, _OMC_LIT24((void*)((char*)(&(_OMC_LIT_STRUCT24).header) + 3)), _OMC_LIT25((void*)((char*)(&(_OMC_LIT_STRUCT25).header) + 3)));
2782#line 2782 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2783#line 1604 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2784 goto goto_1;
2785#line 2785 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2786 goto tmp2_done;
2787 }
2788 }
2789 goto tmp2_end;
2790 tmp2_end: ;
2791 }
2792 goto goto_1;
2793 goto_1:;
2794 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2795 goto tmp2_done;
2796 tmp2_done:;
2797 }
2798 }
2799 _node = tmpMeta[0];
2800 _return: OMC_LABEL_UNUSED__attribute__((unused))
2801 return _node;
2802}
2803
2804PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addLocalElementConflict(threadData_t *threadData, modelica_metatype _newEntry, modelica_metatype _oldEntry, modelica_string _name, modelica_metatype _classTree)
2805{
2806 modelica_metatype _entry = NULL((void*)0);
2807 modelica_metatype _n1 = NULL((void*)0);
2808 modelica_metatype _n2 = NULL((void*)0);
2809 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
2810 MMC_SO()mmc_check_stackoverflow(threadData);
2811 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2812 // _entry has no default value.
2813 // _n1 has no default value.
2814 // _n2 has no default value.
2815#line 2815 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2816 { /* match expression */
2817 modelica_metatype tmp3_1;
2818 tmp3_1 = _oldEntry;
2819 {
2820 volatile mmc_switch_type tmp3;
2821 int tmp4;
2822 tmp3 = 0;
2823 for (; tmp3 < 2; tmp3++) {
2824 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
2825 case 0: {
2826 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
2827
2828 /* Pattern matching succeeded */
2829#line 1541 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2830 tmpMeta[0] = _newEntry;
2831#line 2831 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2832 goto tmp2_done;
2833 }
2834 case 1: {
2835
2836 /* Pattern matching succeeded */
2837#line 1545 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2838 _n1 = omc_NFClassTree_ClassTree_findLocalConflictElement(threadData, _newEntry, _classTree);
2839#line 2839 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2840
2841#line 1546 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2842 _n2 = omc_NFClassTree_ClassTree_findLocalConflictElement(threadData, _oldEntry, _classTree);
2843#line 2843 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2844
2845#line 1548 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2846 tmpMeta[1] = mmc_mk_cons(_name, MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
2847#line 1548 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2848 tmpMeta[2] = mmc_mk_cons(omc_NFInstNode_InstNode_info(threadData, _n2), mmc_mk_cons(omc_NFInstNode_InstNode_info(threadData, _n1), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3))));
2849#line 1548 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2850 omc_Error_addMultiSourceMessage(threadData, _OMC_LIT20((void*)((char*)(&(_OMC_LIT_STRUCT20).header) + 3)), tmpMeta[1], tmpMeta[2]);
2851#line 2851 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2852#line 1550 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2853 goto goto_1;
2854#line 2854 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2855 goto tmp2_done;
2856 }
2857 }
2858 goto tmp2_end;
2859 tmp2_end: ;
2860 }
2861 goto goto_1;
2862 goto_1:;
2863 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2864 goto tmp2_done;
2865 tmp2_done:;
2866 }
2867 }
2868 _entry = tmpMeta[0];
2869 _return: OMC_LABEL_UNUSED__attribute__((unused))
2870 return _entry;
2871}
2872
2873static modelica_metatype closure4_NFClassTree_ClassTree_addLocalElementConflict(threadData_t *thData, modelica_metatype closure, modelica_metatype newEntry, modelica_metatype oldEntry, modelica_string name)
2874{
2875 modelica_metatype classTree = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
2876 return boxptr_NFClassTree_ClassTree_addLocalElementConflictomc_NFClassTree_ClassTree_addLocalElementConflict(thData, newEntry, oldEntry, name, classTree);
2877}
2878PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_addLocalElement(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _classTree, modelica_metatype _D_24in_tree)
2879{
2880 modelica_metatype _tree = NULL((void*)0);
2881 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2882 MMC_SO()mmc_check_stackoverflow(threadData);
2883 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2884 _tree = _D_24in_tree;
2885#line 1526 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2886 tmpMeta[0] = mmc_mk_box1(0, _classTree);
2887#line 1526 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2888 _tree = omc_NFClassTree_LookupTree_add(threadData, _tree, _name, _entry, (modelica_fnptr) mmc_mk_box2(0,closure4_NFClassTree_ClassTree_addLocalElementConflict,tmpMeta[0]));
2889#line 2889 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2890 _return: OMC_LABEL_UNUSED__attribute__((unused))
2891 return _tree;
2892}
2893
2894PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_lookupTree(threadData_t *threadData, modelica_metatype _ctree)
2895{
2896 modelica_metatype _ltree = NULL((void*)0);
2897 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2898 MMC_SO()mmc_check_stackoverflow(threadData);
2899 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2900 // _ltree has no default value.
2901#line 2901 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2902 { /* match expression */
2903 modelica_metatype tmp3_1;
2904 tmp3_1 = _ctree;
2905 {
2906 int tmp3;
2907 {
2908 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2909 case 3: {
2910
2911 /* Pattern matching succeeded */
2912#line 1513 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2913 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_ctree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_ctree) - 3))) +
(2)))))
);
2914#line 2914 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2915 goto tmp2_done;
2916 }
2917 case 4: {
2918
2919 /* Pattern matching succeeded */
2920#line 1514 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2921 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_ctree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_ctree) - 3))) +
(2)))))
);
2922#line 2922 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2923 goto tmp2_done;
2924 }
2925 case 5: {
2926
2927 /* Pattern matching succeeded */
2928#line 1515 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2929 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_ctree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_ctree) - 3))) +
(2)))))
);
2930#line 2930 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2931 goto tmp2_done;
2932 }
2933 case 6: {
2934
2935 /* Pattern matching succeeded */
2936#line 1516 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2937 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_ctree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_ctree) - 3))) +
(2)))))
);
2938#line 2938 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2939 goto tmp2_done;
2940 }
2941 }
2942 goto tmp2_end;
2943 tmp2_end: ;
2944 }
2945 goto goto_1;
2946 goto_1:;
2947 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
2948 goto tmp2_done;
2949 tmp2_done:;
2950 }
2951 }
2952 _ltree = tmpMeta[0];
2953 _return: OMC_LABEL_UNUSED__attribute__((unused))
2954 return _ltree;
2955}
2956
2957PROTECTED_FUNCTION_STATIC modelica_metatype omc_NFClassTree_ClassTree_getDuplicates(threadData_t *threadData, modelica_metatype _tree)
2958{
2959 modelica_metatype _duplicates = NULL((void*)0);
2960 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
2961 MMC_SO()mmc_check_stackoverflow(threadData);
2962 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
2963 // _duplicates has no default value.
2964#line 2964 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2965 { /* match expression */
2966 modelica_metatype tmp3_1;
2967 tmp3_1 = _tree;
2968 {
2969 int tmp3;
2970 {
2971 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
2972 case 3: {
2973
2974 /* Pattern matching succeeded */
2975#line 1501 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2976 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(7)))))
);
2977#line 2977 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2978 goto tmp2_done;
2979 }
2980 case 4: {
2981
2982 /* Pattern matching succeeded */
2983#line 1502 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2984 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(7)))))
);
2985#line 2985 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2986 goto tmp2_done;
2987 }
2988 case 5: {
2989
2990 /* Pattern matching succeeded */
2991#line 1503 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
2992 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
);
2993#line 2993 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
2994 goto tmp2_done;
2995 }
2996 case 6: {
2997
2998 /* Pattern matching succeeded */
2999#line 1504 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3000 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(6)))))
);
3001#line 3001 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3002 goto tmp2_done;
3003 }
3004 }
3005 goto tmp2_end;
3006 tmp2_end: ;
3007 }
3008 goto goto_1;
3009 goto_1:;
3010 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3011 goto tmp2_done;
3012 tmp2_done:;
3013 }
3014 }
3015 _duplicates = tmpMeta[0];
3016 _return: OMC_LABEL_UNUSED__attribute__((unused))
3017 return _duplicates;
3018}
3019
3020PROTECTED_FUNCTION_STATIC modelica_integer omc_NFClassTree_ClassTree_instExtendsComps(threadData_t *threadData, modelica_metatype _extNode, modelica_metatype _comps, modelica_integer _D_24in_index)
3021{
3022 modelica_integer _index;
3023 modelica_metatype _ext_comps_ptrs = NULL((void*)0);
3024 modelica_metatype _ext_comps = NULL((void*)0);
3025 modelica_integer _comp_count;
3026 modelica_metatype _ext_comp = NULL((void*)0);
3027 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3028 MMC_SO()mmc_check_stackoverflow(threadData);
3029 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3030 _index = _D_24in_index;
3031 // _ext_comps_ptrs has no default value.
3032 // _ext_comps has no default value.
3033 // _comp_count has no default value.
3034 // _ext_comp has no default value.
3035#line 3035 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3036 { /* match expression */
3037 modelica_metatype tmp3_1;
3038 tmp3_1 = omc_NFClass_Class_classTree(threadData, omc_NFInstNode_InstNode_getClass(threadData, _extNode));
3039 {
3040 int tmp3;
3041 {
3042 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
3043 case 5: {
3044 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
3045 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
3046
3047 _ext_comps_ptrs = tmpMeta[0];
3048 /* Pattern matching succeeded */
3049#line 1469 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3050 _comp_count = arrayLength(_ext_comps_ptrs);
3051#line 3051 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3052
3053#line 1471 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3054 if((_comp_count > ((modelica_integer) 0)))
3055#line 1471 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3056 {
3057#line 1472 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3058 omc_Array_copyRange(threadData, _ext_comps_ptrs, _comps, ((modelica_integer) 1), _comp_count, _index);
3059#line 3059 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3060
3061#line 1473 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3062 _index = _index + _comp_count;
3063#line 3063 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3064 }
3065#line 3065 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3066 goto tmp2_done;
3067 }
3068 case 6: {
3069 modelica_integer tmp4;
3070 modelica_integer tmp5;
3071 modelica_integer tmp6;
3072 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,5)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((5 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
3073 tmpMeta[0] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(4)))))
;
3074
3075 _ext_comps = tmpMeta[0];
3076 /* Pattern matching succeeded */
3077#line 1480 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3078 _comp_count = arrayLength(_ext_comps);
3079#line 3079 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3080
3081#line 1482 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3082 if((_comp_count > ((modelica_integer) 0)))
3083#line 1482 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3084 {
3085#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3086 tmp4 = _index; tmp5 = 1; tmp6 = ((modelica_integer) -1) + _index + _comp_count;
3087#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3088 if(!(((tmp5 > 0) && (tmp4 > tmp6)) || ((tmp5 < 0) && (tmp4 < tmp6))))
3089#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3090 {
3091#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3092 modelica_integer _i;
3093#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3094 for(_i = _index; in_range_integer(_i, tmp4, tmp6); _i += tmp5)
3095#line 1483 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3096 {
3097#line 1484 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3098 arrayUpdate(_comps, _i, omc_Mutable_create(threadData, arrayGet(_ext_comps,_i) /* DAE.ASUB */))boxptr_arrayUpdate(threadData,_comps,mmc_mk_icon(_i),omc_Mutable_create
(threadData, nobox_arrayGet(threadData,_ext_comps,_i) ))
;
3099#line 3099 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3100 }
3101 }
3102
3103#line 1487 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3104 _index = _index + _comp_count;
3105#line 3105 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3106 }
3107#line 3107 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3108 goto tmp2_done;
3109 }
3110 default:
3111 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
3112
3113 /* Pattern matching succeeded */
3114#line 3114 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3115 goto tmp2_done;
3116 }
3117 }
3118 goto tmp2_end;
3119 tmp2_end: ;
3120 }
3121 goto goto_1;
3122 goto_1:;
3123 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3124 goto tmp2_done;
3125 tmp2_done:;
3126 }
3127 }
3128 ;
3129 _return: OMC_LABEL_UNUSED__attribute__((unused))
3130 return _index;
3131}
3132PROTECTED_FUNCTION_STATIC modelica_metatype boxptr_NFClassTree_ClassTree_instExtendsComps(threadData_t *threadData, modelica_metatype _extNode, modelica_metatype _comps, modelica_metatype _D_24in_index)
3133{
3134 modelica_integer tmp1;
3135 modelica_integer _index;
3136 modelica_metatype out_index;
3137 tmp1 = mmc_unbox_integer(_D_24in_index)(((mmc_sint_t) (_D_24in_index)) >> 1);
3138 _index = omc_NFClassTree_ClassTree_instExtendsComps(threadData, _extNode, _comps, tmp1);
3139 out_index = mmc_mk_icon(_index);
3140 return out_index;
3141}
3142
3143DLLExport
3144modelica_boolean omc_NFClassTree_ClassTree_isEmptyTree(threadData_t *threadData, modelica_metatype _tree)
3145{
3146 modelica_boolean _isEmpty;
3147 modelica_boolean tmp1 = 0;
3148 MMC_SO()mmc_check_stackoverflow(threadData);
3149 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3150 // _isEmpty has no default value.
3151#line 3151 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3152 { /* match expression */
3153 modelica_metatype tmp4_1;
3154 tmp4_1 = _tree;
3155 {
3156 volatile mmc_switch_type tmp4;
3157 int tmp5;
3158 tmp4 = 0;
3159 for (; tmp4 < 2; tmp4++) {
3160 switch (MMC_SWITCH_CAST(tmp4)(tmp4)) {
3161 case 0: {
3162 if (mmc__uniontype__metarecord__typedef__equal(tmp4_1,4,0)((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))==(((0 +1) <<
10) + (((4 +3) & 255) << 2)))
== 0) goto tmp3_end;
3163 /* Pattern matching succeeded */
3164#line 1449 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3165 tmp1 = 1;
3166#line 3166 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3167 goto tmp3_done;
3168 }
3169 case 1: {
3170
3171 /* Pattern matching succeeded */
3172#line 1450 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3173 tmp1 = 0;
3174#line 3174 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3175 goto tmp3_done;
3176 }
3177 }
3178 goto tmp3_end;
3179 tmp3_end: ;
3180 }
3181 goto goto_2;
3182 goto_2:;
3183 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3184 goto tmp3_done;
3185 tmp3_done:;
3186 }
3187 }
3188 _isEmpty = tmp1;
3189 _return: OMC_LABEL_UNUSED__attribute__((unused))
3190 return _isEmpty;
3191}
3192modelica_metatype boxptr_NFClassTree_ClassTree_isEmptyTree(threadData_t *threadData, modelica_metatype _tree)
3193{
3194 modelica_boolean _isEmpty;
3195 modelica_metatype out_isEmpty;
3196 _isEmpty = omc_NFClassTree_ClassTree_isEmptyTree(threadData, _tree);
3197 out_isEmpty = mmc_mk_icon(_isEmpty);
3198 return out_isEmpty;
3199}
3200
3201DLLExport
3202modelica_metatype omc_NFClassTree_ClassTree_getComponents(threadData_t *threadData, modelica_metatype _tree)
3203{
3204 modelica_metatype _comps = NULL((void*)0);
3205 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3206 MMC_SO()mmc_check_stackoverflow(threadData);
3207 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3208 // _comps has no default value.
3209#line 3209 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3210 { /* match expression */
3211 modelica_metatype tmp3_1;
3212 tmp3_1 = _tree;
3213 {
3214 int tmp3;
3215 {
3216 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
3217 case 3: {
3218
3219 /* Pattern matching succeeded */
3220#line 1438 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3221 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
);
3222#line 3222 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3223 goto tmp2_done;
3224 }
3225 case 4: {
3226
3227 /* Pattern matching succeeded */
3228#line 1439 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3229 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
);
3230#line 3230 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3231 goto tmp2_done;
3232 }
3233 case 6: {
3234
3235 /* Pattern matching succeeded */
3236#line 1440 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3237 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
);
3238#line 3238 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3239 goto tmp2_done;
3240 }
3241 }
3242 goto tmp2_end;
3243 tmp2_end: ;
3244 }
3245 goto goto_1;
3246 goto_1:;
3247 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3248 goto tmp2_done;
3249 tmp2_done:;
3250 }
3251 }
3252 _comps = tmpMeta[0];
3253 _return: OMC_LABEL_UNUSED__attribute__((unused))
3254 return _comps;
3255}
3256
3257DLLExport
3258modelica_metatype omc_NFClassTree_ClassTree_getExtends(threadData_t *threadData, modelica_metatype _tree)
3259{
3260 modelica_metatype _exts = NULL((void*)0);
3261 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3262 MMC_SO()mmc_check_stackoverflow(threadData);
3263 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3264 // _exts has no default value.
3265#line 3265 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3266 { /* match expression */
3267 modelica_metatype tmp3_1;
3268 tmp3_1 = _tree;
3269 {
3270 int tmp3;
3271 {
3272 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
3273 case 3: {
3274
3275 /* Pattern matching succeeded */
3276#line 1427 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3277 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
);
3278#line 3278 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3279 goto tmp2_done;
3280 }
3281 case 4: {
3282
3283 /* Pattern matching succeeded */
3284#line 1428 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3285 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
);
3286#line 3286 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3287 goto tmp2_done;
3288 }
3289 case 5: {
3290
3291 /* Pattern matching succeeded */
3292#line 1429 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3293 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(6)))))
);
3294#line 3294 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3295 goto tmp2_done;
3296 }
3297 }
3298 goto tmp2_end;
3299 tmp2_end: ;
3300 }
3301 goto goto_1;
3302 goto_1:;
3303 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3304 goto tmp2_done;
3305 tmp2_done:;
3306 }
3307 }
3308 _exts = tmpMeta[0];
3309 _return: OMC_LABEL_UNUSED__attribute__((unused))
3310 return _exts;
3311}
3312
3313DLLExport
3314modelica_metatype omc_NFClassTree_ClassTree_getClasses(threadData_t *threadData, modelica_metatype _tree)
3315{
3316 modelica_metatype _clss = NULL((void*)0);
3317 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3318 MMC_SO()mmc_check_stackoverflow(threadData);
3319 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3320 // _clss has no default value.
3321#line 3321 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3322 { /* match expression */
3323 modelica_metatype tmp3_1;
3324 tmp3_1 = _tree;
3325 {
3326 int tmp3;
3327 {
3328 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
3329 case 3: {
3330
3331 /* Pattern matching succeeded */
3332#line 1416 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3333 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
);
3334#line 3334 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3335 goto tmp2_done;
3336 }
3337 case 4: {
3338
3339 /* Pattern matching succeeded */
3340#line 1417 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3341 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
);
3342#line 3342 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3343 goto tmp2_done;
3344 }
3345 case 6: {
3346
3347 /* Pattern matching succeeded */
3348#line 1418 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3349 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
);
3350#line 3350 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3351 goto tmp2_done;
3352 }
3353 }
3354 goto tmp2_end;
3355 tmp2_end: ;
3356 }
3357 goto goto_1;
3358 goto_1:;
3359 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3360 goto tmp2_done;
3361 tmp2_done:;
3362 }
3363 }
3364 _clss = tmpMeta[0];
3365 _return: OMC_LABEL_UNUSED__attribute__((unused))
3366 return _clss;
3367}
3368
3369DLLExport
3370modelica_metatype omc_NFClassTree_ClassTree_enumerateComponents2(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _comps, modelica_metatype _D_24in_components)
3371{
3372 modelica_metatype _components = NULL((void*)0);
3373 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
3374 MMC_SO()mmc_check_stackoverflow(threadData);
3375 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3376 _components = _D_24in_components;
3377#line 3377 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3378 { /* match expression */
3379 modelica_metatype tmp3_1;
3380 tmp3_1 = _entry;
3381 {
3382 volatile mmc_switch_type tmp3;
3383 int tmp4;
3384 tmp3 = 0;
3385 for (; tmp3 < 2; tmp3++) {
3386 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3387 case 0: {
3388 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
3389
3390 /* Pattern matching succeeded */
3391#line 1403 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3392 tmpMeta[0] = mmc_mk_cons(arrayGet(_comps,mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2)))))nobox_arrayGet(threadData,_comps,(((mmc_sint_t) (((*(void**)(
((void*)((void**)(((void*)((char*)(_entry) - 3))) + (2)))))))
) >> 1))
/* DAE.ASUB */, _components);
3393#line 1403 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3394 _components = tmpMeta[0];
3395#line 3395 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3396#line 3396 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3397 goto tmp2_done;
3398 }
3399 case 1: {
3400
3401 /* Pattern matching succeeded */
3402#line 3402 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3403 goto tmp2_done;
3404 }
3405 }
3406 goto tmp2_end;
3407 tmp2_end: ;
3408 }
3409 goto goto_1;
3410 goto_1:;
3411 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3412 goto tmp2_done;
3413 tmp2_done:;
3414 }
3415 }
3416 ;
3417 _return: OMC_LABEL_UNUSED__attribute__((unused))
3418 return _components;
3419}
3420
3421static modelica_metatype closure5_NFClassTree_ClassTree_enumerateComponents2(threadData_t *thData, modelica_metatype closure, modelica_string name, modelica_metatype entry, modelica_metatype $in_components)
3422{
3423 modelica_metatype comps = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
3424 return boxptr_NFClassTree_ClassTree_enumerateComponents2omc_NFClassTree_ClassTree_enumerateComponents2(thData, name, entry, comps, $in_components);
3425}
3426DLLExport
3427modelica_metatype omc_NFClassTree_ClassTree_enumerateComponents(threadData_t *threadData, modelica_metatype _tree)
3428{
3429 modelica_metatype _components = NULL((void*)0);
3430 modelica_metatype _ltree = NULL((void*)0);
3431 modelica_metatype _comps = NULL((void*)0);
3432 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
3433 MMC_SO()mmc_check_stackoverflow(threadData);
3434 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3435 // _components has no default value.
3436 // _ltree has no default value.
3437 // _comps has no default value.
3438#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3439 /* Pattern-matching assignment */
3440#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3441 tmpMeta[0] = _tree;
3442#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3443 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],3,5)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((5 +1)
<< 10) + (((3 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3444#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3445 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
3446#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3447 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (4)))))
;
3448#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3449 _ltree = tmpMeta[1];
3450#line 1390 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3451 _comps = tmpMeta[2];
3452#line 3452 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3453
3454#line 1391 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3455 tmpMeta[0] = mmc_mk_box1(0, _comps);
3456#line 1391 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3457 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
3458#line 1391 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3459 _components = omc_NFClassTree_LookupTree_fold(threadData, _ltree, (modelica_fnptr) mmc_mk_box2(0,closure5_NFClassTree_ClassTree_enumerateComponents2,tmpMeta[0]), tmpMeta[1]);
3460#line 3460 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3461 _return: OMC_LABEL_UNUSED__attribute__((unused))
3462 return _components;
3463}
3464
3465DLLExport
3466modelica_metatype omc_NFClassTree_ClassTree_setClassExtends(threadData_t *threadData, modelica_metatype _extNode, modelica_metatype _D_24in_tree)
3467{
3468 modelica_metatype _tree = NULL((void*)0);
3469 MMC_SO()mmc_check_stackoverflow(threadData);
3470 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3471 _tree = _D_24in_tree;
3472#line 1380 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3473 arrayUpdate(omc_NFClassTree_ClassTree_getExtends(threadData, _tree), ((modelica_integer) 1), _extNode)boxptr_arrayUpdate(threadData,omc_NFClassTree_ClassTree_getExtends
(threadData, _tree),mmc_mk_icon(((modelica_integer) 1)),_extNode
)
;
3474#line 3474 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3475 _return: OMC_LABEL_UNUSED__attribute__((unused))
3476 return _tree;
3477}
3478
3479DLLExport
3480modelica_metatype omc_NFClassTree_ClassTree_getRedeclaredNode(threadData_t *threadData, modelica_string _name, modelica_metatype _tree)
3481{
3482 modelica_metatype _node = NULL((void*)0);
3483 modelica_metatype _entry = NULL((void*)0);
3484 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
3485 MMC_SO()mmc_check_stackoverflow(threadData);
3486 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3487 // _node has no default value.
3488 // _entry has no default value.
3489#line 3489 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3490 { /* matchcontinue expression */
3491 {
3492 volatile mmc_switch_type tmp3;
3493 int tmp4;
3494 tmp3 = 0;
3495 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) {
3496 tmp2_top:
3497 threadData->mmc_jumper = &new_mmc_jumper;
3498 for (; tmp3 < 2; tmp3++) {
3499 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3500 case 0: {
3501 /* Pattern matching succeeded */
3502#line 1363 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3503 _entry = omc_NFClassTree_DuplicateTree_get(threadData, omc_NFClassTree_ClassTree_getDuplicates(threadData, _tree), _name);
3504#line 3504 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3505
3506#line 1364 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3507 _entry = listHead((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))))boxptr_listHead(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_entry) - 3))) + (4)))))))
;
3508#line 3508 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3509
3510#line 1366 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3511 if(isSome((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 3))))(0==((((((*(mmc_uint_t*)((void*)((char*)(((*(void**)(((void*)
((void**)(((void*)((char*)(_entry) - 3))) + (3))))))) - 3))))
& (7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(((*(void
**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) + (3)))
)))) - 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char
*)(((*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3
))) + (3))))))) - 3)))) >> 10)) ? 0 : 1)
)
3512#line 1366 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3513 {
3514#line 1367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3515 /* Pattern-matching assignment */
3516#line 1367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3517 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(3)))))
);
3518#line 1367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3519 if (optionNone(tmpMeta[0])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[0]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_1;
3520#line 1367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3521 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
3522#line 1367 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3523 _node = tmpMeta[1];
3524#line 3524 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3525 }
3526 else
3527 {
3528#line 1369 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3529 _node = omc_NFClassTree_ClassTree_resolveEntry(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(2)))))
), _tree, NULL((void*)0));
3530#line 3530 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3531 }
3532#line 3532 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3533 goto tmp2_done;
3534 }
3535 case 1: {
3536 /* Pattern matching succeeded */
3537#line 1372 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3538 tmpMeta[0] = stringAppend(_OMC_LIT26((void*)((char*)(&(_OMC_LIT_STRUCT26).header) + 3)),_name);
3539#line 1372 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3540 omc_Error_assertion(threadData, 0, tmpMeta[0], _OMC_LIT27((void*)((char*)(&(_OMC_LIT_STRUCT27).header) + 3)));
3541#line 3541 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3542#line 3542 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3543 goto tmp2_done;
3544 }
3545 }
3546 goto tmp2_end;
3547 tmp2_end: ;
3548 }
3549 goto goto_1;
3550 tmp2_done:
3551 (void)tmp3;
3552 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
3553 goto tmp2_done2;
3554 goto_1:;
3555 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
3556 if (++tmp3 < 2) {
3557 goto tmp2_top;
3558 }
3559 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3560 tmp2_done2:;
3561 }
3562 }
3563 ;
3564 _return: OMC_LABEL_UNUSED__attribute__((unused))
3565 return _node;
3566}
3567
3568DLLExport
3569modelica_boolean omc_NFClassTree_ClassTree_isIdentical(threadData_t *threadData, modelica_metatype _tree1, modelica_metatype _tree2)
3570{
3571 modelica_boolean _identical;
3572 MMC_SO()mmc_check_stackoverflow(threadData);
3573 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3574 // _identical has no default value.
3575#line 1352 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3576 _identical = 1;
3577#line 3577 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3578 _return: OMC_LABEL_UNUSED__attribute__((unused))
3579 return _identical;
3580}
3581modelica_metatype boxptr_NFClassTree_ClassTree_isIdentical(threadData_t *threadData, modelica_metatype _tree1, modelica_metatype _tree2)
3582{
3583 modelica_boolean _identical;
3584 modelica_metatype out_identical;
3585 _identical = omc_NFClassTree_ClassTree_isIdentical(threadData, _tree1, _tree2);
3586 out_identical = mmc_mk_icon(_identical);
3587 return out_identical;
3588}
3589
3590DLLExport
3591modelica_metatype omc_NFClassTree_ClassTree_checkDuplicates2(threadData_t *threadData, modelica_string _name, modelica_metatype _entry, modelica_metatype _D_24in_tree)
3592{
3593 modelica_metatype _tree = NULL((void*)0);
3594 modelica_metatype _kept = NULL((void*)0);
3595 modelica_metatype _dup = NULL((void*)0);
3596 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
3597 MMC_SO()mmc_check_stackoverflow(threadData);
3598 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3599 _tree = _D_24in_tree;
3600 // _kept has no default value.
3601 // _dup has no default value.
3602#line 1327 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3603 /* Pattern-matching assignment */
3604#line 1327 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3605 tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(3)))))
);
3606#line 1327 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3607 if (optionNone(tmpMeta[0])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[0]) - 3)))) >> 10)) ? 1 : 0)
) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3608#line 1327 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3609 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
3610#line 1327 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3611 _kept = tmpMeta[1];
3612#line 3612 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3613
3614#line 3614 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3615 { /* match expression */
3616 modelica_metatype tmp3_1;
3617 tmp3_1 = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(5)))))
);
3618 {
3619 volatile mmc_switch_type tmp3;
3620 int tmp4;
3621 tmp3 = 0;
3622 for (; tmp3 < 2; tmp3++) {
3623 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3624 case 0: {
3625 modelica_integer tmp5;
3626 tmp5 = mmc_unbox_integer(tmp3_1)(((mmc_sint_t) (tmp3_1)) >> 1);
3627 if (2 != tmp5) goto tmp2_end;
3628 /* Pattern matching succeeded */
3629#line 3629 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3630 goto tmp2_done;
3631 }
3632 case 1: {
3633
3634 /* Pattern matching succeeded */
3635#line 1338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3636 {
3637#line 1338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3638 modelica_metatype _c;
3639#line 1338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3640 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_entry) - 3))) +
(4)))))
); !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)))))
)
3641#line 1338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3642 {
3643#line 1338 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3644 _c = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
3645#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3646 /* Pattern-matching assignment */
3647#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3648 tmpMeta[1] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_c), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_c) - 3))) + (3
)))))
);
3649#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3650 if (optionNone(tmpMeta[1])(0==((((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))) &
(7)) == 5)) ? ((((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1])
- 3)))) >> (3+3))) : (((*(mmc_uint_t*)((void*)((char*)
(tmpMeta[1]) - 3)))) >> 10)) ? 1 : 0)
) goto goto_1;
3651#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3652 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 1))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (1)))))
;
3653#line 1339 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3654 _dup = tmpMeta[2];
3655#line 3655 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3656
3657#line 1340 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3658 omc_NFInstNode_InstNode_checkIdentical(threadData, _kept, _dup);
3659#line 3659 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3660 }
3661 }
3662#line 3662 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3663 goto tmp2_done;
3664 }
3665 }
3666 goto tmp2_end;
3667 tmp2_end: ;
3668 }
3669 goto goto_1;
3670 goto_1:;
3671 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3672 goto tmp2_done;
3673 tmp2_done:;
3674 }
3675 }
3676 ;
3677 _return: OMC_LABEL_UNUSED__attribute__((unused))
3678 return _tree;
3679}
3680
3681DLLExport
3682void omc_NFClassTree_ClassTree_checkDuplicates(threadData_t *threadData, modelica_metatype _tree)
3683{
3684 MMC_SO()mmc_check_stackoverflow(threadData);
3685 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3686#line 3686 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3687 { /* match expression */
3688 modelica_metatype tmp3_1;
3689 tmp3_1 = _tree;
3690 {
3691 volatile mmc_switch_type tmp3;
3692 int tmp4;
3693 tmp3 = 0;
3694 for (; tmp3 < 2; tmp3++) {
3695 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
3696 case 0: {
3697 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
3698
3699 /* Pattern matching succeeded */
3700 /* Check guard condition after assignments */
3701 if (!(!omc_NFClassTree_DuplicateTree_isEmpty(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
)))) goto tmp2_end;
3702#line 1312 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3703 omc_NFClassTree_DuplicateTree_fold(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
), boxvar_NFClassTree_ClassTree_checkDuplicates2((void*)((char*)(&(boxvar_lit_NFClassTree_ClassTree_checkDuplicates2
).header) + 3))
, _tree);
3704#line 3704 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3705#line 3705 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3706 goto tmp2_done;
3707 }
3708 case 1: {
3709
3710 /* Pattern matching succeeded */
3711#line 3711 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3712 goto tmp2_done;
3713 }
3714 }
3715 goto tmp2_end;
3716 tmp2_end: ;
3717 }
3718 goto goto_1;
3719 goto_1:;
3720 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3721 goto tmp2_done;
3722 tmp2_done:;
3723 }
3724 }
3725 ;
3726 _return: OMC_LABEL_UNUSED__attribute__((unused))
3727 return;
3728}
3729
3730DLLExport
3731modelica_integer omc_NFClassTree_ClassTree_extendsCount(threadData_t *threadData, modelica_metatype _tree)
3732{
3733 modelica_integer _count;
3734 MMC_SO()mmc_check_stackoverflow(threadData);
3735 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3736 _count = arrayLength(omc_NFClassTree_ClassTree_getExtends(threadData, _tree));
3737 _return: OMC_LABEL_UNUSED__attribute__((unused))
3738 return _count;
3739}
3740modelica_metatype boxptr_NFClassTree_ClassTree_extendsCount(threadData_t *threadData, modelica_metatype _tree)
3741{
3742 modelica_integer _count;
3743 modelica_metatype out_count;
3744 _count = omc_NFClassTree_ClassTree_extendsCount(threadData, _tree);
3745 out_count = mmc_mk_icon(_count);
3746 return out_count;
3747}
3748
3749DLLExport
3750modelica_integer omc_NFClassTree_ClassTree_componentCount(threadData_t *threadData, modelica_metatype _tree)
3751{
3752 modelica_integer _count;
3753 modelica_integer tmp1 = 0;
3754 MMC_SO()mmc_check_stackoverflow(threadData);
3755 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3756 // _count has no default value.
3757#line 3757 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3758 { /* match expression */
3759 modelica_metatype tmp4_1;
3760 tmp4_1 = _tree;
3761 {
3762 int tmp4;
3763 {
3764 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3765 case 3: {
3766
3767 /* Pattern matching succeeded */
3768#line 1294 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3769 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
)) - arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
));
3770#line 3770 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3771 goto tmp3_done;
3772 }
3773 case 4: {
3774
3775 /* Pattern matching succeeded */
3776#line 1295 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3777 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
)) - arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
));
3778#line 3778 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3779 goto tmp3_done;
3780 }
3781 case 5: {
3782
3783 /* Pattern matching succeeded */
3784#line 1296 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3785 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
));
3786#line 3786 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3787 goto tmp3_done;
3788 }
3789 case 6: {
3790
3791 /* Pattern matching succeeded */
3792#line 1297 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3793 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
));
3794#line 3794 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3795 goto tmp3_done;
3796 }
3797 }
3798 goto tmp3_end;
3799 tmp3_end: ;
3800 }
3801 goto goto_2;
3802 goto_2:;
3803 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3804 goto tmp3_done;
3805 tmp3_done:;
3806 }
3807 }
3808 _count = tmp1;
3809 _return: OMC_LABEL_UNUSED__attribute__((unused))
3810 return _count;
3811}
3812modelica_metatype boxptr_NFClassTree_ClassTree_componentCount(threadData_t *threadData, modelica_metatype _tree)
3813{
3814 modelica_integer _count;
3815 modelica_metatype out_count;
3816 _count = omc_NFClassTree_ClassTree_componentCount(threadData, _tree);
3817 out_count = mmc_mk_icon(_count);
3818 return out_count;
3819}
3820
3821DLLExport
3822modelica_integer omc_NFClassTree_ClassTree_classCount(threadData_t *threadData, modelica_metatype _tree)
3823{
3824 modelica_integer _count;
3825 modelica_integer tmp1 = 0;
3826 MMC_SO()mmc_check_stackoverflow(threadData);
3827 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3828 // _count has no default value.
3829#line 3829 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3830 { /* match expression */
3831 modelica_metatype tmp4_1;
3832 tmp4_1 = _tree;
3833 {
3834 int tmp4;
3835 {
3836 switch (MMC_SWITCH_CAST(valueConstructor(tmp4_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp4_1) - 3)))) >> 2
) & 255))
) {
3837 case 3: {
3838
3839 /* Pattern matching succeeded */
3840#line 1282 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3841 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
3842#line 3842 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3843 goto tmp3_done;
3844 }
3845 case 4: {
3846
3847 /* Pattern matching succeeded */
3848#line 1283 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3849 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
3850#line 3850 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3851 goto tmp3_done;
3852 }
3853 case 5: {
3854
3855 /* Pattern matching succeeded */
3856#line 1284 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3857 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
3858#line 3858 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3859 goto tmp3_done;
3860 }
3861 case 6: {
3862
3863 /* Pattern matching succeeded */
3864#line 1285 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3865 tmp1 = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
3866#line 3866 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3867 goto tmp3_done;
3868 }
3869 }
3870 goto tmp3_end;
3871 tmp3_end: ;
3872 }
3873 goto goto_2;
3874 goto_2:;
3875 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
3876 goto tmp3_done;
3877 tmp3_done:;
3878 }
3879 }
3880 _count = tmp1;
3881 _return: OMC_LABEL_UNUSED__attribute__((unused))
3882 return _count;
3883}
3884modelica_metatype boxptr_NFClassTree_ClassTree_classCount(threadData_t *threadData, modelica_metatype _tree)
3885{
3886 modelica_integer _count;
3887 modelica_metatype out_count;
3888 _count = omc_NFClassTree_ClassTree_classCount(threadData, _tree);
3889 out_count = mmc_mk_icon(_count);
3890 return out_count;
3891}
3892
3893DLLExport
3894modelica_metatype omc_NFClassTree_ClassTree_foldComponents(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func, modelica_metatype _D_24in_arg)
3895{
3896 modelica_metatype _arg = NULL((void*)0);
3897 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
3898 MMC_SO()mmc_check_stackoverflow(threadData);
3899 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
3900 _arg = _D_24in_arg;
3901#line 3901 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3902 { /* match expression */
3903 modelica_metatype tmp3_1;
3904 tmp3_1 = _tree;
3905 {
3906 int tmp3;
3907 {
3908 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
3909 case 3: {
3910 modelica_integer tmp4;
3911 modelica_integer tmp5;
3912
3913 /* Pattern matching succeeded */
3914#line 1243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3915 {
3916#line 1243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3917 modelica_metatype _c;
3918#line 1243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3919 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp5 = arrayLength(tmpMeta[0]), tmp4 = 1; tmp4 <= tmp5; tmp4++)
3920#line 1243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3921 {
3922#line 1243 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3923 _c = arrayGet(tmpMeta[0],tmp4)nobox_arrayGet(threadData,tmpMeta[0],tmp4);
3924#line 1244 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3925 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c, _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c, _arg);
3926#line 3926 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3927 }
3928 }
3929#line 3929 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3930 goto tmp2_done;
3931 }
3932 case 4: {
3933 modelica_integer tmp6;
3934 modelica_integer tmp7;
3935
3936 /* Pattern matching succeeded */
3937#line 1251 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3938 {
3939#line 1251 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3940 modelica_metatype _c;
3941#line 1251 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3942 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp7 = arrayLength(tmpMeta[0]), tmp6 = 1; tmp6 <= tmp7; tmp6++)
3943#line 1251 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3944 {
3945#line 1251 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3946 _c = arrayGet(tmpMeta[0],tmp6)nobox_arrayGet(threadData,tmpMeta[0],tmp6);
3947#line 1252 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3948 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c, _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c, _arg);
3949#line 3949 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3950 }
3951 }
3952#line 3952 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3953 goto tmp2_done;
3954 }
3955 case 5: {
3956 modelica_integer tmp8;
3957 modelica_integer tmp9;
3958
3959 /* Pattern matching succeeded */
3960#line 1259 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3961 {
3962#line 1259 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3963 modelica_metatype _c;
3964#line 1259 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3965 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp9 = arrayLength(tmpMeta[0]), tmp8 = 1; tmp8 <= tmp9; tmp8++)
3966#line 1259 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3967 {
3968#line 1259 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3969 _c = arrayGet(tmpMeta[0],tmp8)nobox_arrayGet(threadData,tmpMeta[0],tmp8);
3970#line 1260 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3971 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), omc_Mutable_access(threadData, _c), _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, omc_Mutable_access(threadData, _c), _arg);
3972#line 3972 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3973 }
3974 }
3975#line 3975 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3976 goto tmp2_done;
3977 }
3978 case 6: {
3979 modelica_integer tmp10;
3980 modelica_integer tmp11;
3981
3982 /* Pattern matching succeeded */
3983#line 1267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3984 {
3985#line 1267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3986 modelica_metatype _c;
3987#line 1267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3988 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp11 = arrayLength(tmpMeta[0]), tmp10 = 1; tmp10 <= tmp11; tmp10++)
3989#line 1267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3990 {
3991#line 1267 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3992 _c = arrayGet(tmpMeta[0],tmp10)nobox_arrayGet(threadData,tmpMeta[0],tmp10);
3993#line 1268 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
3994 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c, _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c, _arg);
3995#line 3995 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3996 }
3997 }
3998#line 3998 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
3999 goto tmp2_done;
4000 }
4001 default:
4002 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
4003
4004 /* Pattern matching succeeded */
4005#line 4005 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4006 goto tmp2_done;
4007 }
4008 }
4009 goto tmp2_end;
4010 tmp2_end: ;
4011 }
4012 goto goto_1;
4013 goto_1:;
4014 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4015 goto tmp2_done;
4016 tmp2_done:;
4017 }
4018 }
4019 ;
4020 _return: OMC_LABEL_UNUSED__attribute__((unused))
4021 return _arg;
4022}
4023
4024DLLExport
4025void omc_NFClassTree_ClassTree_applyComponents(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
4026{
4027 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4028 MMC_SO()mmc_check_stackoverflow(threadData);
4029 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4030#line 4030 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4031 { /* match expression */
4032 modelica_metatype tmp3_1;
4033 tmp3_1 = _tree;
4034 {
4035 int tmp3;
4036 {
4037 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
4038 case 3: {
4039 modelica_integer tmp4;
4040 modelica_integer tmp5;
4041
4042 /* Pattern matching succeeded */
4043#line 1196 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4044 {
4045#line 1196 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4046 modelica_metatype _c;
4047#line 1196 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4048 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp5 = arrayLength(tmpMeta[0]), tmp4 = 1; tmp4 <= tmp5; tmp4++)
4049#line 1196 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4050 {
4051#line 1196 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4052 _c = arrayGet(tmpMeta[0],tmp4)nobox_arrayGet(threadData,tmpMeta[0],tmp4);
4053#line 1197 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4054 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c);
4055#line 4055 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4056 }
4057 }
4058#line 4058 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4059 goto tmp2_done;
4060 }
4061 case 4: {
4062 modelica_integer tmp6;
4063 modelica_integer tmp7;
4064
4065 /* Pattern matching succeeded */
4066#line 1204 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4067 {
4068#line 1204 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4069 modelica_metatype _c;
4070#line 1204 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4071 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp7 = arrayLength(tmpMeta[0]), tmp6 = 1; tmp6 <= tmp7; tmp6++)
4072#line 1204 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4073 {
4074#line 1204 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4075 _c = arrayGet(tmpMeta[0],tmp6)nobox_arrayGet(threadData,tmpMeta[0],tmp6);
4076#line 1205 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4077 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c);
4078#line 4078 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4079 }
4080 }
4081#line 4081 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4082 goto tmp2_done;
4083 }
4084 case 5: {
4085 modelica_integer tmp8;
4086 modelica_integer tmp9;
4087
4088 /* Pattern matching succeeded */
4089#line 1212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4090 {
4091#line 1212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4092 modelica_metatype _c;
4093#line 1212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4094 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp9 = arrayLength(tmpMeta[0]), tmp8 = 1; tmp8 <= tmp9; tmp8++)
4095#line 1212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4096 {
4097#line 1212 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4098 _c = arrayGet(tmpMeta[0],tmp8)nobox_arrayGet(threadData,tmpMeta[0],tmp8);
4099#line 1213 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4100 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), omc_Mutable_access(threadData, _c)) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, omc_Mutable_access(threadData, _c));
4101#line 4101 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4102 }
4103 }
4104#line 4104 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4105 goto tmp2_done;
4106 }
4107 case 6: {
4108 modelica_integer tmp10;
4109 modelica_integer tmp11;
4110
4111 /* Pattern matching succeeded */
4112#line 1220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4113 {
4114#line 1220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4115 modelica_metatype _c;
4116#line 1220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4117 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp11 = arrayLength(tmpMeta[0]), tmp10 = 1; tmp10 <= tmp11; tmp10++)
4118#line 1220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4119 {
4120#line 1220 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4121 _c = arrayGet(tmpMeta[0],tmp10)nobox_arrayGet(threadData,tmpMeta[0],tmp10);
4122#line 1221 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4123 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c);
4124#line 4124 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4125 }
4126 }
4127#line 4127 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4128 goto tmp2_done;
4129 }
4130 default:
4131 tmp2_default: OMC_LABEL_UNUSED__attribute__((unused)); {
4132
4133 /* Pattern matching succeeded */
4134#line 4134 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4135 goto tmp2_done;
4136 }
4137 }
4138 goto tmp2_end;
4139 tmp2_end: ;
4140 }
4141 goto goto_1;
4142 goto_1:;
4143 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4144 goto tmp2_done;
4145 tmp2_done:;
4146 }
4147 }
4148 ;
4149 _return: OMC_LABEL_UNUSED__attribute__((unused))
4150 return;
4151}
4152
4153DLLExport
4154void omc_NFClassTree_ClassTree_applyLocalComponents(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
4155{
4156 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4157 MMC_SO()mmc_check_stackoverflow(threadData);
4158 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4159#line 4159 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4160 { /* match expression */
4161 modelica_metatype tmp3_1;
4162 tmp3_1 = _tree;
4163 {
4164 int tmp3;
4165 {
4166 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
4167 case 5: {
4168
4169 /* Pattern matching succeeded */
4170#line 1161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4171 {
4172#line 1161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4173 modelica_metatype _i;
4174#line 1161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4175 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
); !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)))))
)
4176#line 1161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4177 {
4178#line 1161 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4179 _i = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
4180#line 1162 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4181 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), omc_Mutable_access(threadData, arrayGetNoBoundsChecking((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), mmc_unbox_integer(_i))((((struct mmc_struct*)((void*)((char*)((((*(void**)(((void*)
((void**)(((void*)((char*)(_tree) - 3))) + (4)))))))) - 3)))->
data)[((((mmc_sint_t) (_i)) >> 1))-1])
)) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, omc_Mutable_access(threadData, arrayGetNoBoundsChecking((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), mmc_unbox_integer(_i))((((struct mmc_struct*)((void*)((char*)((((*(void**)(((void*)
((void**)(((void*)((char*)(_tree) - 3))) + (4)))))))) - 3)))->
data)[((((mmc_sint_t) (_i)) >> 1))-1])
));
4182#line 4182 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4183 }
4184 }
4185#line 4185 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4186 goto tmp2_done;
4187 }
4188 case 3: {
4189 modelica_integer tmp4;
4190 modelica_integer tmp5;
4191
4192 /* Pattern matching succeeded */
4193#line 1169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4194 {
4195#line 1169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4196 modelica_metatype _c;
4197#line 1169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4198 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp5 = arrayLength(tmpMeta[0]), tmp4 = 1; tmp4 <= tmp5; tmp4++)
4199#line 1169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4200 {
4201#line 1169 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4202 _c = arrayGet(tmpMeta[0],tmp4)nobox_arrayGet(threadData,tmpMeta[0],tmp4);
4203#line 1170 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4204 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c);
4205#line 4205 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4206 }
4207 }
4208#line 4208 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4209 goto tmp2_done;
4210 }
4211 case 4: {
4212 modelica_integer tmp6;
4213 modelica_integer tmp7;
4214
4215 /* Pattern matching succeeded */
4216#line 1177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4217 {
4218#line 1177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4219 modelica_metatype _c;
4220#line 1177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4221 for (tmpMeta[0] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), tmp7 = arrayLength(tmpMeta[0]), tmp6 = 1; tmp6 <= tmp7; tmp6++)
4222#line 1177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4223 {
4224#line 1177 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4225 _c = arrayGet(tmpMeta[0],tmp6)nobox_arrayGet(threadData,tmpMeta[0],tmp6);
4226#line 1178 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4227 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _c) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _c);
4228#line 4228 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4229 }
4230 }
4231#line 4231 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4232 goto tmp2_done;
4233 }
4234 }
4235 goto tmp2_end;
4236 tmp2_end: ;
4237 }
4238 goto goto_1;
4239 goto_1:;
4240 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4241 goto tmp2_done;
4242 tmp2_done:;
4243 }
4244 }
4245 ;
4246 _return: OMC_LABEL_UNUSED__attribute__((unused))
4247 return;
4248}
4249
4250DLLExport
4251modelica_metatype omc_NFClassTree_ClassTree_mapFoldExtends(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func, modelica_metatype _D_24in_arg)
4252{
4253 modelica_metatype _arg = NULL((void*)0);
4254 modelica_metatype _exts = NULL((void*)0);
4255 modelica_metatype _ext = NULL((void*)0);
4256 modelica_integer tmp1;
4257 modelica_integer tmp2;
4258 modelica_integer tmp3;
4259 MMC_SO()mmc_check_stackoverflow(threadData);
4260 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4261 _arg = _D_24in_arg;
4262 _exts = omc_NFClassTree_ClassTree_getExtends(threadData, _tree);
4263 // _ext has no default value.
4264#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4265 tmp1 = ((modelica_integer) 1); tmp2 = 1; tmp3 = arrayLength(_exts);
4266#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4267 if(!(((tmp2 > 0) && (tmp1 > tmp3)) || ((tmp2 < 0) && (tmp1 < tmp3))))
4268#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4269 {
4270#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4271 modelica_integer _i;
4272#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4273 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp1, tmp3); _i += tmp2)
4274#line 1144 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4275 {
4276#line 1145 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4277 _ext = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), arrayGetNoBoundsChecking(_exts, _i)((((struct mmc_struct*)((void*)((char*)((_exts)) - 3)))->data
)[(_i)-1])
, _arg ,&_arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, arrayGetNoBoundsChecking(_exts, _i)((((struct mmc_struct*)((void*)((char*)((_exts)) - 3)))->data
)[(_i)-1])
, _arg ,&_arg);
4278#line 4278 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4279
4280#line 1146 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4281 arrayUpdateNoBoundsChecking(_exts, _i, _ext)boxptr_arrayUpdateNoBoundsChecking(threadData,_exts,mmc_mk_icon
(_i),_ext)
;
4282#line 4282 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4283 }
4284 }
4285 _return: OMC_LABEL_UNUSED__attribute__((unused))
4286 return _arg;
4287}
4288
4289DLLExport
4290modelica_metatype omc_NFClassTree_ClassTree_foldExtends(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func, modelica_metatype _D_24in_arg)
4291{
4292 modelica_metatype _arg = NULL((void*)0);
4293 modelica_metatype _exts = NULL((void*)0);
4294 modelica_integer tmp1;
4295 modelica_integer tmp2;
4296 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4297 MMC_SO()mmc_check_stackoverflow(threadData);
4298 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4299 _arg = _D_24in_arg;
4300 _exts = omc_NFClassTree_ClassTree_getExtends(threadData, _tree);
4301#line 1124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4302 {
4303#line 1124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4304 modelica_metatype _ext;
4305#line 1124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4306 for (tmpMeta[0] = _exts, tmp2 = arrayLength(tmpMeta[0]), tmp1 = 1; tmp1 <= tmp2; tmp1++)
4307#line 1124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4308 {
4309#line 1124 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4310 _ext = arrayGet(tmpMeta[0],tmp1)nobox_arrayGet(threadData,tmpMeta[0],tmp1);
4311#line 1125 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4312 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _ext, _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _ext, _arg);
4313#line 4313 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4314 }
4315 }
4316 _return: OMC_LABEL_UNUSED__attribute__((unused))
4317 return _arg;
4318}
4319
4320DLLExport
4321void omc_NFClassTree_ClassTree_mapExtends(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
4322{
4323 modelica_metatype _exts = NULL((void*)0);
4324 modelica_integer tmp1;
4325 modelica_integer tmp2;
4326 modelica_integer tmp3;
4327 MMC_SO()mmc_check_stackoverflow(threadData);
4328 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4329 _exts = omc_NFClassTree_ClassTree_getExtends(threadData, _tree);
4330#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4331 tmp1 = ((modelica_integer) 1); tmp2 = 1; tmp3 = arrayLength(_exts);
4332#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4333 if(!(((tmp2 > 0) && (tmp1 > tmp3)) || ((tmp2 < 0) && (tmp1 < tmp3))))
4334#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4335 {
4336#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4337 modelica_integer _i;
4338#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4339 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp1, tmp3); _i += tmp2)
4340#line 1106 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4341 {
4342#line 1107 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4343 arrayUpdateNoBoundsChecking(_exts, _i, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1)))) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))), arrayGetNoBoundsChecking(_exts, _i)) : ((modelica_metatype(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1)))) (threadData, arrayGetNoBoundsChecking(_exts, _i)))boxptr_arrayUpdateNoBoundsChecking(threadData,_exts,mmc_mk_icon
(_i),((*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3
))) + (2)))))) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype
, modelica_metatype)) ((*(void**)(((void*)((void**)(((void*)(
(char*)(_func) - 3))) + (1))))))) (threadData, ((*(void**)(((
void*)((void**)(((void*)((char*)(_func) - 3))) + (2)))))), ((
((struct mmc_struct*)((void*)((char*)((_exts)) - 3)))->data
)[(_i)-1])) : ((modelica_metatype(*)(threadData_t*, modelica_metatype
)) ((*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3)
)) + (1))))))) (threadData, ((((struct mmc_struct*)((void*)((
char*)((_exts)) - 3)))->data)[(_i)-1])))
;
4344#line 4344 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4345 }
4346 }
4347 _return: OMC_LABEL_UNUSED__attribute__((unused))
4348 return;
4349}
4350
4351DLLExport
4352void omc_NFClassTree_ClassTree_applyExtends(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
4353{
4354 modelica_metatype _exts = NULL((void*)0);
4355 modelica_integer tmp1;
4356 modelica_integer tmp2;
4357 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4358 MMC_SO()mmc_check_stackoverflow(threadData);
4359 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4360 _exts = omc_NFClassTree_ClassTree_getExtends(threadData, _tree);
4361#line 1089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4362 {
4363#line 1089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4364 modelica_metatype _ext;
4365#line 1089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4366 for (tmpMeta[0] = _exts, tmp2 = arrayLength(tmpMeta[0]), tmp1 = 1; tmp1 <= tmp2; tmp1++)
4367#line 1089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4368 {
4369#line 1089 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4370 _ext = arrayGet(tmpMeta[0],tmp1)nobox_arrayGet(threadData,tmpMeta[0],tmp1);
4371#line 1090 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4372 (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((void(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _ext) : ((void(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _ext);
4373#line 4373 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4374 }
4375 }
4376 _return: OMC_LABEL_UNUSED__attribute__((unused))
4377 return;
4378}
4379
4380DLLExport
4381modelica_metatype omc_NFClassTree_ClassTree_foldClasses(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func, modelica_metatype _D_24in_arg)
4382{
4383 modelica_metatype _arg = NULL((void*)0);
4384 modelica_metatype _clss = NULL((void*)0);
4385 modelica_integer tmp1;
4386 modelica_integer tmp2;
4387 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4388 MMC_SO()mmc_check_stackoverflow(threadData);
4389 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4390 _arg = _D_24in_arg;
4391 _clss = omc_NFClassTree_ClassTree_getClasses(threadData, _tree);
4392#line 1075 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4393 {
4394#line 1075 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4395 modelica_metatype _cls;
4396#line 1075 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4397 for (tmpMeta[0] = _clss, tmp2 = arrayLength(tmpMeta[0]), tmp1 = 1; tmp1 <= tmp2; tmp1++)
4398#line 1075 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4399 {
4400#line 1075 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4401 _cls = arrayGet(tmpMeta[0],tmp1)nobox_arrayGet(threadData,tmpMeta[0],tmp1);
4402#line 1076 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4403 _arg = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(2)))))
), _cls, _arg) : ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1))(*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3))) +
(1)))))
)) (threadData, _cls, _arg);
4404#line 4404 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4405 }
4406 }
4407 _return: OMC_LABEL_UNUSED__attribute__((unused))
4408 return _arg;
4409}
4410
4411DLLExport
4412void omc_NFClassTree_ClassTree_mapClasses(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
4413{
4414 modelica_metatype _clss = NULL((void*)0);
4415 modelica_integer tmp1;
4416 modelica_integer tmp2;
4417 modelica_integer tmp3;
4418 MMC_SO()mmc_check_stackoverflow(threadData);
4419 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4420 _clss = omc_NFClassTree_ClassTree_getClasses(threadData, _tree);
4421#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4422 tmp1 = ((modelica_integer) 1); tmp2 = 1; tmp3 = arrayLength(_clss);
4423#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4424 if(!(((tmp2 > 0) && (tmp1 > tmp3)) || ((tmp2 < 0) && (tmp1 < tmp3))))
4425#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4426 {
4427#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4428 modelica_integer _i;
4429#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4430 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp1, tmp3); _i += tmp2)
4431#line 1057 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4432 {
4433#line 1058 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4434 arrayUpdateNoBoundsChecking(_clss, _i, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1)))) (threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 2))), arrayGetNoBoundsChecking(_clss, _i)) : ((modelica_metatype(*)(threadData_t*, modelica_metatype)) (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_func), 1)))) (threadData, arrayGetNoBoundsChecking(_clss, _i)))boxptr_arrayUpdateNoBoundsChecking(threadData,_clss,mmc_mk_icon
(_i),((*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3
))) + (2)))))) ? ((modelica_metatype(*)(threadData_t*, modelica_metatype
, modelica_metatype)) ((*(void**)(((void*)((void**)(((void*)(
(char*)(_func) - 3))) + (1))))))) (threadData, ((*(void**)(((
void*)((void**)(((void*)((char*)(_func) - 3))) + (2)))))), ((
((struct mmc_struct*)((void*)((char*)((_clss)) - 3)))->data
)[(_i)-1])) : ((modelica_metatype(*)(threadData_t*, modelica_metatype
)) ((*(void**)(((void*)((void**)(((void*)((char*)(_func) - 3)
)) + (1))))))) (threadData, ((((struct mmc_struct*)((void*)((
char*)((_clss)) - 3)))->data)[(_i)-1])))
;
4435#line 4435 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4436 }
4437 }
4438 _return: OMC_LABEL_UNUSED__attribute__((unused))
4439 return;
4440}
4441
4442DLLExport
4443modelica_metatype omc_NFClassTree_ClassTree_nthComponent(threadData_t *threadData, modelica_integer _index, modelica_metatype _tree)
4444{
4445 modelica_metatype _component = NULL((void*)0);
4446 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
4447 MMC_SO()mmc_check_stackoverflow(threadData);
4448 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4449 // _component has no default value.
4450#line 4450 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4451 { /* match expression */
4452 modelica_metatype tmp3_1;
4453 tmp3_1 = _tree;
4454 {
4455 int tmp3;
4456 {
4457 switch (MMC_SWITCH_CAST(valueConstructor(tmp3_1))(((((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))) >> 2
) & 255))
) {
4458 case 3: {
4459
4460 /* Pattern matching succeeded */
4461#line 1040 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4462 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
;
4463#line 4463 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4464 goto tmp2_done;
4465 }
4466 case 4: {
4467
4468 /* Pattern matching succeeded */
4469#line 1041 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4470 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
;
4471#line 4471 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4472 goto tmp2_done;
4473 }
4474 case 5: {
4475
4476 /* Pattern matching succeeded */
4477#line 1042 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4478 tmpMeta[0] = omc_Mutable_access(threadData, arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
);
4479#line 4479 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4480 goto tmp2_done;
4481 }
4482 case 6: {
4483
4484 /* Pattern matching succeeded */
4485#line 1043 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4486 tmpMeta[0] = arrayGet((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))), _index)nobox_arrayGet(threadData,((*(void**)(((void*)((void**)(((void
*)((char*)(_tree) - 3))) + (4)))))),_index)
;
4487#line 4487 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4488 goto tmp2_done;
4489 }
4490 }
4491 goto tmp2_end;
4492 tmp2_end: ;
4493 }
4494 goto goto_1;
4495 goto_1:;
4496 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4497 goto tmp2_done;
4498 tmp2_done:;
4499 }
4500 }
4501 _component = tmpMeta[0];
4502 _return: OMC_LABEL_UNUSED__attribute__((unused))
4503 return _component;
4504}
4505modelica_metatype boxptr_NFClassTree_ClassTree_nthComponent(threadData_t *threadData, modelica_metatype _index, modelica_metatype _tree)
4506{
4507 modelica_integer tmp1;
4508 modelica_metatype _component = NULL((void*)0);
4509 tmp1 = mmc_unbox_integer(_index)(((mmc_sint_t) (_index)) >> 1);
4510 _component = omc_NFClassTree_ClassTree_nthComponent(threadData, tmp1, _tree);
4511 /* skip box _component; NFInstNode.InstNode */
4512 return _component;
4513}
4514
4515DLLExport
4516modelica_integer omc_NFClassTree_ClassTree_lookupComponentIndex(threadData_t *threadData, modelica_string _name, modelica_metatype _tree)
4517{
4518 modelica_integer _index;
4519 modelica_integer tmp1;
4520 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4521 MMC_SO()mmc_check_stackoverflow(threadData);
4522 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4523 // _index has no default value.
4524#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4525 /* Pattern-matching assignment */
4526#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4527 tmpMeta[0] = omc_NFClassTree_LookupTree_get(threadData, omc_NFClassTree_ClassTree_lookupTree(threadData, _tree), _name);
4528#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4529 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[0],1,1)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3)))==(((1 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4530#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4531 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[0]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
4532#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4533 tmp1 = mmc_unbox_integer(tmpMeta[1])(((mmc_sint_t) (tmpMeta[1])) >> 1);
4534#line 1030 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4535 _index = tmp1 /* pattern as ty=Integer */;
4536#line 4536 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4537 _return: OMC_LABEL_UNUSED__attribute__((unused))
4538 return _index;
4539}
4540modelica_metatype boxptr_NFClassTree_ClassTree_lookupComponentIndex(threadData_t *threadData, modelica_metatype _name, modelica_metatype _tree)
4541{
4542 modelica_integer _index;
4543 modelica_metatype out_index;
4544 _index = omc_NFClassTree_ClassTree_lookupComponentIndex(threadData, _name, _tree);
4545 out_index = mmc_mk_icon(_index);
4546 return out_index;
4547}
4548
4549DLLExport
4550modelica_metatype omc_NFClassTree_ClassTree_lookupElementsPtr(threadData_t *threadData, modelica_string _name, modelica_metatype _tree)
4551{
4552 modelica_metatype _elements = NULL((void*)0);
4553 modelica_metatype _dup_entry = NULL((void*)0);
4554 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
4555 MMC_SO()mmc_check_stackoverflow(threadData);
4556 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4557 // _elements has no default value.
4558 // _dup_entry has no default value.
4559#line 4559 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4560 { /* matchcontinue expression */
4561 {
4562 volatile mmc_switch_type tmp3;
4563 int tmp4;
4564 tmp3 = 0;
4565 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) {
4566 tmp2_top:
4567 threadData->mmc_jumper = &new_mmc_jumper;
4568 for (; tmp3 < 2; tmp3++) {
4569 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4570 case 0: {
4571 /* Pattern matching succeeded */
4572#line 1018 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4573 _dup_entry = omc_NFClassTree_DuplicateTree_get(threadData, omc_NFClassTree_ClassTree_getDuplicates(threadData, _tree), _name);
4574#line 4574 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4575
4576#line 1019 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4577 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
4578#line 1019 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4579 _elements = omc_NFClassTree_ClassTree_resolveDuplicateEntriesPtr(threadData, _dup_entry, _tree, tmpMeta[0]);
4580#line 4580 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4581#line 4581 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4582 goto tmp2_done;
4583 }
4584 case 1: {
4585 /* Pattern matching succeeded */
4586#line 1021 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4587 tmpMeta[0] = mmc_mk_cons(omc_NFClassTree_ClassTree_lookupElementPtr(threadData, _name, _tree), MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3)));
4588#line 1021 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4589 _elements = tmpMeta[0];
4590#line 4590 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4591#line 4591 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4592 goto tmp2_done;
4593 }
4594 }
4595 goto tmp2_end;
4596 tmp2_end: ;
4597 }
4598 goto goto_1;
4599 tmp2_done:
4600 (void)tmp3;
4601 MMC_RESTORE_INTERNAL(mmc_jumper)threadData->mmc_jumper = old_jumper;;
4602 goto tmp2_done2;
4603 goto_1:;
4604 MMC_CATCH_INTERNAL(mmc_jumper)} threadData->mmc_jumper = old_jumper;mmc_catch_dummy_fn()
;}
;
4605 if (++tmp3 < 2) {
4606 goto tmp2_top;
4607 }
4608 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4609 tmp2_done2:;
4610 }
4611 }
4612 ;
4613 _return: OMC_LABEL_UNUSED__attribute__((unused))
4614 return _elements;
4615}
4616
4617DLLExport
4618modelica_metatype omc_NFClassTree_ClassTree_lookupElementPtr(threadData_t *threadData, modelica_string _name, modelica_metatype _tree)
4619{
4620 modelica_metatype _element = NULL((void*)0);
4621 modelica_metatype _entry = NULL((void*)0);
4622 MMC_SO()mmc_check_stackoverflow(threadData);
4623 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4624 // _element has no default value.
4625 // _entry has no default value.
4626#line 1006 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4627 _entry = omc_NFClassTree_LookupTree_get(threadData, omc_NFClassTree_ClassTree_lookupTree(threadData, _tree), _name);
4628#line 4628 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4629
4630#line 1007 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4631 _element = omc_NFClassTree_ClassTree_resolveEntryPtr(threadData, _entry, _tree);
4632#line 4632 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4633 _return: OMC_LABEL_UNUSED__attribute__((unused))
4634 return _element;
4635}
4636
4637DLLExport
4638modelica_metatype omc_NFClassTree_ClassTree_lookupElement(threadData_t *threadData, modelica_string _name, modelica_metatype _tree, modelica_boolean *out_isImport)
4639{
4640 modelica_metatype _element = NULL((void*)0);
4641 modelica_boolean _isImport;
4642 modelica_metatype _entry = NULL((void*)0);
4643 MMC_SO()mmc_check_stackoverflow(threadData);
4644 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4645 // _element has no default value.
4646 // _isImport has no default value.
4647 // _entry has no default value.
4648#line 995 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4649 _entry = omc_NFClassTree_LookupTree_get(threadData, omc_NFClassTree_ClassTree_lookupTree(threadData, _tree), _name);
4650#line 4650 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4651
4652#line 996 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4653 _element = omc_NFClassTree_ClassTree_resolveEntry(threadData, _entry, _tree ,&_isImport);
4654#line 4654 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4655 _return: OMC_LABEL_UNUSED__attribute__((unused))
4656 if (out_isImport) { *out_isImport = _isImport; }
4657 return _element;
4658}
4659modelica_metatype boxptr_NFClassTree_ClassTree_lookupElement(threadData_t *threadData, modelica_metatype _name, modelica_metatype _tree, modelica_metatype *out_isImport)
4660{
4661 modelica_boolean _isImport;
4662 modelica_metatype _element = NULL((void*)0);
4663 _element = omc_NFClassTree_ClassTree_lookupElement(threadData, _name, _tree, &_isImport);
4664 /* skip box _element; NFInstNode.InstNode */
4665 if (out_isImport) { *out_isImport = mmc_mk_icon(_isImport); }
4666 return _element;
4667}
4668
4669DLLExport
4670modelica_metatype omc_NFClassTree_ClassTree_flattenLookupTree2(threadData_t *threadData, modelica_string _key, modelica_metatype _entry, modelica_metatype _offsets)
4671{
4672 modelica_metatype _outEntry = NULL((void*)0);
4673 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4674 MMC_SO()mmc_check_stackoverflow(threadData);
4675 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4676 // _outEntry has no default value.
4677#line 4677 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4678 { /* match expression */
4679 modelica_metatype tmp3_1;
4680 tmp3_1 = _entry;
4681 {
4682 volatile mmc_switch_type tmp3;
4683 int tmp4;
4684 tmp3 = 0;
4685 for (; tmp3 < 2; tmp3++) {
4686 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4687 case 0: {
4688 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,1)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((1 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
4689
4690 /* Pattern matching succeeded */
4691#line 980 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4692 tmpMeta[1] = mmc_mk_box2(4, &NFClassTree_LookupTree_Entry_COMPONENT__desc, mmc_mk_integermmc_mk_icon(mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))(((mmc_sint_t) (((*(void**)(((void*)((void**)(((void*)((char*
)(_entry) - 3))) + (2)))))))) >> 1)
- (mmc_unbox_integer(arrayGetNoBoundsChecking(_offsets, mmc_unbox_integer((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_entry), 2))))))(((mmc_sint_t) (((((struct mmc_struct*)((void*)((char*)((_offsets
)) - 3)))->data)[((((mmc_sint_t) (((*(void**)(((void*)((void
**)(((void*)((char*)(_entry) - 3))) + (2)))))))) >> 1))
-1]))) >> 1)
)));
4693#line 980 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4694 tmpMeta[0] = tmpMeta[1];
4695#line 4695 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4696 goto tmp2_done;
4697 }
4698 case 1: {
4699
4700 /* Pattern matching succeeded */
4701#line 982 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4702 tmpMeta[0] = _entry;
4703#line 4703 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4704 goto tmp2_done;
4705 }
4706 }
4707 goto tmp2_end;
4708 tmp2_end: ;
4709 }
4710 goto goto_1;
4711 goto_1:;
4712 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4713 goto tmp2_done;
4714 tmp2_done:;
4715 }
4716 }
4717 _outEntry = tmpMeta[0];
4718 _return: OMC_LABEL_UNUSED__attribute__((unused))
4719 return _outEntry;
4720}
4721
4722static modelica_metatype closure6_NFClassTree_ClassTree_flattenLookupTree2(threadData_t *thData, modelica_metatype closure, modelica_string key, modelica_metatype entry)
4723{
4724 modelica_metatype offsets = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
4725 return boxptr_NFClassTree_ClassTree_flattenLookupTree2omc_NFClassTree_ClassTree_flattenLookupTree2(thData, key, entry, offsets);
4726}
4727DLLExport
4728modelica_metatype omc_NFClassTree_ClassTree_flattenLookupTree(threadData_t *threadData, modelica_metatype _D_24in_tree, modelica_metatype _offsets)
4729{
4730 modelica_metatype _tree = NULL((void*)0);
4731 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
4732 MMC_SO()mmc_check_stackoverflow(threadData);
4733 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4734 _tree = _D_24in_tree;
4735#line 969 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4736 tmpMeta[0] = mmc_mk_box1(0, _offsets);
4737#line 969 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4738 _tree = omc_NFClassTree_LookupTree_map(threadData, _tree, (modelica_fnptr) mmc_mk_box2(0,closure6_NFClassTree_ClassTree_flattenLookupTree2,tmpMeta[0]));
4739#line 4739 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4740 _return: OMC_LABEL_UNUSED__attribute__((unused))
4741 return _tree;
4742}
4743
4744DLLExport
4745modelica_metatype omc_NFClassTree_ClassTree_createFlatOffsets(threadData_t *threadData, modelica_integer _elementCount, modelica_metatype _duplicates)
4746{
4747 modelica_metatype _offsets = NULL((void*)0);
4748 modelica_integer _offset;
4749 modelica_integer _dup;
4750 modelica_metatype _rest_dups = NULL((void*)0);
4751 modelica_integer tmp1;
4752 modelica_integer tmp2;
4753 modelica_integer tmp3;
4754 modelica_integer tmp4;
4755 modelica_integer tmp5;
4756 modelica_metatype tmpMeta[3] __attribute__((unused)) = {0};
4757 MMC_SO()mmc_check_stackoverflow(threadData);
4758 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4759 // _offsets has no default value.
4760 _offset = ((modelica_integer) 0);
4761 // _dup has no default value.
4762 // _rest_dups has no default value.
4763#line 941 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4764 _offsets = arrayCreateNoInit(_elementCount, mmc_mk_integermmc_mk_icon(((modelica_integer) 0)));
4765#line 4765 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4766
4767#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4768 /* Pattern-matching assignment */
4769#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4770 tmpMeta[0] = _duplicates;
4771#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4772 if (listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4773#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4774 tmpMeta[1] = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
4775#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4776 tmpMeta[2] = MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
4777#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4778 tmp1 = mmc_unbox_integer(tmpMeta[1])(((mmc_sint_t) (tmpMeta[1])) >> 1);
4779#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4780 _dup = tmp1 /* pattern as ty=Integer */;
4781#line 942 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4782 _rest_dups = tmpMeta[2];
4783#line 4783 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4784
4785#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4786 tmp3 = ((modelica_integer) 1); tmp4 = 1; tmp5 = _elementCount;
4787#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4788 if(!(((tmp4 > 0) && (tmp3 > tmp5)) || ((tmp4 < 0) && (tmp3 < tmp5))))
4789#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4790 {
4791#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4792 modelica_integer _i;
4793#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4794 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp3, tmp5); _i += tmp4)
4795#line 944 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4796 {
4797#line 946 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4798 if((_i == _dup))
4799#line 946 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4800 {
4801#line 947 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4802 if(listEmpty(_rest_dups)((*(mmc_uint_t*)((void*)((char*)(_rest_dups) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
)
4803#line 947 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4804 {
4805#line 948 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4806 _dup = ((modelica_integer) 0);
4807#line 4807 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4808 }
4809 else
4810 {
4811#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4812 /* Pattern-matching assignment */
4813#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4814 tmpMeta[0] = _rest_dups;
4815#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4816 if (listEmpty(tmpMeta[0])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[0]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
) MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
4817#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4818 tmpMeta[1] = MMC_CAR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (1)))))
;
4819#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4820 tmpMeta[2] = MMC_CDR(tmpMeta[0])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[0]) - 3
))) + (2)))))
;
4821#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4822 tmp2 = mmc_unbox_integer(tmpMeta[1])(((mmc_sint_t) (tmpMeta[1])) >> 1);
4823#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4824 _dup = tmp2 /* pattern as ty=Integer */;
4825#line 950 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4826 _rest_dups = tmpMeta[2];
4827#line 4827 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4828 }
4829
4830#line 953 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4831 _offset = ((modelica_integer) 1) + _offset;
4832#line 4832 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4833
4834#line 954 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4835 arrayUpdateNoBoundsChecking(_offsets, _i, mmc_mk_integer(((modelica_integer) -1)))boxptr_arrayUpdateNoBoundsChecking(threadData,_offsets,mmc_mk_icon
(_i),mmc_mk_icon(((modelica_integer) -1)))
;
4836#line 4836 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4837 }
4838 else
4839 {
4840#line 956 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4841 arrayUpdateNoBoundsChecking(_offsets, _i, mmc_mk_integer(_offset))boxptr_arrayUpdateNoBoundsChecking(threadData,_offsets,mmc_mk_icon
(_i),mmc_mk_icon(_offset))
;
4842#line 4842 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4843 }
4844 }
4845 }
4846 _return: OMC_LABEL_UNUSED__attribute__((unused))
4847 return _offsets;
4848}
4849modelica_metatype boxptr_NFClassTree_ClassTree_createFlatOffsets(threadData_t *threadData, modelica_metatype _elementCount, modelica_metatype _duplicates)
4850{
4851 modelica_integer tmp1;
4852 modelica_metatype _offsets = NULL((void*)0);
4853 tmp1 = mmc_unbox_integer(_elementCount)(((mmc_sint_t) (_elementCount)) >> 1);
4854 _offsets = omc_NFClassTree_ClassTree_createFlatOffsets(threadData, tmp1, _duplicates);
4855 /* skip box _offsets; array<#Integer> */
4856 return _offsets;
4857}
4858
4859DLLExport
4860void omc_NFClassTree_ClassTree_flattenElementsWithOffset(threadData_t *threadData, modelica_metatype _elements, modelica_metatype _flatElements, modelica_metatype _offsets)
4861{
4862 modelica_integer _offset;
4863 modelica_integer tmp1;
4864 modelica_integer tmp2;
4865 modelica_integer tmp3;
4866 MMC_SO()mmc_check_stackoverflow(threadData);
4867 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4868 // _offset has no default value.
4869#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4870 tmp1 = ((modelica_integer) 1); tmp2 = 1; tmp3 = arrayLength(_elements);
4871#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4872 if(!(((tmp2 > 0) && (tmp1 > tmp3)) || ((tmp2 < 0) && (tmp1 < tmp3))))
4873#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4874 {
4875#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4876 modelica_integer _i;
4877#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4878 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp1, tmp3); _i += tmp2)
4879#line 916 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4880 {
4881#line 917 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4882 _offset = mmc_unbox_integer(arrayGetNoBoundsChecking(_offsets, _i))(((mmc_sint_t) (((((struct mmc_struct*)((void*)((char*)((_offsets
)) - 3)))->data)[(_i)-1]))) >> 1)
;
4883#line 4883 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4884
4885#line 919 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4886 if((_offset >= ((modelica_integer) 0)))
4887#line 919 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4888 {
4889#line 920 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4890 arrayUpdateNoBoundsChecking(_flatElements, _i - _offset, omc_Mutable_access(threadData, arrayGetNoBoundsChecking(_elements, _i)))boxptr_arrayUpdateNoBoundsChecking(threadData,_flatElements,mmc_mk_icon
(_i - _offset),omc_Mutable_access(threadData, ((((struct mmc_struct
*)((void*)((char*)((_elements)) - 3)))->data)[(_i)-1])))
;
4891#line 4891 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4892 }
4893 }
4894 }
4895 _return: OMC_LABEL_UNUSED__attribute__((unused))
4896 return;
4897}
4898
4899DLLExport
4900void omc_NFClassTree_ClassTree_flattenElements(threadData_t *threadData, modelica_metatype _elements, modelica_metatype _flatElements)
4901{
4902 modelica_integer tmp1;
4903 modelica_integer tmp2;
4904 modelica_integer tmp3;
4905 MMC_SO()mmc_check_stackoverflow(threadData);
4906 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4907#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4908 tmp1 = ((modelica_integer) 1); tmp2 = 1; tmp3 = arrayLength(_elements);
4909#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4910 if(!(((tmp2 > 0) && (tmp1 > tmp3)) || ((tmp2 < 0) && (tmp1 < tmp3))))
4911#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4912 {
4913#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4914 modelica_integer _i;
4915#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4916 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp1, tmp3); _i += tmp2)
4917#line 903 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4918 {
4919#line 904 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4920 arrayUpdateNoBoundsChecking(_flatElements, _i, omc_Mutable_access(threadData, arrayGetNoBoundsChecking(_elements, _i)))boxptr_arrayUpdateNoBoundsChecking(threadData,_flatElements,mmc_mk_icon
(_i),omc_Mutable_access(threadData, ((((struct mmc_struct*)((
void*)((char*)((_elements)) - 3)))->data)[(_i)-1])))
;
4921#line 4921 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4922 }
4923 }
4924 _return: OMC_LABEL_UNUSED__attribute__((unused))
4925 return;
4926}
4927
4928DLLExport
4929modelica_metatype omc_NFClassTree_ClassTree_flatten(threadData_t *threadData, modelica_metatype _D_24in_tree)
4930{
4931 modelica_metatype _tree = NULL((void*)0);
4932 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
4933 MMC_SO()mmc_check_stackoverflow(threadData);
4934 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
4935 _tree = _D_24in_tree;
4936#line 4936 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4937 { /* match expression */
4938 modelica_metatype tmp3_1;
4939 tmp3_1 = _tree;
4940 {
4941 modelica_metatype _clss = NULL((void*)0);
4942 modelica_metatype _comps = NULL((void*)0);
4943 modelica_metatype _comp_offsets = NULL((void*)0);
4944 modelica_integer _clsc;
4945 modelica_integer _compc;
4946 modelica_metatype _dup_comp = NULL((void*)0);
4947 modelica_metatype _ltree = NULL((void*)0);
4948 volatile mmc_switch_type tmp3;
4949 int tmp4;
4950 // _clss has no default value.
4951 // _comps has no default value.
4952 // _comp_offsets has no default value.
4953 // _clsc has no default value.
4954 // _compc has no default value.
4955 // _dup_comp has no default value.
4956 // _ltree has no default value.
4957 tmp3 = 0;
4958 for (; tmp3 < 2; tmp3++) {
4959 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
4960 case 0: {
4961 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
4962
4963 /* Pattern matching succeeded */
4964#line 864 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4965 omc_NFClassTree_ClassTree_enumerateDuplicates(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
) ,&_dup_comp);
4966#line 4966 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4967
4968#line 867 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4969 _clsc = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
4970#line 4970 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4971
4972#line 868 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4973 _compc = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
)) - listLength(_dup_comp);
4974#line 4974 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4975
4976#line 869 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4977 _clss = arrayCreateNoInit(_clsc, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)));
4978#line 4978 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4979
4980#line 870 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4981 _comps = arrayCreateNoInit(_compc, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)));
4982#line 4982 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4983
4984#line 875 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4985 omc_NFClassTree_ClassTree_flattenElements(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
), _clss);
4986#line 4986 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4987
4988#line 879 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4989 if(listEmpty(_dup_comp)((*(mmc_uint_t*)((void*)((char*)(_dup_comp) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
)
4990#line 879 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4991 {
4992#line 881 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4993 omc_NFClassTree_ClassTree_flattenElements(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), _comps);
4994#line 4994 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4995
4996#line 882 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
4997 _ltree = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(2)))))
);
4998#line 4998 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
4999 }
5000 else
5001 {
5002#line 886 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5003 _comp_offsets = omc_NFClassTree_ClassTree_createFlatOffsets(threadData, arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
)), _dup_comp);
5004#line 5004 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5005
5006#line 887 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5007 omc_NFClassTree_ClassTree_flattenElementsWithOffset(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), _comps, _comp_offsets);
5008#line 5008 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5009
5010#line 888 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5011 _ltree = omc_NFClassTree_ClassTree_flattenLookupTree(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(2)))))
), _comp_offsets);
5012#line 5012 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5013 }
5014#line 890 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5015 tmpMeta[1] = mmc_mk_box6(6, &NFClassTree_ClassTree_FLAT__TREE__desc, _ltree, _clss, _comps, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(7)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
));
5016#line 890 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5017 tmpMeta[0] = tmpMeta[1];
5018#line 5018 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5019 goto tmp2_done;
5020 }
5021 case 1: {
5022
5023 /* Pattern matching succeeded */
5024#line 893 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5025 tmpMeta[0] = _tree;
5026#line 5026 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5027 goto tmp2_done;
5028 }
5029 }
5030 goto tmp2_end;
5031 tmp2_end: ;
5032 }
5033 goto goto_1;
5034 goto_1:;
5035 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5036 goto tmp2_done;
5037 tmp2_done:;
5038 }
5039 }
5040 _tree = tmpMeta[0];
5041 _return: OMC_LABEL_UNUSED__attribute__((unused))
5042 return _tree;
5043}
5044
5045DLLExport
5046modelica_metatype omc_NFClassTree_ClassTree_appendComponentsToInstTree(threadData_t *threadData, modelica_metatype _components, modelica_metatype _D_24in_tree)
5047{
5048 modelica_metatype _tree = NULL((void*)0);
5049 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
5050 MMC_SO()mmc_check_stackoverflow(threadData);
5051 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5052 _tree = _D_24in_tree;
5053#line 822 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5054 if(listEmpty(_components)((*(mmc_uint_t*)((void*)((char*)(_components) - 3))) == (((0)
<< 10) + (((0) & 255) << 2)))
)
5055#line 822 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5056 {
5057#line 823 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5058 goto _return;
5059#line 5059 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5060 }
5061 else
5062 {
5063#line 5063 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5064 { /* match expression */
5065 modelica_metatype tmp3_1;
5066 tmp3_1 = _tree;
5067 {
5068 modelica_integer _comp_idx;
5069 modelica_metatype _local_comps = NULL((void*)0);
5070 volatile mmc_switch_type tmp3;
5071 int tmp4;
5072 // _comp_idx has no default value.
5073 // _local_comps has no default value.
5074 tmp3 = 0;
5075 for (; tmp3 < 1; tmp3++) {
5076 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
5077 case 0: {
5078 modelica_integer tmp5;
5079 modelica_integer tmp6;
5080 modelica_integer tmp7;
5081 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
5082
5083 /* Pattern matching succeeded */
5084#line 832 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5085 _comp_idx = arrayLength((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
));
5086#line 5086 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5087
5088#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5089 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(9))((void*)((char*)(mmc_alloc_words(9)) + 3));
5090#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5091 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_tree)((void*)((char*)(_tree) - 3)), 9*sizeof(modelica_metatype));
5092#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5093 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[4] = omc_Array_appendList(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), _components);
5094#line 833 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5095 _tree = tmpMeta[0];
5096#line 5096 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5097
5098#line 834 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5099 _local_comps = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
);
5100#line 5100 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5101
5102#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5103 tmp5 = ((modelica_integer) 1) + _comp_idx; tmp6 = 1; tmp7 = _comp_idx + listLength(_components);
5104#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5105 if(!(((tmp6 > 0) && (tmp5 > tmp7)) || ((tmp6 < 0) && (tmp5 < tmp7))))
5106#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5107 {
5108#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5109 modelica_integer _i;
5110#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5111 for(_i = ((modelica_integer) 1) + _comp_idx; in_range_integer(_i, tmp5, tmp7); _i += tmp6)
5112#line 836 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5113 {
5114#line 837 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5115 tmpMeta[0] = mmc_mk_cons(mmc_mk_integermmc_mk_icon(_i), _local_comps);
5116#line 837 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5117 _local_comps = tmpMeta[0];
5118#line 5118 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5119 }
5120 }
5121
5122#line 840 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5123 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(9))((void*)((char*)(mmc_alloc_words(9)) + 3));
5124#line 840 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5125 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_tree)((void*)((char*)(_tree) - 3)), 9*sizeof(modelica_metatype));
5126#line 840 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5127 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[5] = _local_comps;
5128#line 840 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5129 _tree = tmpMeta[0];
5130#line 5130 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5131#line 5131 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5132 goto tmp2_done;
5133 }
5134 }
5135 goto tmp2_end;
5136 tmp2_end: ;
5137 }
5138 goto goto_1;
5139 goto_1:;
5140 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5141 goto tmp2_done;
5142 tmp2_done:;
5143 }
5144 }
5145 ;
5146 }
5147 _return: OMC_LABEL_UNUSED__attribute__((unused))
5148 return _tree;
5149}
5150
5151static modelica_metatype closure7_NFClassTree_ClassTree_replaceDuplicates2(threadData_t *thData, modelica_metatype closure, modelica_string name, modelica_metatype $in_entry)
5152{
5153 modelica_metatype tree = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
5154 return boxptr_NFClassTree_ClassTree_replaceDuplicates2omc_NFClassTree_ClassTree_replaceDuplicates2(thData, name, $in_entry, tree);
5155}
5156DLLExport
5157modelica_metatype omc_NFClassTree_ClassTree_replaceDuplicates(threadData_t *threadData, modelica_metatype _D_24in_tree)
5158{
5159 modelica_metatype _tree = NULL((void*)0);
5160 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
5161 MMC_SO()mmc_check_stackoverflow(threadData);
5162 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5163 _tree = _D_24in_tree;
5164#line 5164 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5165 { /* match expression */
5166 modelica_metatype tmp3_1;
5167 tmp3_1 = _tree;
5168 {
5169 volatile mmc_switch_type tmp3;
5170 int tmp4;
5171 tmp3 = 0;
5172 for (; tmp3 < 2; tmp3++) {
5173 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
5174 case 0: {
5175 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
5176
5177 /* Pattern matching succeeded */
5178 /* Check guard condition after assignments */
5179 if (!(!omc_NFClassTree_DuplicateTree_isEmpty(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
)))) goto tmp2_end;
5180#line 808 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5181 tmpMeta[1] = mmc_mk_box1(0, _tree);
5182#line 808 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5183 tmpMeta[0] = MMC_TAGPTR(mmc_alloc_words(9))((void*)((char*)(mmc_alloc_words(9)) + 3));
5184#line 808 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5185 memcpy(MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)), MMC_UNTAGPTR(_tree)((void*)((char*)(_tree) - 3)), 9*sizeof(modelica_metatype));
5186#line 808 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5187 ((modelica_metatype*)MMC_UNTAGPTR(tmpMeta[0])((void*)((char*)(tmpMeta[0]) - 3)))[8] = omc_NFClassTree_DuplicateTree_map(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
), (modelica_fnptr) mmc_mk_box2(0,closure7_NFClassTree_ClassTree_replaceDuplicates2,tmpMeta[1]));
5188#line 808 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5189 _tree = tmpMeta[0];
5190#line 5190 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5191#line 5191 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5192 goto tmp2_done;
5193 }
5194 case 1: {
5195
5196 /* Pattern matching succeeded */
5197#line 5197 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5198 goto tmp2_done;
5199 }
5200 }
5201 goto tmp2_end;
5202 tmp2_end: ;
5203 }
5204 goto goto_1;
5205 goto_1:;
5206 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5207 goto tmp2_done;
5208 tmp2_done:;
5209 }
5210 }
5211 ;
5212 _return: OMC_LABEL_UNUSED__attribute__((unused))
5213 return _tree;
5214}
5215
5216static modelica_metatype closure8_NFClassTree_ClassTree_mapRedeclareChain(threadData_t *thData, modelica_metatype closure, modelica_string name, modelica_metatype $in_entry)
5217{
5218 modelica_fnptr func = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),1))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (1)))))
;
5219 modelica_metatype tree = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(closure),2))(*(void**)(((void*)((void**)(((void*)((char*)(closure) - 3)))
+ (2)))))
;
5220 return boxptr_NFClassTree_ClassTree_mapRedeclareChainomc_NFClassTree_ClassTree_mapRedeclareChain(thData, name, $in_entry, func, tree);
5221}
5222DLLExport
5223void omc_NFClassTree_ClassTree_mapRedeclareChains(threadData_t *threadData, modelica_metatype _tree, modelica_fnptr _func)
5224{
5225 modelica_metatype tmpMeta[1] __attribute__((unused)) = {0};
5226 MMC_SO()mmc_check_stackoverflow(threadData);
5227 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5228#line 5228 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5229 { /* match expression */
5230 modelica_metatype tmp3_1;
5231 tmp3_1 = _tree;
5232 {
5233 volatile mmc_switch_type tmp3;
5234 int tmp4;
5235 tmp3 = 0;
5236 for (; tmp3 < 2; tmp3++) {
5237 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
5238 case 0: {
5239 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
5240
5241 /* Pattern matching succeeded */
5242 /* Check guard condition after assignments */
5243 if (!(!omc_NFClassTree_DuplicateTree_isEmpty(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
)))) goto tmp2_end;
5244#line 791 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5245 tmpMeta[0] = mmc_mk_box2(0, ((modelica_fnptr) _func), _tree);
5246#line 791 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5247 omc_NFClassTree_DuplicateTree_map(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 8))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(8)))))
), (modelica_fnptr) mmc_mk_box2(0,closure8_NFClassTree_ClassTree_mapRedeclareChain,tmpMeta[0]));
5248#line 5248 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5249#line 5249 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5250 goto tmp2_done;
5251 }
5252 case 1: {
5253
5254 /* Pattern matching succeeded */
5255#line 5255 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5256 goto tmp2_done;
5257 }
5258 }
5259 goto tmp2_end;
5260 tmp2_end: ;
5261 }
5262 goto goto_1;
5263 goto_1:;
5264 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5265 goto tmp2_done;
5266 tmp2_done:;
5267 }
5268 }
5269 ;
5270 _return: OMC_LABEL_UNUSED__attribute__((unused))
5271 return;
5272}
5273
5274DLLExport
5275modelica_metatype omc_NFClassTree_ClassTree_clone(threadData_t *threadData, modelica_metatype _tree)
5276{
5277 modelica_metatype _outTree = NULL((void*)0);
5278 modelica_metatype tmpMeta[2] __attribute__((unused)) = {0};
5279 MMC_SO()mmc_check_stackoverflow(threadData);
5280 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5281 // _outTree has no default value.
5282#line 5282 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5283 { /* match expression */
5284 modelica_metatype tmp3_1;
5285 tmp3_1 = _tree;
5286 {
5287 modelica_metatype _clss = NULL((void*)0);
5288 volatile mmc_switch_type tmp3;
5289 int tmp4;
5290 // _clss has no default value.
5291 tmp3 = 0;
5292 for (; tmp3 < 2; tmp3++) {
5293 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
5294 case 0: {
5295 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,1,6)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((6 +1) <<
10) + (((1 +3) & 255) << 2)))
== 0) goto tmp2_end;
5296
5297 /* Pattern matching succeeded */
5298#line 771 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5299 _clss = arrayCopy((MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 3))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(3)))))
));
5300#line 5300 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5301
5302#line 772 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5303 _clss = omc_Array_mapNoCopy(threadData, _clss, boxvar_NFInstNode_InstNode_clone((void*)((char*)(&(boxvar_lit_NFInstNode_InstNode_clone).
header) + 3))
);
5304#line 5304 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5305#line 773 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5306 tmpMeta[1] = mmc_mk_box7(4, &NFClassTree_ClassTree_EXPANDED__TREE__desc, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(2)))))
), _clss, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 4))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(4)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(5)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 6))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(6)))))
), (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_tree), 7))(*(void**)(((void*)((void**)(((void*)((char*)(_tree) - 3))) +
(7)))))
));
5307#line 773 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5308 tmpMeta[0] = tmpMeta[1];
5309#line 5309 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5310 goto tmp2_done;
5311 }
5312 case 1: {
5313
5314 /* Pattern matching succeeded */
5315#line 776 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5316 tmpMeta[0] = _tree;
5317#line 5317 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5318 goto tmp2_done;
5319 }
5320 }
5321 goto tmp2_end;
5322 tmp2_end: ;
5323 }
5324 goto goto_1;
5325 goto_1:;
5326 MMC_THROW_INTERNAL(){longjmp(*threadData->mmc_jumper,1);};
5327 goto tmp2_done;
5328 tmp2_done:;
5329 }
5330 }
5331 _outTree = tmpMeta[0];
5332 _return: OMC_LABEL_UNUSED__attribute__((unused))
5333 return _outTree;
5334}
5335
5336DLLExport
5337modelica_metatype omc_NFClassTree_ClassTree_fromRecordConstructor(threadData_t *threadData, modelica_metatype _fields, modelica_metatype _out)
5338{
5339 modelica_metatype _tree = NULL((void*)0);
5340 modelica_metatype _ltree = NULL((void*)0);
5341 modelica_integer _i;
5342 modelica_metatype _comps = NULL((void*)0);
5343 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
5344 MMC_SO()mmc_check_stackoverflow(threadData);
5345 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5346 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5347 tmpMeta[1] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5348 tmpMeta[2] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5349 tmpMeta[3] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5350 tmpMeta[4] = mmc_mk_box7(3, &NFClassTree_ClassTree_PARTIAL__TREE__desc, _OMC_LIT29((void*)((char*)(&(_OMC_LIT_STRUCT29).header) + 3)), listArray(tmpMeta[0]), listArray(tmpMeta[1]), listArray(tmpMeta[2]), listArray(tmpMeta[3]), _OMC_LIT30((void*)((char*)(&(_OMC_LIT_STRUCT30).header) + 3)));
5351 _tree = tmpMeta[4];
5352 _ltree = omc_NFClassTree_LookupTree_new(threadData);
5353 _i = ((modelica_integer) 1);
5354 // _comps has no default value.
5355#line 747 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5356 _comps = arrayCreateNoInit(((modelica_integer) 1) + listLength(_fields), _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)));
5357#line 5357 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5358
5359#line 749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5360 {
5361#line 749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5362 modelica_metatype _ci;
5363#line 749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5364 for (tmpMeta[5] = _fields; !listEmpty(tmpMeta[5])((*(mmc_uint_t*)((void*)((char*)(tmpMeta[5]) - 3))) == (((0) <<
10) + (((0) & 255) << 2)))
; tmpMeta[5]=MMC_CDR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (2)))))
)
5365#line 749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5366 {
5367#line 749 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5368 _ci = MMC_CAR(tmpMeta[5])(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[5]) - 3
))) + (1)))))
;
5369#line 750 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5370 arrayUpdate(_comps,_i,_ci)boxptr_arrayUpdate(threadData,_comps,mmc_mk_icon(_i),_ci);
5371#line 5371 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5372
5373#line 751 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5374 tmpMeta[6] = mmc_mk_box2(4, &NFClassTree_LookupTree_Entry_COMPONENT__desc, mmc_mk_integermmc_mk_icon(_i));
5375#line 751 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5376 _ltree = omc_NFClassTree_ClassTree_addLocalElement(threadData, omc_NFInstNode_InstNode_name(threadData, _ci), tmpMeta[6], _tree, _ltree);
5377#line 5377 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5378
5379#line 752 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5380 _i = ((modelica_integer) 1) + _i;
5381#line 5381 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5382 }
5383 }
5384
5385#line 755 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5386 arrayUpdate(_comps,_i,_out)boxptr_arrayUpdate(threadData,_comps,mmc_mk_icon(_i),_out);
5387#line 5387 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5388
5389#line 756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5390 tmpMeta[5] = mmc_mk_box2(4, &NFClassTree_LookupTree_Entry_COMPONENT__desc, mmc_mk_integermmc_mk_icon(_i));
5391#line 756 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5392 _ltree = omc_NFClassTree_ClassTree_addLocalElement(threadData, omc_NFInstNode_InstNode_name(threadData, _out), tmpMeta[5], _tree, _ltree);
5393#line 5393 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5394
5395#line 758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5396 tmpMeta[5] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5397#line 758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5398 tmpMeta[6] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5399#line 758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5400 tmpMeta[7] = mmc_mk_box6(6, &NFClassTree_ClassTree_FLAT__TREE__desc, _ltree, listArray(tmpMeta[5]), _comps, listArray(tmpMeta[6]), omc_NFClassTree_DuplicateTree_new(threadData));
5401#line 758 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5402 _tree = tmpMeta[7];
5403#line 5403 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5404 _return: OMC_LABEL_UNUSED__attribute__((unused))
5405 return _tree;
5406}
5407
5408DLLExport
5409modelica_metatype omc_NFClassTree_ClassTree_instantiate(threadData_t *threadData, modelica_metatype _D_24in_clsNode, modelica_metatype _D_24in_instance, modelica_metatype _scope, modelica_metatype *out_instance, modelica_integer *out_classCount, modelica_integer *out_compCount)
5410{
5411 modelica_metatype _clsNode = NULL((void*)0);
5412 modelica_metatype _instance = NULL((void*)0);
5413 modelica_integer _classCount;
5414 modelica_integer _compCount;
5415 modelica_metatype _cls = NULL((void*)0);
5416 modelica_metatype _tree = NULL((void*)0);
5417 modelica_metatype _ext_tree = NULL((void*)0);
5418 modelica_metatype _ltree = NULL((void*)0);
5419 modelica_metatype _exts = NULL((void*)0);
5420 modelica_metatype _old_clss = NULL((void*)0);
5421 modelica_metatype _old_comps = NULL((void*)0);
5422 modelica_metatype _imps = NULL((void*)0);
5423 modelica_metatype _clss = NULL((void*)0);
5424 modelica_metatype _comps = NULL((void*)0);
5425 modelica_metatype _ext_clss = NULL((void*)0);
5426 modelica_metatype _local_comps = NULL((void*)0);
5427 modelica_integer _cls_idx;
5428 modelica_integer _comp_idx;
5429 modelica_integer _cls_count;
5430 modelica_integer _comp_count;
5431 modelica_metatype _node = NULL((void*)0);
5432 modelica_metatype _parent_scope = NULL((void*)0);
5433 modelica_metatype _inner_node = NULL((void*)0);
5434 modelica_metatype _inst_scope = NULL((void*)0);
5435 modelica_metatype _dups = NULL((void*)0);
5436 modelica_metatype _comp = NULL((void*)0);
5437 modelica_metatype _ext_def = NULL((void*)0);
5438 modelica_boolean _is_typish;
5439 modelica_metatype tmpMeta[8] __attribute__((unused)) = {0};
5440 MMC_SO()mmc_check_stackoverflow(threadData);
5441 _tailrecursive: OMC_LABEL_UNUSED__attribute__((unused))
5442 _clsNode = _D_24in_clsNode;
5443 _instance = _D_24in_instance;
5444 _classCount = ((modelica_integer) 0);
5445 _compCount = ((modelica_integer) 0);
5446 // _cls has no default value.
5447 // _tree has no default value.
5448 // _ext_tree has no default value.
5449 // _ltree has no default value.
5450 // _exts has no default value.
5451 // _old_clss has no default value.
5452 // _old_comps has no default value.
5453 // _imps has no default value.
5454 // _clss has no default value.
5455 // _comps has no default value.
5456 // _ext_clss has no default value.
5457 tmpMeta[0] = MMC_REFSTRUCTLIT(mmc_nil)((void*)((char*)(&(mmc_nil).header) + 3));
5458 _local_comps = tmpMeta[0];
5459 _cls_idx = ((modelica_integer) 1);
5460 _comp_idx = ((modelica_integer) 1);
5461 // _cls_count has no default value.
5462 // _comp_count has no default value.
5463 // _node has no default value.
5464 // _parent_scope has no default value.
5465 // _inner_node has no default value.
5466 // _inst_scope has no default value.
5467 // _dups has no default value.
5468 // _comp has no default value.
5469 // _ext_def has no default value.
5470 // _is_typish has no default value.
5471#line 557 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5472 _cls = omc_NFInstNode_InstNode_getClass(threadData, _clsNode);
5473#line 5473 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5474
5475#line 558 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5476 _clsNode = omc_NFInstNode_InstNode_replaceClass(threadData, _cls, _clsNode);
5477#line 5477 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5478
5479#line 5479 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5480 { /* match expression */
5481 modelica_metatype tmp3_1;
5482 tmp3_1 = _cls;
5483 {
5484 volatile mmc_switch_type tmp3;
5485 int tmp4;
5486 tmp3 = 0;
5487 for (; tmp3 < 6; tmp3++) {
5488 switch (MMC_SWITCH_CAST(tmp3)(tmp3)) {
5489 case 0: {
5490 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,4)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((4 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
5491 tmpMeta[1] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp3_1), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmp3_1) - 3))) +
(2)))))
;
5492 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],2,7)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((7 +1)
<< 10) + (((2 +3) & 255) << 2)))
== 0) goto tmp2_end;
5493
5494 /* Pattern matching succeeded */
5495#line 5495 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5496 goto tmp2_done;
5497 }
5498 case 1: {
5499 modelica_integer tmp5;
5500 modelica_integer tmp6;
5501 modelica_integer tmp7;
5502 modelica_integer tmp8;
5503 modelica_integer tmp9;
5504 modelica_integer tmp14;
5505 modelica_integer tmp15;
5506 modelica_integer tmp20;
5507 modelica_integer tmp21;
5508 if (mmc__uniontype__metarecord__typedef__equal(tmp3_1,3,4)((*(mmc_uint_t*)((void*)((char*)(tmp3_1) - 3)))==(((4 +1) <<
10) + (((3 +3) & 255) << 2)))
== 0) goto tmp2_end;
5509
5510 /* Pattern matching succeeded */
5511#line 567 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5512 if(omc_NFInstNode_InstNode_isEmpty(threadData, _instance))
5513#line 567 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5514 {
5515#line 568 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5516 _instance = _clsNode;
5517#line 5517 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5518
5519#line 569 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5520 _parent_scope = omc_NFInstNode_InstNode_parent(threadData, _clsNode);
5521#line 5521 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5522 }
5523 else
5524 {
5525#line 571 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5526 _parent_scope = _instance;
5527#line 5527 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5528
5529#line 572 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5530 _inst_scope = _scope;
Value stored to '_inst_scope' is never read
5531#line 5531 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5532 }
5533
5534#line 575 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5535 _inst_scope = (omc_NFInstNode_InstNode_isEmpty(threadData, _scope)?_instance:_scope);
5536#line 5536 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5537
5538#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5539 /* Pattern-matching assignment */
5540#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5541 tmpMeta[1] = (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls), 2))(*(void**)(((void*)((void**)(((void*)((char*)(_cls) - 3))) + (
2)))))
);
5542#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5543 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,6)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((6 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto goto_1;
5544#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5545 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 2))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (2)))))
;
5546#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5547 tmpMeta[3] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
5548#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5549 tmpMeta[4] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 4))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (4)))))
;
5550#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5551 tmpMeta[5] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 5))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (5)))))
;
5552#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5553 tmpMeta[6] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 6))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (6)))))
;
5554#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5555 tmpMeta[7] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 7))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (7)))))
;
5556#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5557 _ltree = tmpMeta[2];
5558#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5559 _old_clss = tmpMeta[3];
5560#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5561 _old_comps = tmpMeta[4];
5562#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5563 _exts = tmpMeta[5];
5564#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5565 _imps = tmpMeta[6];
5566#line 578 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5567 _dups = tmpMeta[7];
5568#line 5568 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5569
5570#line 581 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5571 _classCount = arrayLength(_old_clss);
5572#line 5572 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5573
5574#line 584 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5575 _compCount = arrayLength(_old_comps) - arrayLength(_exts);
5576#line 5576 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5577
5578#line 587 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5579 _exts = arrayCopy(_exts);
5580#line 5580 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5581
5582#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5583 tmp5 = ((modelica_integer) 1); tmp6 = 1; tmp7 = arrayLength(_exts);
5584#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5585 if(!(((tmp6 > 0) && (tmp5 > tmp7)) || ((tmp6 < 0) && (tmp5 < tmp7))))
5586#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5587 {
5588#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5589 modelica_integer _i;
5590#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5591 for(_i = ((modelica_integer) 1); in_range_integer(_i, tmp5, tmp7); _i += tmp6)
5592#line 588 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5593 {
5594#line 590 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5595 _node = arrayGet(_exts,_i)nobox_arrayGet(threadData,_exts,_i) /* DAE.ASUB */;
5596#line 5596 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5597
5598#line 591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5599 /* Pattern-matching assignment */
5600#line 591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5601 tmpMeta[1] = omc_NFInstNode_InstNode_nodeType(threadData, _node);
5602#line 591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5603 if (mmc__uniontype__metarecord__typedef__equal(tmpMeta[1],1,2)((*(mmc_uint_t*)((void*)((char*)(tmpMeta[1]) - 3)))==(((2 +1)
<< 10) + (((1 +3) & 255) << 2)))
== 0) goto goto_1;
5604#line 591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5605 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmpMeta[1]), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmpMeta[1]) - 3
))) + (3)))))
;
5606#line 591 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5607 _ext_def = tmpMeta[2];
5608#line 5608 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5609
5610#line 592 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5611 tmpMeta[1] = mmc_mk_box3(4, &NFInstNode_InstNodeType_BASE__CLASS__desc, _instance, _ext_def);
5612#line 592 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5613 _node = omc_NFInstNode_InstNode_setNodeType(threadData, tmpMeta[1], _node);
5614#line 5614 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5615
5616#line 594 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5617 _node = omc_NFClassTree_ClassTree_instantiate(threadData, _node, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3)), _inst_scope ,NULL((void*)0) ,&_cls_count ,&_comp_count);
5618#line 5618 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5619
5620#line 595 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5621 arrayUpdate(_exts,_i,_node)boxptr_arrayUpdate(threadData,_exts,mmc_mk_icon(_i),_node);
5622#line 5622 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5623
5624#line 598 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5625 _classCount = _cls_count + _classCount;
5626#line 5626 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5627
5628#line 599 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5629 _compCount = _comp_count + _compCount;
5630#line 5630 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5631 }
5632 }
5633
5634#line 603 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5635 _comps = arrayCreateNoInit(_compCount, omc_Mutable_create(threadData, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))));
5636#line 5636 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5637
5638#line 604 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5639 _clss = arrayCreateNoInit(_classCount, omc_Mutable_create(threadData, _OMC_LIT28((void*)((char*)(&(_OMC_LIT_STRUCT28).header) + 3))));
5640#line 5640 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5641
5642#line 608 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5643 _is_typish = ((omc_NFRestriction_isType(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_cls) - 3))) + (
5)))))
)) || omc_NFRestriction_isOperatorRecord(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_cls) - 3))) + (
5)))))
))) || omc_NFRestriction_isOperator(threadData, (MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(_cls), 5))(*(void**)(((void*)((void**)(((void*)((char*)(_cls) - 3))) + (
5)))))
)));
5644#line 5644 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5645
5646#line 612 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5647 {
5648#line 612 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5649 modelica_metatype _c;
5650#line 612 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5651 for (tmpMeta[1] = _old_clss, tmp9 = arrayLength(tmpMeta[1]), tmp8 = 1; tmp8 <= tmp9; tmp8++)
5652#line 612 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5653 {
5654#line 612 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5655 _c = arrayGet(tmpMeta[1],tmp8)nobox_arrayGet(threadData,tmpMeta[1],tmp8);
5656#line 613 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5657 if(_is_typish)
5658#line 613 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5659 {
5660#line 614 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5661 _c = omc_NFInstNode_InstNode_setParent(threadData, _clsNode, _c);
5662#line 5662 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5663 }
5664 else
5665 {
5666#line 616 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5667 _c = omc_NFInstNode_InstNode_clone(threadData, _c);
5668#line 5668 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5669
5670#line 617 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5671 _c = omc_NFInstNode_InstNode_setParent(threadData, _instance, _c);
5672#line 5672 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5673 }
5674
5675#line 622 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5676 if(omc_NFInstNode_InstNode_isOuter(threadData, _c))
5677#line 622 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5678 {
5679#line 623 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5680 omc_NFClassTree_ClassTree_checkOuterClass(threadData, _c);
5681#line 5681 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5682
5683#line 624 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5684 _c = omc_NFClassTree_ClassTree_linkInnerOuter(threadData, _c, _parent_scope);
5685#line 5685 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5686 }
5687
5688#line 627 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5689 arrayUpdateNoBoundsChecking(_clss, _cls_idx, omc_Mutable_create(threadData, _c))boxptr_arrayUpdateNoBoundsChecking(threadData,_clss,mmc_mk_icon
(_cls_idx),omc_Mutable_create(threadData, _c))
;
5690#line 5690 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5691
5692#line 628 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5693 _cls_idx = ((modelica_integer) 1) + _cls_idx;
5694#line 5694 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5695 }
5696 }
5697
5698#line 635 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5699 {
5700#line 635 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5701 modelica_metatype _ext;
5702#line 635 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5703 for (tmpMeta[1] = _exts, tmp15 = arrayLength(tmpMeta[1]), tmp14 = 1; tmp14 <= tmp15; tmp14++)
5704#line 635 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5705 {
5706#line 635 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5707 _ext = arrayGet(tmpMeta[1],tmp14)nobox_arrayGet(threadData,tmpMeta[1],tmp14);
5708#line 5708 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5709 { /* match expression */
5710 modelica_metatype tmp12_1;
5711 tmp12_1 = omc_NFClass_Class_classTree(threadData, omc_NFInstNode_InstNode_getClass(threadData, _ext));
5712 {
5713 volatile mmc_switch_type tmp12;
5714 int tmp13;
5715 tmp12 = 0;
5716 for (; tmp12 < 2; tmp12++) {
5717 switch (MMC_SWITCH_CAST(tmp12)(tmp12)) {
5718 case 0: {
5719 if (mmc__uniontype__metarecord__typedef__equal(tmp12_1,2,7)((*(mmc_uint_t*)((void*)((char*)(tmp12_1) - 3)))==(((7 +1) <<
10) + (((2 +3) & 255) << 2)))
== 0) goto tmp11_end;
5720 tmpMeta[2] = MMC_FETCH(MMC_OFFSET(MMC_UNTAGPTR(tmp12_1), 3))(*(void**)(((void*)((void**)(((void*)((char*)(tmp12_1) - 3)))
+ (3)))))
;
5721
5722 _ext_clss = tmpMeta[2];
5723 /* Pattern matching succeeded */
5724#line 639 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5725 _cls_count = arrayLength(_ext_clss);
5726#line 5726 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5727
5728#line 641 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5729 if((_cls_count > ((modelica_integer) 0)))
5730#line 641 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5731 {
5732#line 642 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5733 omc_Array_copyRange(threadData, _ext_clss, _clss, ((modelica_integer) 1), _cls_count, _cls_idx);
5734#line 5734 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5735
5736#line 643 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5737 _cls_idx = _cls_idx + _cls_count;
5738#line 5738 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5739 }
5740#line 5740 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5741 goto tmp11_done;
5742 }
5743 case 1: {
5744
5745 /* Pattern matching succeeded */
5746#line 5746 OMC_FILE"/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/boot/build/tmp/NFClassTree.c"
5747 goto tmp11_done;
5748 }
5749 }
5750 goto tmp11_end;
5751 tmp11_end: ;
5752 }
5753 goto goto_10;
5754 goto_10:;
5755 goto goto_1;
5756 goto tmp11_done;
5757 tmp11_done:;
5758 }
5759 }
5760 ;
5761 }
5762 }
5763
5764#line 653 "/var/lib/jenkins1/ws/iodic_Jenkins.slow_omlib-staging/OMCompiler/Compiler/NFFrontEnd/NFClassTree.mo"
5765 {