bmx-ng / bcc

A next-generation bcc parser for BlitzMax
zlib License
33 stars 12 forks source link

Faulty c code generated #205

Closed Tricky1975 closed 8 years ago

Tricky1975 commented 8 years ago

I am currently coding an RPG using BlitzMax original. I have a separate tool I coded to set up the enemies the player will meet. I used this tool to try out BlitzMax NG (it works if "Vanilla" and it's not that important this tools works in NG, I only did this for testing), and I got this error:

Building FoeEditor
[ 91%] Processing:database.bmx
[ 92%] Compiling:database.bmx.debug.macos.x86.c
[ 93%] Processing:basegui.bmx
[ 93%] Compiling:basegui.bmx.debug.macos.x86.c
/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/.bmx/basegui.bmx.debug.macos.x86.c:761:21: error: use of undeclared identifier '_bb_imp_basegui_ib_1'
                bbIncbinAdd(&_s0,&_bb_imp_basegui_ib_1,60594);
                                  ^
1 error generated.
Build Error: failed to compile /Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/.bmx/basegui.bmx.debug.macos.x86.c
Process complete

Now I only know the basics of C, this code was actually generated by BlitzMax NG, I shall throw a zip file with the source code in this issue so we can figure out if this is my fault or a bug in the translation to C. The full generated code in C for this file is this:

#include "basegui.bmx.debug.macos.x86.h"
#include "basegui.bmx.debug.macos.x86.incbin.h"
static BBString _s10={
    &bbStringClass,
    21,
    {32,32,32,32,40,69,108,101,109,101,110,116,32,112,114,101,102
    ,105,120,58,32}
};
static BBString _s12={
    &bbStringClass,
    1,
    {41}
};
static BBString _s2={
    &bbStringClass,
    8,
    {49,53,46,48,57,46,50,48}
};
static BBString _s13={
    &bbStringClass,
    36,
    {65,117,116,111,45,115,101,116,116,105,110,103,115,32,111,116,104
    ,101,114,32,101,108,101,109,101,110,116,32,98,117,116,116,111
    ,110,115,33}
};
static BBString _s11={
    &bbStringClass,
    8,
    {69,76,69,77,69,78,84,46}
};
static BBString _s4={
    &bbStringClass,
    12,
    {70,111,101,32,69,100,105,116,111,114,32,118}
};
static BBString _s0={
    &bbStringClass,
    13,
    {70,111,101,69,100,105,116,111,114,46,112,110,103}
};
static BBString _s3={
    &bbStringClass,
    28,
    {71,78,85,32,71,101,110,101,114,97,108,32,80,117,98,108,105
    ,99,32,76,105,99,101,110,115,101,32,51}
};
static BBString _s1={
    &bbStringClass,
    22,
    {76,65,85,82,65,32,73,73,32,45,32,98,97,115,101,103,117
    ,105,46,98,109,120}
};
static BBString _s9={
    &bbStringClass,
    16,
    {83,101,116,116,105,110,103,32,98,117,116,116,111,110,58,32}
};
static BBString _s6={
    &bbStringClass,
    25,
    {87,65,82,78,73,78,71,33,32,73,99,111,110,32,110,111,116
    ,32,108,111,97,100,101,100,33}
};
static BBString _s7={
    &bbStringClass,
    5,
    {102,97,108,115,101}
};
static BBString _s5={
    &bbStringClass,
    21,
    {105,110,99,98,105,110,58,58,70,111,101,69,100,105,116,111,114
    ,46,112,110,103}
};
static BBString _s8={
    &bbStringClass,
    4,
    {116,114,117,101}
};
struct BBDebugScope_1{int kind; const char *name; BBDebugDecl decls[2]; };
struct BBDebugScope_2{int kind; const char *name; BBDebugDecl decls[3]; };
struct BBDebugScope_4{int kind; const char *name; BBDebugDecl decls[5]; };
struct BBDebugScope_5{int kind; const char *name; BBDebugDecl decls[6]; };
struct BBDebugScope_6{int kind; const char *name; BBDebugDecl decls[7]; };
struct BBDebugScope_7{int kind; const char *name; BBDebugDecl decls[8]; };
BBINT _m_basegui_DW=0;
BBINT _m_basegui_DH=0;
struct maxgui_maxgui_gadget_TGadget_obj* _m_basegui_Win=&bbNullObject;
struct brl_pixmap_TPixmap_obj* _m_basegui_Pix=&bbNullObject;
struct maxgui_maxgui_gadget_TGadget_obj* _m_basegui_Lgo=&bbNullObject;
BBINT _m_basegui_WW=0;
BBINT _m_basegui_WH=0;
struct brl_map_TMap_obj* _m_basegui_GAction=&bbNullObject;
struct brl_map_TMap_obj* _m_basegui_GSELECT=&bbNullObject;
BBINT _m_basegui_EID=0;
struct maxgui_maxgui_gadget_TGadget_obj* _m_basegui_ESource=&bbNullObject;
void __m_basegui_TCallBack_New(struct _m_basegui_TCallBack_obj* o) {
    bbObjectCtor(o);
    o->clas = (BBClass*)&_m_basegui_TCallBack;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_f = &brl_blitz_NullFunctionError;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_c = &brl_blitz_NullFunctionError;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_tcon = 0;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_ge = 0;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_g = &bbNullObject;
    if (o == &bbNullObject) brl_blitz_NullObjectError();
    o->__m_basegui_tcallback_v = &bbEmptyString;
}
struct BBDebugScope_7 _m_basegui_TCallBack_scope ={
    BBDEBUGSCOPE_USERTYPE,
    "TCallBack",
    {
        {
            BBDEBUGDECL_FIELD,
            "f",
            "()i",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_f)
        },
        {
            BBDEBUGDECL_FIELD,
            "c",
            "()i",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_c)
        },
        {
            BBDEBUGDECL_FIELD,
            "tcon",
            "i",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_tcon)
        },
        {
            BBDEBUGDECL_FIELD,
            "ge",
            "i",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_ge)
        },
        {
            BBDEBUGDECL_FIELD,
            "g",
            ":TGadget",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_g)
        },
        {
            BBDEBUGDECL_FIELD,
            "v",
            "$",
            .field_offset=offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_v)
        },
        {
            BBDEBUGDECL_TYPEMETHOD,
            "New",
            "()i",
            &__m_basegui_TCallBack_New
        },
        BBDEBUGDECL_END
    }
};
struct BBClass__m_basegui_TCallBack _m_basegui_TCallBack={
    &bbObjectClass,
    bbObjectFree,
    &_m_basegui_TCallBack_scope,
    sizeof(struct _m_basegui_TCallBack_obj),
    __m_basegui_TCallBack_New,
    bbObjectDtor,
    bbObjectToString,
    bbObjectCompare,
    bbObjectSendMessage,
    0,
    0,
    offsetof(struct _m_basegui_TCallBack_obj,__m_basegui_tcallback_v) - sizeof(void*) + sizeof(BBSTRING)
};

BBINT _m_basegui_ATrue(){
    struct BBDebugScope __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "ATrue",
        {
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 62, 0};
    bbOnDebugEnterStm(&__stmt_0);
    bbOnDebugLeaveScope();
    return 1;
}
BBINT _m_basegui_AddCallBack(struct brl_map_TMap_obj** bbt_M,BBOBJECT bbt_Obj,BBINT(* bbt_func)(),BBINT(* bbt_condition)(),BBINT bbt_tcon){
    struct _m_basegui_TCallBack_obj* volatile bbt_tb=&bbNullObject;
    struct BBDebugScope_6 __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "AddCallBack",
        {
            {
                BBDEBUGDECL_VARPARAM,
                "M",
                ":TMap",
                .var_address=&bbt_M
            },
            {
                BBDEBUGDECL_LOCAL,
                "Obj",
                ":Object",
                .var_address=&bbt_Obj
            },
            {
                BBDEBUGDECL_LOCAL,
                "func",
                "()i",
                .var_address=&bbt_func
            },
            {
                BBDEBUGDECL_LOCAL,
                "condition",
                "()i",
                .var_address=&bbt_condition
            },
            {
                BBDEBUGDECL_LOCAL,
                "tcon",
                "i",
                .var_address=&bbt_tcon
            },
            {
                BBDEBUGDECL_LOCAL,
                "tb",
                ":TCallBack",
                .var_address=&bbt_tb
            },
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 65, 0};
    bbOnDebugEnterStm(&__stmt_0);
    bbt_tb=bbObjectNew(&_m_basegui_TCallBack);
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 66, 0};
    bbOnDebugEnterStm(&__stmt_1);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_f =bbt_func;
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 67, 0};
    bbOnDebugEnterStm(&__stmt_2);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_c =bbt_condition;
    struct BBDebugStm __stmt_3 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 68, 0};
    bbOnDebugEnterStm(&__stmt_3);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_tcon =bbt_tcon;
    struct BBDebugStm __stmt_4 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 69, 0};
    bbOnDebugEnterStm(&__stmt_4);
    if(!(*bbt_M!= &bbNullObject)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 69, 0};
        bbOnDebugEnterStm(&__stmt_0);
        *bbt_M=bbObjectNew(&brl_map_TMap);
        bbOnDebugLeaveScope();
    }
    struct BBDebugStm __stmt_5 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 70, 0};
    bbOnDebugEnterStm(&__stmt_5);
    brl_map_MapInsert(*bbt_M,bbt_Obj,bbt_tb);
    bbOnDebugLeaveScope();
    return 0;
}
BBINT _m_basegui_AddTFCallBack(struct maxgui_maxgui_gadget_TGadget_obj* bbt_gadget,BBSTRING bbt_v,BBINT(* bbt_condition)(),BBINT bbt_tcon){
    struct _m_basegui_TCallBack_obj* volatile bbt_tb=&bbNullObject;
    struct BBDebugScope_5 __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "AddTFCallBack",
        {
            {
                BBDEBUGDECL_LOCAL,
                "gadget",
                ":TGadget",
                .var_address=&bbt_gadget
            },
            {
                BBDEBUGDECL_LOCAL,
                "v",
                "$",
                .var_address=&bbt_v
            },
            {
                BBDEBUGDECL_LOCAL,
                "condition",
                "()i",
                .var_address=&bbt_condition
            },
            {
                BBDEBUGDECL_LOCAL,
                "tcon",
                "i",
                .var_address=&bbt_tcon
            },
            {
                BBDEBUGDECL_LOCAL,
                "tb",
                ":TCallBack",
                .var_address=&bbt_tb
            },
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 74, 0};
    bbOnDebugEnterStm(&__stmt_0);
    bbt_tb=bbObjectNew(&_m_basegui_TCallBack);
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 75, 0};
    bbOnDebugEnterStm(&__stmt_1);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_g =bbt_gadget;
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 76, 0};
    bbOnDebugEnterStm(&__stmt_2);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_v =bbt_v;
    struct BBDebugStm __stmt_3 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 77, 0};
    bbOnDebugEnterStm(&__stmt_3);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_c =bbt_condition;
    struct BBDebugStm __stmt_4 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 78, 0};
    bbOnDebugEnterStm(&__stmt_4);
    if (bbt_tb == &bbNullObject) brl_blitz_NullObjectError();
    bbt_tb->__m_basegui_tcallback_tcon =bbt_tcon;
    struct BBDebugStm __stmt_5 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 79, 0};
    bbOnDebugEnterStm(&__stmt_5);
    if(!(_m_basegui_GAction!= &bbNullObject)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 79, 0};
        bbOnDebugEnterStm(&__stmt_0);
        _m_basegui_GAction=bbObjectNew(&brl_map_TMap);
        bbOnDebugLeaveScope();
    }
    struct BBDebugStm __stmt_6 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 80, 0};
    bbOnDebugEnterStm(&__stmt_6);
    brl_map_MapInsert(_m_basegui_GAction,bbt_gadget,bbt_tb);
    bbOnDebugLeaveScope();
    return 0;
}
BBINT _m_basegui_CallBack(struct brl_map_TMap_obj* bbt_M,BBOBJECT bbt_Obj){
    BBARRAY bbt_statestring=&bbEmptyArray;
    struct _m_basegui_TCallBack_obj* volatile bbt_T=&bbNullObject;
    struct BBDebugScope_4 __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "CallBack",
        {
            {
                BBDEBUGDECL_LOCAL,
                "M",
                ":TMap",
                .var_address=&bbt_M
            },
            {
                BBDEBUGDECL_LOCAL,
                "Obj",
                ":Object",
                .var_address=&bbt_Obj
            },
            {
                BBDEBUGDECL_LOCAL,
                "statestring",
                "[]$",
                .var_address=&bbt_statestring
            },
            {
                BBDEBUGDECL_LOCAL,
                "T",
                ":TCallBack",
                .var_address=&bbt_T
            },
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 89, 0};
    bbOnDebugEnterStm(&__stmt_0);
    BBSTRING bbt_[]={&_s7,&_s8};
    BBARRAY bbt_2 = bbArrayFromData("$",2,bbt_);
    bbt_statestring=bbt_2;
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 90, 0};
    bbOnDebugEnterStm(&__stmt_1);
    if(!(bbt_M!= &bbNullObject)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 90, 0};
        bbOnDebugEnterStm(&__stmt_0);
        bbOnDebugLeaveScope();
        bbOnDebugLeaveScope();
        return 0;
    }
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 91, 0};
    bbOnDebugEnterStm(&__stmt_2);
    bbt_T=((struct _m_basegui_TCallBack_obj*)bbObjectDowncast(brl_map_MapValueForKey(bbt_M,bbt_Obj),&_m_basegui_TCallBack));
    struct BBDebugStm __stmt_3 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 92, 0};
    bbOnDebugEnterStm(&__stmt_3);
    if(!(bbt_T!= &bbNullObject)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 92, 0};
        bbOnDebugEnterStm(&__stmt_0);
        bbOnDebugLeaveScope();
        bbOnDebugLeaveScope();
        return 0;
    }
    struct BBDebugStm __stmt_4 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 93, 0};
    bbOnDebugEnterStm(&__stmt_4);
    if((bbt_T->__m_basegui_tcallback_f !=0) && (bbt_T->__m_basegui_tcallback_f !=&brl_blitz_NullFunctionError)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 93, 0};
        bbOnDebugEnterStm(&__stmt_0);
        bbt_T->__m_basegui_tcallback_f();
        bbOnDebugLeaveScope();
    }
    struct BBDebugStm __stmt_5 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 94, 0};
    bbOnDebugEnterStm(&__stmt_5);
    if(bbt_T->__m_basegui_tcallback_g != &bbNullObject){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 95, 0};
        bbOnDebugEnterStm(&__stmt_0);
        if (bbt_T == &bbNullObject) brl_blitz_NullObjectError();
        BBINT bbt_3=maxgui_maxgui_GadgetClass(bbt_T->__m_basegui_tcallback_g );
        struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 96, 0};
        bbOnDebugEnterStm(&__stmt_1);
        if(bbt_3==2){
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 97, 0};
            bbOnDebugEnterStm(&__stmt_0);
            if (bbt_T == &bbNullObject) brl_blitz_NullObjectError();
            if (bbt_T == &bbNullObject) brl_blitz_NullObjectError();
            (_m_database_rec)->clas->m_D_SS(_m_database_rec,bbt_T->__m_basegui_tcallback_v ,((BBSTRING*)BBARRAYDATAINDEX((bbt_statestring),(bbt_statestring)->dims,((BBUINT)maxgui_maxgui_ButtonState(bbt_T->__m_basegui_tcallback_g ))))[((BBUINT)maxgui_maxgui_ButtonState(bbt_T->__m_basegui_tcallback_g ))]);
            struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 98, 0};
            bbOnDebugEnterStm(&__stmt_1);
            brl_standardio_Print(bbStringConcat(bbStringConcat(bbStringConcat(bbStringConcat(&_s9,bbt_T->__m_basegui_tcallback_v ),&_s10),bbStringFromInt(tricky_units_prefixsuffix_import_import_prefixsuffix_Prefixed(brl_retro_Upper(bbt_T->__m_basegui_tcallback_v ),&_s11,0))),&_s12));
            struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 99, 0};
            bbOnDebugEnterStm(&__stmt_2);
            if(tricky_units_prefixsuffix_import_import_prefixsuffix_Prefixed(brl_retro_Upper(bbt_T->__m_basegui_tcallback_v ),&_s11,0)!=0){
                struct BBDebugScope __scope = {
                    BBDEBUGSCOPE_LOCALBLOCK,
                    0,
                    {
                        BBDEBUGDECL_END 
                    }
                };
                bbOnDebugEnterScope(&__scope);
                struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 100, 0};
                bbOnDebugEnterStm(&__stmt_0);
                brl_standardio_Print(&_s13);
                struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 101, 0};
                bbOnDebugEnterStm(&__stmt_1);
                struct brl_map_TMapEnumerator_obj* volatile bbt_4=brl_map_MapValues(bbt_M);
                struct brl_map_TNodeEnumerator_obj* volatile bbt_5=(bbt_4)->clas->m_ObjectEnumerator(bbt_4);
                while((bbt_5)->clas->m_HasNext(bbt_5)!=0){
                    struct _m_basegui_TCallBack_obj* volatile bbt_tt=&bbNullObject;
                    struct BBDebugScope_1 __scope = {
                        BBDEBUGSCOPE_LOCALBLOCK,
                        0,
                        {
                            {
                                BBDEBUGDECL_LOCAL,
                                "tt",
                                ":TCallBack",
                                .var_address=&bbt_tt
                            },
                            BBDEBUGDECL_END 
                        }
                    };
                    bbOnDebugEnterScope(&__scope);
                    bbt_tt=((struct _m_basegui_TCallBack_obj*)bbObjectDowncast((bbt_5)->clas->m_NextObject(bbt_5),&_m_basegui_TCallBack));
                    if(bbt_tt==&bbNullObject){
                        bbOnDebugLeaveScope();
                        continue;
                    }
                    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 103, 0};
                    bbOnDebugEnterStm(&__stmt_0);
                    if((bbt_tt->__m_basegui_tcallback_g != &bbNullObject) && (tricky_units_prefixsuffix_import_import_prefixsuffix_Prefixed(brl_retro_Upper(bbt_tt->__m_basegui_tcallback_v ),&_s11,0)!=0)){
                        struct BBDebugScope __scope = {
                            BBDEBUGSCOPE_LOCALBLOCK,
                            0,
                            {
                                BBDEBUGDECL_END 
                            }
                        };
                        bbOnDebugEnterScope(&__scope);
                        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 103, 0};
                        bbOnDebugEnterStm(&__stmt_0);
                        if (bbt_tt == &bbNullObject) brl_blitz_NullObjectError();
                        if (bbt_tt == &bbNullObject) brl_blitz_NullObjectError();
                        (_m_database_rec)->clas->m_D_SS(_m_database_rec,bbt_tt->__m_basegui_tcallback_v ,((BBSTRING*)BBARRAYDATAINDEX((bbt_statestring),(bbt_statestring)->dims,((BBUINT)maxgui_maxgui_ButtonState(bbt_tt->__m_basegui_tcallback_g ))))[((BBUINT)maxgui_maxgui_ButtonState(bbt_tt->__m_basegui_tcallback_g ))]);
                        bbOnDebugLeaveScope();
                    }
                    bbOnDebugLeaveScope();
                }
                bbOnDebugLeaveScope();
            }
            bbOnDebugLeaveScope();
        }else{
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 107, 0};
            bbOnDebugEnterStm(&__stmt_0);
            if (bbt_T == &bbNullObject) brl_blitz_NullObjectError();
            if (bbt_T == &bbNullObject) brl_blitz_NullObjectError();
            (_m_database_rec)->clas->m_D_SS(_m_database_rec,bbt_T->__m_basegui_tcallback_v ,maxgui_maxgui_TextFieldText(bbt_T->__m_basegui_tcallback_g ));
            bbOnDebugLeaveScope();
        }
        bbOnDebugLeaveScope();
    }
    bbOnDebugLeaveScope();
    return 0;
}
BBINT _m_basegui_GetEvent(){
    struct BBDebugScope __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "GetEvent",
        {
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 115, 0};
    bbOnDebugEnterStm(&__stmt_0);
    brl_eventqueue_WaitEvent();
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 116, 0};
    bbOnDebugEnterStm(&__stmt_1);
    _m_basegui_EID=brl_eventqueue_EventID();
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 117, 0};
    bbOnDebugEnterStm(&__stmt_2);
    _m_basegui_ESource=((struct maxgui_maxgui_gadget_TGadget_obj*)bbObjectDowncast(brl_eventqueue_EventSource(),&maxgui_maxgui_gadget_TGadget));
    bbOnDebugLeaveScope();
    return 0;
}
BBINT _m_basegui_CheckCallBack(struct brl_map_TMap_obj* bbt_M){
    struct _m_basegui_TCallBack_obj* volatile bbt_TB=&bbNullObject;
    struct BBDebugScope_2 __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "CheckCallBack",
        {
            {
                BBDEBUGDECL_LOCAL,
                "M",
                ":TMap",
                .var_address=&bbt_M
            },
            {
                BBDEBUGDECL_LOCAL,
                "TB",
                ":TCallBack",
                .var_address=&bbt_TB
            },
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 121, 0};
    bbOnDebugEnterStm(&__stmt_0);
    if(!(bbt_M!= &bbNullObject)){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 121, 0};
        bbOnDebugEnterStm(&__stmt_0);
        bbOnDebugLeaveScope();
        bbOnDebugLeaveScope();
        return 0;
    }
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 122, 0};
    bbOnDebugEnterStm(&__stmt_1);
    bbt_TB=&bbNullObject;
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 123, 0};
    bbOnDebugEnterStm(&__stmt_2);
    struct brl_map_TMapEnumerator_obj* volatile bbt_=brl_map_MapKeys(bbt_M);
    struct brl_map_TNodeEnumerator_obj* volatile bbt_2=(bbt_)->clas->m_ObjectEnumerator(bbt_);
    while((bbt_2)->clas->m_HasNext(bbt_2)!=0){
        struct maxgui_maxgui_gadget_TGadget_obj* volatile bbt_G=&bbNullObject;
        struct BBDebugScope_1 __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                {
                    BBDEBUGDECL_LOCAL,
                    "G",
                    ":TGadget",
                    .var_address=&bbt_G
                },
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        bbt_G=((struct maxgui_maxgui_gadget_TGadget_obj*)bbObjectDowncast((bbt_2)->clas->m_NextObject(bbt_2),&maxgui_maxgui_gadget_TGadget));
        if(bbt_G==&bbNullObject){
            bbOnDebugLeaveScope();
            continue;
        }
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 124, 0};
        bbOnDebugEnterStm(&__stmt_0);
        bbt_TB=((struct _m_basegui_TCallBack_obj*)bbObjectDowncast(brl_map_MapValueForKey(bbt_M,bbt_G),&_m_basegui_TCallBack));
        struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 125, 0};
        bbOnDebugEnterStm(&__stmt_1);
        if (bbt_TB == &bbNullObject) brl_blitz_NullObjectError();
        BBINT bbt_3=bbt_TB->__m_basegui_tcallback_tcon ;
        struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 126, 0};
        bbOnDebugEnterStm(&__stmt_2);
        if(bbt_3==1){
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 126, 0};
            bbOnDebugEnterStm(&__stmt_0);
            (bbt_G)->clas->m_SetShow_i(bbt_G,bbt_TB->__m_basegui_tcallback_c());
            bbOnDebugLeaveScope();
        }else{
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 127, 0};
            bbOnDebugEnterStm(&__stmt_0);
            (bbt_G)->clas->m_SetEnabled_i(bbt_G,bbt_TB->__m_basegui_tcallback_c());
            bbOnDebugLeaveScope();
        }
        bbOnDebugLeaveScope();
    }
    bbOnDebugLeaveScope();
    return 0;
}
BBINT _m_basegui_CallBackEvent(){
    struct BBDebugScope __scope = {
        BBDEBUGSCOPE_FUNCTION,
        "CallBackEvent",
        {
            BBDEBUGDECL_END 
        }
    };
    bbOnDebugEnterScope(&__scope);
    struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 133, 0};
    bbOnDebugEnterStm(&__stmt_0);
    BBINT bbt_=_m_basegui_EID;
    struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 134, 0};
    bbOnDebugEnterStm(&__stmt_1);
    if(bbt_==8193){
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 134, 0};
        bbOnDebugEnterStm(&__stmt_0);
        _m_basegui_CallBack(_m_basegui_GAction,_m_basegui_ESource);
        bbOnDebugLeaveScope();
    }else{
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_LOCALBLOCK,
            0,
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 135, 0};
        bbOnDebugEnterStm(&__stmt_0);
        if(bbt_==8195){
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 135, 0};
            bbOnDebugEnterStm(&__stmt_0);
            _m_basegui_CallBack(_m_basegui_GSELECT,_m_basegui_ESource);
            bbOnDebugLeaveScope();
        }
        bbOnDebugLeaveScope();
    }
    struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 137, 0};
    bbOnDebugEnterStm(&__stmt_2);
    _m_basegui_CheckCallBack(_m_basegui_GAction);
    struct BBDebugStm __stmt_3 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 138, 0};
    bbOnDebugEnterStm(&__stmt_3);
    _m_basegui_CheckCallBack(_m_basegui_GSELECT);
    bbOnDebugLeaveScope();
    return 0;
}
static int _bb_imp_basegui_inited = 0;
int _bb_imp_basegui(){
    if (!_bb_imp_basegui_inited) {
        _bb_imp_basegui_inited = 1;
        bbIncbinAdd(&_s0,&_bb_imp_basegui_ib_1,60594);
        __bb_brl_blitz_blitz();
        __bb_jcr6_zlibdriver_zlibdriver();
        __bb_maxgui_drivers_drivers();
        __bb_tricky_units_initfile2_initfile2();
        __bb_brl_eventqueue_eventqueue();
        _bb_imp_database();
        bbObjectRegisterType(&_m_basegui_TCallBack);
        struct BBDebugScope __scope = {
            BBDEBUGSCOPE_FUNCTION,
            "basegui",
            {
                BBDEBUGDECL_END 
            }
        };
        bbOnDebugEnterScope(&__scope);
        struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 37, 0};
        bbOnDebugEnterStm(&__stmt_0);
        tricky_units_mkl_version_import_import_mkl_version_MKL_Version(&_s1,&_s2);
        struct BBDebugStm __stmt_1 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 38, 0};
        bbOnDebugEnterStm(&__stmt_1);
        tricky_units_mkl_version_import_import_mkl_version_MKL_Lic(&_s1,&_s3);
        struct BBDebugStm __stmt_2 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 42, 0};
        bbOnDebugEnterStm(&__stmt_2);
        _m_basegui_DW=maxgui_maxgui_ClientWidth(maxgui_maxgui_Desktop());
        struct BBDebugStm __stmt_3 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 43, 0};
        bbOnDebugEnterStm(&__stmt_3);
        _m_basegui_DH=maxgui_maxgui_ClientHeight(maxgui_maxgui_Desktop());
        struct BBDebugStm __stmt_4 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 45, 0};
        bbOnDebugEnterStm(&__stmt_4);
        _m_basegui_Win=maxgui_maxgui_CreateWindow(bbStringConcat(&_s4,tricky_units_mkl_version_import_import_mkl_version_MKL_NewestVersion()),0,0,((BBINT)(((BBFLOAT)_m_basegui_DW)*.75f)),((BBINT)(((BBFLOAT)_m_basegui_DH)*.75f)),&bbNullObject,545);
        struct BBDebugStm __stmt_5 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 46, 0};
        bbOnDebugEnterStm(&__stmt_5);
        _m_basegui_Pix=brl_pixmap_LoadPixmap(&_s5);
        struct BBDebugStm __stmt_6 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 46, 0};
        bbOnDebugEnterStm(&__stmt_6);
        if(!(_m_basegui_Pix!= &bbNullObject)){
            struct BBDebugScope __scope = {
                BBDEBUGSCOPE_LOCALBLOCK,
                0,
                {
                    BBDEBUGDECL_END 
                }
            };
            bbOnDebugEnterScope(&__scope);
            struct BBDebugStm __stmt_0 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 46, 0};
            bbOnDebugEnterStm(&__stmt_0);
            brl_standardio_Print(&_s6);
            bbOnDebugLeaveScope();
        }
        struct BBDebugStm __stmt_7 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 47, 0};
        bbOnDebugEnterStm(&__stmt_7);
        _m_basegui_Lgo=maxgui_maxgui_CreatePanel(0,0,200,200,_m_basegui_Win,0,&bbEmptyString);
        struct BBDebugStm __stmt_8 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 48, 0};
        bbOnDebugEnterStm(&__stmt_8);
        maxgui_maxgui_SetGadgetPixmap(_m_basegui_Lgo,_m_basegui_Pix,3);
        struct BBDebugStm __stmt_9 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 49, 0};
        bbOnDebugEnterStm(&__stmt_9);
        _m_basegui_WW=maxgui_maxgui_ClientWidth(_m_basegui_Win);
        struct BBDebugStm __stmt_10 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 50, 0};
        bbOnDebugEnterStm(&__stmt_10);
        _m_basegui_WH=maxgui_maxgui_ClientHeight(_m_basegui_Win);
        struct BBDebugStm __stmt_11 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 85, 0};
        bbOnDebugEnterStm(&__stmt_11);
        struct BBDebugStm __stmt_12 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 86, 0};
        bbOnDebugEnterStm(&__stmt_12);
        struct BBDebugStm __stmt_13 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 112, 0};
        bbOnDebugEnterStm(&__stmt_13);
        struct BBDebugStm __stmt_14 = {"/Volumes/Irravonia/Projects/BlitzMax/JCR6+/LAURA II/Design/Star Story/Dev/Tools/Foe/imp/basegui.bmx", 112, 0};
        bbOnDebugEnterStm(&__stmt_14);
        bbOnDebugLeaveScope();
        return 0;
    }
    return 0;
}

This zip file contains the original BlitzMax code

(I did do this on Mac compiling to Mac)

davecamp commented 8 years ago

I now have this on the latest build of bcc. Maybe it happened earlier as I only had a version about 2 or 3 commits before this one. For me it looks as though the main module name is missing from the variable in the .c file for IncBin data variable.

For eg... the IncBin data is loaded inside a file named

mod/warp.mod/warpengine.mod/defaultshaders.bmx

The definition for the Incbin data in the associated incbin.h file is

_bb_warp_warpengine_defaultshaders_ib_1

but in the .c file that #includes the incbin.h the code is trying to use

_bb_warpengine_defaultshaders_ib_1

Note that the warp part is missing from the usage of the variable name. Edited to try to correct the text formatting

woollybah commented 8 years ago

I must be doing something wrong, as I am unable to replicate this.

Tricky1975 commented 8 years ago

Odd.... (I forgot to mention that the BMax source I provided likely uses modules I wrote myself located here. All of them should be NG compatible now).

davecamp commented 8 years ago

Even stranger too is that I can't reproduce this either :/ Maybe I had a bcc and a bmk from 2 different commits or something because I can't get this to bug at all now no matter what I try.

davecamp commented 8 years ago

The only way I can reproduce this is to compile one of the module files, in error, thinking its the main file, then when compiling the real main app file it causes this issue, other than that I can't reproduce it. Maybe that's what I did at the time too, but I don't remember doing that. I usually have the 'Lock Build File' set to the main file but sometimes I've noticed that its not set, so maybe...

GWRon commented 8 years ago

Doing such things in vanilla BMX leads to trouble too

Only ways to circumvent such a "faulty cache hit" is doing a rebuild-complete-code-base on every compile ... or to give the "mainfile" (the one getting initially compiled) a special stamp in the precompilation-filenames ... so when things get compiled they only use the cached variant if they were used in the same way as before.

Dunno about things like additionally linkef in sources (file1 precompilate does not import file2 but contains info about it as fileMain imported both... ).

woollybah commented 8 years ago

Unable to replicate. If it's still an issue, open a new issue.