From 4a22bc5736156a6cdfec296a1b60c45dc2ad15e5 Mon Sep 17 00:00:00 2001 From: Jean-Francois Lefebvre Date: Tue, 16 Jan 2001 21:15:28 +0000 Subject: [PATCH] 2001-01-16 22:15 GMT+1 JFL (Mafact) --- harbour/ChangeLog | 12 +++ harbour/makefile.vc | 148 +++++++++++++++++++--------- harbour/source/compiler/genobj32.c | 18 ++-- harbour/source/compiler/harbour.l | 8 +- harbour/source/compiler/harbour.slx | 8 +- harbour/source/compiler/hbfix.c | 20 ++-- harbour/source/pp/pragma.c | 8 +- harbour/source/rtl/tobject.prg | 3 + 8 files changed, 148 insertions(+), 77 deletions(-) diff --git a/harbour/ChangeLog b/harbour/ChangeLog index 7f14659011..bfd91b3404 100644 --- a/harbour/ChangeLog +++ b/harbour/ChangeLog @@ -1,3 +1,15 @@ +2001-01-16 22:15 GMT+1 JFL (Mafact) + *harbour/makefile.vc + *harbour/source/compiler/genobj32.c + *harbour/source/compiler/harbour.l + *harbour/source/compiler/harbour.slx + *harbour/source/compiler/hbfix.c + *harbour/source/pp/pragma.c + *All minor type casting for VC++ + *harbour/source/rtl/tobject.prg + *code re-aligned (no modif) + + 2001-01-14 15:15 UTC+0100 Ryszard Glab *include/hbapi.h diff --git a/harbour/makefile.vc b/harbour/makefile.vc index a1cb2a6cad..e302c648ae 100644 --- a/harbour/makefile.vc +++ b/harbour/makefile.vc @@ -127,8 +127,8 @@ HB_GT_LIB = $(LIB_DIR)\$(HB_GT_LIB).lib # override builtin -.c.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +.c.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< # # @@ -183,10 +183,10 @@ LIBS2 = \ # is cause make to evaluate the obj list of dependants which then # causes the .c.obj rule above to fire. (by inference) -{$(RTL_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RTL_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(RTL_DIR)}.prg{$(OBJ_DIR)}.obj:: +{$(RTL_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(RTL_LIB)2 @@ -343,8 +343,8 @@ RTL_LIB_OBJS = \ # LANG.LIB rules # -{$(LANG_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(LANG_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< LANG_LIB_OBJS = \ $(OBJ_DIR)\msgca.obj \ @@ -381,8 +381,8 @@ LANG_LIB_OBJS = \ # MACRO.LIB rules # -{$(MACRO_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(MACRO_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< MACRO_LIB_OBJS = \ $(OBJ_DIR)\macrol.obj \ @@ -395,10 +395,10 @@ MACRO_LIB_OBJS = \ # RDD.LIB rules # -{$(RDD_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RDD_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(RDD_DIR)}.prg{$(OBJ_DIR)}.obj:: +{$(RDD_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(RDD_LIB)2 @@ -426,10 +426,10 @@ RDD_LIB_OBJS = \ # NULSYS.LIB rules # -{$(RDD_DIR)\nulsys}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RDD_DIR)\nulsys}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(RDD_DIR)\nulsys}.prg{$(OBJ_DIR)}.obj:: +{$(RDD_DIR)\nulsys}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(NULSYS_LIB)2 @@ -441,10 +441,10 @@ NULSYS_LIB_OBJS = \ # DBFNTX.LIB rules # -{$(RDD_DIR)\dbfntx}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RDD_DIR)\dbfntx}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(RDD_DIR)\dbfntx}.prg{$(OBJ_DIR)}.obj:: +{$(RDD_DIR)\dbfntx}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DBFNTX_LIB)2 @@ -459,10 +459,10 @@ DBFNTX_LIB_OBJS = \ # DBFCDX.LIB rules # -{$(RDD_DIR)\dbfcdx}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RDD_DIR)\dbfcdx}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(RDD_DIR)\dbfcdx}.prg{$(OBJ_DIR)}.obj:: +{$(RDD_DIR)\dbfcdx}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DBFCDX_LIB)2 @@ -475,8 +475,8 @@ DBFCDX_LIB_OBJS = \ # PP.LIB rules # -{$(PP_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(PP_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< PP_LIB_OBJS = \ $(OBJ_DIR)\ppcore.obj \ @@ -489,10 +489,10 @@ PP_LIB_OBJS = \ # DEBUG.LIB rules # -{$(DEBUG_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(DEBUG_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(DEBUG_DIR)}.prg{$(OBJ_DIR)}.obj:: +{$(DEBUG_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(DEBUG_LIB)2 @@ -508,8 +508,8 @@ DEBUG_LIB_OBJS = \ # COMMON.LIB rules # -{$(COMMON_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(COMMON_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< COMMON_LIB_OBJS = \ $(OBJ_DIR)\hbfsapi.obj \ @@ -526,12 +526,13 @@ COMMON_LIB_OBJS = \ # {$(VM_DIR)}.asm{$(OBJ_DIR)}.obj: + rem lib /extract:$(OBJ_DIR)\symbols.obj /out:$(OBJ_DIR)\symbols.obj \harb35\lib\vm.lib $(AS) $< $@ nul nul -{$(VM_DIR)}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(VM_DIR)}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< -{$(VM_DIR)}.prg{$(OBJ_DIR)}.obj:: +{$(VM_DIR)}.prg{$(OBJ_DIR)}.obj: $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $< $(MAKE) -nologo /$(MK_FLAGS) /f$(MK_FILE) $(VM_LIB)2 @@ -573,8 +574,8 @@ VM_LIB_OBJS = \ # GTCGI.LIB rules # -{$(RTL_DIR)\gtcgi}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RTL_DIR)\gtcgi}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< GTCGI_LIB_OBJS = \ $(OBJ_DIR)\gtcgi.obj \ @@ -584,8 +585,8 @@ GTCGI_LIB_OBJS = \ # GTPCA.LIB rules # -{$(RTL_DIR)\gtpca}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RTL_DIR)\gtpca}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< GTPCA_LIB_OBJS = \ $(OBJ_DIR)\gtpca.obj \ @@ -595,8 +596,8 @@ GTPCA_LIB_OBJS = \ # GTSTD.LIB rules # -{$(RTL_DIR)\gtstd}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RTL_DIR)\gtstd}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< GTSTD_LIB_OBJS = \ $(OBJ_DIR)\gtstd.obj \ @@ -606,8 +607,8 @@ GTSTD_LIB_OBJS = \ # GTWIN.LIB rules # -{$(RTL_DIR)\gtwin}.c{$(OBJ_DIR)}.obj:: - $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< +{$(RTL_DIR)\gtwin}.c{$(OBJ_DIR)}.obj: + $(CC) $(CLIBFLAGS) -Fo$(OBJ_DIR)\ $< GTWIN_LIB_OBJS = \ $(OBJ_DIR)\gtwin.obj \ @@ -679,7 +680,7 @@ all: \ $(HBPP_EXE) : \ $(HBPP_DIR)\hbpp.c - $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $** -o $(HBPP_EXE) /link $(LDFLAGS) $(PP_LIB) $(COMMON_LIB) + $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $** -o $(HBPP_EXE) /link $(LDFLAGS) $(PP_LIB) $(COMMON_LIB) # # HBRUN.EXE rules @@ -689,7 +690,7 @@ $(HBRUN_EXE) : \ $(HBRUN_DIR)\hbrun.prg \ $(HBRUN_DIR)\external.prg $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $** - $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbrun.c $(OBJ_DIR)\external.c -o $(HBRUN_EXE) /link $(LDFLAGS) $(LIBS2) + $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbrun.c $(OBJ_DIR)\external.c -o $(HBRUN_EXE) /link $(LDFLAGS) $(LIBS2) # # HBTEST.EXE rules @@ -708,7 +709,18 @@ $(HBTEST_EXE) : \ $(HBTEST_DIR)\rt_stra.prg \ $(HBTEST_DIR)\rt_trans.prg $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $** - $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbtest.c $(OBJ_DIR)\rt_array.c $(OBJ_DIR)\rt_date.c $(OBJ_DIR)\rt_file.c $(OBJ_DIR)\rt_hvm.c $(OBJ_DIR)\rt_hvma.c $(OBJ_DIR)\rt_math.c $(OBJ_DIR)\rt_misc.c $(OBJ_DIR)\rt_str.c $(OBJ_DIR)\rt_stra.c $(OBJ_DIR)\rt_trans.c -o $(HBTEST_EXE) /link $(LDFLAGS) $(LIBS) + $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbtest.c \ + $(OBJ_DIR)\rt_array.c \ + $(OBJ_DIR)\rt_date.c \ + $(OBJ_DIR)\rt_file.c \ + $(OBJ_DIR)\rt_hvm.c \ + $(OBJ_DIR)\rt_hvma.c \ + $(OBJ_DIR)\rt_math.c \ + $(OBJ_DIR)\rt_misc.c \ + $(OBJ_DIR)\rt_str.c \ + $(OBJ_DIR)\rt_stra.c \ + $(OBJ_DIR)\rt_trans.c \ + -o $(HBTEST_EXE) /link $(LDFLAGS) $(LIBS) # # HBDOC.EXE rules @@ -733,22 +745,59 @@ $(HBDOC_EXE) : \ $(HBDOC_DIR)\ffile1.prg \ $(HBDOC_DIR)\ft_funcs.prg $(HARBOUR_EXE) $(HARBOURFLAGS) -o$(OBJ_DIR)\ $** - $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbdoc.c $(OBJ_DIR)\genchm.c $(OBJ_DIR)\genos2.c $(OBJ_DIR)\gentrf.c $(OBJ_DIR)\genng.c $(OBJ_DIR)\genhtm.c $(OBJ_DIR)\genrtf.c $(OBJ_DIR)\genhpc.c $(OBJ_DIR)\genasc.c $(OBJ_DIR)\html.c $(OBJ_DIR)\ng.c $(OBJ_DIR)\os2.c $(OBJ_DIR)\rtf.c $(OBJ_DIR)\troff.c $(OBJ_DIR)\fclass1.c $(OBJ_DIR)\ffile1.c $(OBJ_DIR)\ft_funcs.c -o $(HBDOC_EXE) /link $(LDFLAGS) $(LIBS2) + $(CC) $(CFLAGS) -Fo$(OBJ_DIR)\ $(OBJ_DIR)\hbdoc.c \ + $(OBJ_DIR)\genchm.c \ + $(OBJ_DIR)\genos2.c \ + $(OBJ_DIR)\gentrf.c \ + $(OBJ_DIR)\genng.c \ + $(OBJ_DIR)\genhtm.c \ + $(OBJ_DIR)\genrtf.c \ + $(OBJ_DIR)\genhpc.c \ + $(OBJ_DIR)\genasc.c \ + $(OBJ_DIR)\html.c \ + $(OBJ_DIR)\ng.c \ + $(OBJ_DIR)\os2.c \ + $(OBJ_DIR)\rtf.c \ + $(OBJ_DIR)\troff.c \ + $(OBJ_DIR)\fclass1.c \ + $(OBJ_DIR)\ffile1.c \ + $(OBJ_DIR)\ft_funcs.c \ + -o $(HBDOC_EXE) /link $(LDFLAGS) $(LIBS2) # # HARBOUR.EXE rules # +HARBOUR_EXE_OBJ = \ + $(OBJ_DIR)\harbour.obj \ + $(OBJ_DIR)\harboury.obj \ + $(OBJ_DIR)\hbslex.obj \ + $(OBJ_DIR)\cmdcheck.obj \ + $(OBJ_DIR)\hbusage.obj \ + $(OBJ_DIR)\hbident.obj \ + $(OBJ_DIR)\hbpcode.obj \ + $(OBJ_DIR)\hbfix.obj \ + $(OBJ_DIR)\hbfunchk.obj \ + $(OBJ_DIR)\hbgenerr.obj \ + $(OBJ_DIR)\genobj32.obj \ + $(OBJ_DIR)\genc.obj \ + $(OBJ_DIR)\genhrb.obj \ + $(OBJ_DIR)\genjava.obj \ + $(OBJ_DIR)\expropta.obj \ + $(OBJ_DIR)\exproptb.obj \ + $(OBJ_DIR)\exproptc.obj + +#$(HARBOUR_EXE) : $(HARBOUR_EXE_OBJ) \ $(HARBOUR_EXE) : \ $(COMPILER_DIR)\harbour.c \ $(OBJ_DIR)\harboury.c \ $(OBJ_DIR)\harbourl.c \ + $(COMPILER_DIR)\cmdcheck.c \ $(COMPILER_DIR)\hbusage.c \ $(COMPILER_DIR)\hbident.c \ $(COMPILER_DIR)\hbpcode.c \ $(COMPILER_DIR)\hbfix.c \ $(COMPILER_DIR)\hbfunchk.c \ - $(COMPILER_DIR)\cmdcheck.c \ $(COMPILER_DIR)\hbgenerr.c \ $(COMPILER_DIR)\genobj32.c \ $(COMPILER_DIR)\genc.c \ @@ -762,6 +811,13 @@ $(HARBOUR_EXE) : \ -del $(OBJ_DIR)\unistd.h + + + + + + + # # Library dependencies and build rules # @@ -832,11 +888,11 @@ $(OBJ_DIR)\macrol.c : $(OBJ_DIR)\macroy.c $(MACRO_DIR)\macro.l flex -i -8 -Phb_comp -o$(OBJ_DIR)\macrol.c $(MACRO_DIR)\macro.l $(OBJ_DIR)\macroy.obj : $(OBJ_DIR)\macroy.c - $(CC) $(CLIBFLAGS) -w -Fo$@ $** + $(CC) $(CLIBFLAGS) -w -Fo$@ $** $(OBJ_DIR)\macrol.obj : $(OBJ_DIR)\macrol.c -echo. > $(OBJ_DIR)\unistd.h - $(CC) $(CLIBFLAGS) -I$(OBJ_DIR) -w -Fo$@ $** + $(CC) $(CLIBFLAGS) -I$(OBJ_DIR) -w -Fo$@ $** -del $(OBJ_DIR)\unistd.h diff --git a/harbour/source/compiler/genobj32.c b/harbour/source/compiler/genobj32.c index 1f4f22c364..4515819967 100644 --- a/harbour/source/compiler/genobj32.c +++ b/harbour/source/compiler/genobj32.c @@ -222,7 +222,7 @@ static void GenerateSymbolsSegment( FILE * hObjFile ) GroupDef( hObjFile, 12, groupSymGroup ); /* "SYMGROUP" localNames position - 1 */ GroupDef( hObjFile, 17, groupInitData ); /* "BORLAND" localNames position - 1 */ - * ( USHORT * ) symbolsData = GetSymbolsAmount(); + * ( USHORT * ) symbolsData = (USHORT) GetSymbolsAmount(); EnumeratedData( hObjFile, 6, symbolsData, sizeof( symbolsData ), 0 ); /* HB_SYMBOLS defined order segment */ @@ -254,7 +254,7 @@ static void GenerateDataSegment( FILE * hObjFile ) 0 ); /* segment length */ DefineSegment( hObjFile, 5, /* "_DATA" position + 1 into localNames */ 6, /* "DATA" position + 1 into localNames */ - ulSize ); /* segment length */ + (USHORT) ulSize ); /* segment length */ memset( &symbol, 0, sizeof( symbol ) ); DataSegment( hObjFile, (BYTE *) &symbol, @@ -263,18 +263,18 @@ static void GenerateDataSegment( FILE * hObjFile ) pSymbol = GetFirstSymbol(); for( ul = 0; ul < ulSymbols; ul++ ) { - Fixup( hObjFile, 0xE4, ( ul * sizeof( HB_SYMB ) ), 0x54, 4 ); /* 4 = Data symbol name location */ + Fixup( hObjFile, 0xE4, (USHORT) ( ul * sizeof( HB_SYMB ) ), 0x54, 4 ); /* 4 = Data symbol name location */ if( IsExternal( ul ) ) { if( ! ( pSymbol->cScope & HB_FS_MESSAGE ) ) - Fixup( hObjFile, 0xE4, ( ul * sizeof( HB_SYMB ) ) + 8, 0x56, + Fixup( hObjFile, 0xE4, (USHORT) ( ul * sizeof( HB_SYMB ) ) + 8, 0x56, GetExternalPos( GetSymbolName( ul ) ) + 1 ); } else { /* if( ! ( pSymbol->cScope & HB_FS_MESSAGE ) ) */ - Fixup( hObjFile, 0xE4, ( ul * sizeof( HB_SYMB ) ) + 8, 0x54, 1 ); /* function address location */ + Fixup( hObjFile, 0xE4, (USHORT) ( ul * sizeof( HB_SYMB ) ) + 8, 0x54, 1 ); /* function address location */ } pSymbol = pSymbol->pNext; } @@ -289,7 +289,7 @@ static void GenerateCodeSegment( FILE * hObjFile ) DefineSegment( hObjFile, 2, /* "_TEXT" position + 1 into localNames */ 3, /* "CODE" position + 1 into localNames */ - ulSize ); /* segment length */ + (USHORT) ulSize ); /* segment length */ while( pFunc ) { @@ -466,7 +466,7 @@ static void CodeSegment( FILE * hObjFile, BYTE * prgCode, ULONG ulPrgLen, USHORT { BYTE bChk = 0; USHORT y; - USHORT wTotalLen = ( ulPrgLen * wFunctions ) + 4; + USHORT wTotalLen = (USHORT) ( ulPrgLen * wFunctions ) + 4; ULONG ul; PFUNCTION pFunction = hb_comp_functions.pFirst; ULONG ulPCodeOffset = hb_comp_symbols.iCount * sizeof( HB_SYMB ); @@ -496,7 +496,7 @@ static void DataSegment( FILE * hObjFile, BYTE * symbol, ULONG wSymLen, ULONG wS { BYTE bChk = 0; ULONG w, y; - USHORT wTotalLen = 4 + ulSize; + USHORT wTotalLen = 4 + (USHORT) ulSize; PCOMSYMBOL pSymbol = GetFirstSymbol(); PFUNCTION pFunction = hb_comp_functions.pFirst; ULONG ulSymbolNameOffset = GetSymbolsSize() + GetPCodesSize(); @@ -663,4 +663,4 @@ static void GroupDef( FILE * hObjFile, BYTE bName, BYTE * aSegs ) } putbyte( 256 - bChk, hObjFile, &bChk ); -} \ No newline at end of file +} diff --git a/harbour/source/compiler/harbour.l b/harbour/source/compiler/harbour.l index e72da81b54..cd80145cbd 100644 --- a/harbour/source/compiler/harbour.l +++ b/harbour/source/compiler/harbour.l @@ -874,13 +874,13 @@ Separator {SpaceTab} if( pInline->pCode == NULL ) { - pInline->pCode = hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char *) pInline->pCode, (char*) sBuffer ); } else { - pInline->pCode = hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode + pInline->lPCodeSize, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char *) (pInline->pCode + pInline->lPCodeSize), (char*) sBuffer ); } pInline->lPCodeSize += iSize; diff --git a/harbour/source/compiler/harbour.slx b/harbour/source/compiler/harbour.slx index 82bc43990d..2cb44dd5a7 100644 --- a/harbour/source/compiler/harbour.slx +++ b/harbour/source/compiler/harbour.slx @@ -1115,13 +1115,13 @@ int hb_comp_SLX_CustomAction( int x, int aiHold[], int *ptr_iHold, BOOL *ptr_bIg if( pInline->pCode == NULL ) { - pInline->pCode = hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char *) pInline->pCode, (char*) sBuffer ); } else { - pInline->pCode = hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode + pInline->lPCodeSize, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char *) (pInline->pCode + pInline->lPCodeSize), (char*) sBuffer ); } pInline->lPCodeSize += iSize; diff --git a/harbour/source/compiler/hbfix.c b/harbour/source/compiler/hbfix.c index 210e962a10..31fa421fea 100644 --- a/harbour/source/compiler/hbfix.c +++ b/harbour/source/compiler/hbfix.c @@ -90,7 +90,7 @@ static HB_FIX_FUNC( hb_p_pushblock ) *pLocal += pFunc->wParamCount; lPCodePos +=2; } - return lPCodePos - ulStart; + return (USHORT) (lPCodePos - ulStart); } static HB_FIX_FUNC( hb_p_pushblockshort ) @@ -112,7 +112,7 @@ static HB_FIX_FUNC( hb_p_localname ) while( pFunc->pCode[ lPCodePos ] ) ++lPCodePos; - return lPCodePos - ulStart + 1; + return (USHORT) (lPCodePos - ulStart + 1) ; } static HB_FIX_FUNC( hb_p_modulename ) @@ -124,7 +124,7 @@ static HB_FIX_FUNC( hb_p_modulename ) while( pFunc->pCode[ lPCodePos ] ) ++lPCodePos; - return lPCodePos - ulStart + 1; + return (USHORT) (lPCodePos - ulStart + 1); } static HB_FIX_FUNC( hb_p_poplocal ) @@ -138,7 +138,7 @@ static HB_FIX_FUNC( hb_p_poplocal ) *pVar += pFunc->wParamCount; } - return 3; + return (USHORT) 3; } static HB_FIX_FUNC( hb_p_pushlocal ) @@ -152,7 +152,7 @@ static HB_FIX_FUNC( hb_p_pushlocal ) *pVar += pFunc->wParamCount; } - return 3; + return (USHORT) 3; } static HB_FIX_FUNC( hb_p_pushlocalref ) @@ -166,7 +166,7 @@ static HB_FIX_FUNC( hb_p_pushlocalref ) *pVar += pFunc->wParamCount; } - return 3; + return (USHORT) 3; } static HB_FIX_FUNC( hb_p_poplocalnear ) @@ -182,7 +182,7 @@ static HB_FIX_FUNC( hb_p_poplocalnear ) { pFunc->pCode[ lPCodePos + 2 ] = HB_P_NOOP; hb_compNOOPadd( pFunc, lPCodePos + 2 ); - } + } else { /* After fixing this variable cannot be accessed using near code @@ -191,7 +191,7 @@ static HB_FIX_FUNC( hb_p_poplocalnear ) } } - return 3; + return (USHORT) 3; } static HB_FIX_FUNC( hb_p_pushlocalnear ) @@ -207,7 +207,7 @@ static HB_FIX_FUNC( hb_p_pushlocalnear ) { pFunc->pCode[ lPCodePos + 2 ] = HB_P_NOOP; hb_compNOOPadd( pFunc, lPCodePos + 2 ); - } + } else { /* After fixing this variable cannot be accessed using near code @@ -216,7 +216,7 @@ static HB_FIX_FUNC( hb_p_pushlocalnear ) } } - return 3; + return (USHORT) 3; } /* NOTE: The order of functions have to match the order of opcodes diff --git a/harbour/source/pp/pragma.c b/harbour/source/pp/pragma.c index 1f7a9827fe..8458d7e056 100644 --- a/harbour/source/pp/pragma.c +++ b/harbour/source/pp/pragma.c @@ -221,13 +221,13 @@ void hb_pp_ParsePragma( char * szLine ) if( pInline->pCode == NULL ) { - pInline->pCode = hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xgrab( ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char*) pInline->pCode, (char*) sBuffer ); } else { - pInline->pCode = hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); - strcpy( pInline->pCode + pInline->lPCodeSize, (char*) sBuffer ); + pInline->pCode = (unsigned char *) hb_xrealloc( pInline->pCode, pInline->lPCodeSize + ( iSize = strlen( (char*) sBuffer ) ) + 1 ); + strcpy( (char *) (pInline->pCode + pInline->lPCodeSize), (char*) sBuffer ); } pInline->lPCodeSize += iSize; diff --git a/harbour/source/rtl/tobject.prg b/harbour/source/rtl/tobject.prg index ee9d2a0a5f..1d0697271a 100644 --- a/harbour/source/rtl/tobject.prg +++ b/harbour/source/rtl/tobject.prg @@ -124,6 +124,7 @@ FUNCTION TObject() s_oClass:Create() ENDIF + oInstance := s_oClass:Instance() oInstance:class := s_oClass @@ -156,3 +157,5 @@ static function TObject_Error( cDesc, cClass, cMsg, nCode ) ENDIF RETURN __errRT_SBASE( EG_NOMETHOD, nCode, cDesc, cClass + ":" + cMsg ) + +