Terraspace / UASM

UASM - Macro Assembler
http://www.terraspace.co.uk/uasm.html
Other
220 stars 49 forks source link

Building UASM With VS2019 doesn't compile the project. #135

Closed DebugBSD closed 4 years ago

DebugBSD commented 4 years ago

Hi, I'm so sorry for disturb you again, but I have cloned the repository (https://github.com/Terraspace/UASM.git) and after opening the file $UASM_DIR/build/VS2019.sln and try to compile the project, the compilation fails (See log)

The fail seems to be because in the line 959 of tokenize.c are the following lines:

<<<<<<< HEAD //if (_memicmp(p->input, "dword bcst[rax]", 15) == 0) { // __debugbreak(); // strcpy (p->input, "dword ptr [rax]"); // broadflags = 0x40; // p->input+=15; // //return(NOT_ERROR); //}

v2.49.1

So, I wonder if I'm getting the correct branch or is just a problem with some kind of merge or anything ... please, can you check it out?

Have a nice day! Guille

Log: (Sorry about the spanish language)

1>------ Operación Recompilar todo iniciada: proyecto: uasm, configuración: Release Win32 ------ 1>apiemu.c 1>assemble.c 1>assume.c 1>atofloat.c 1>backptch.c 1>bin.c 1>branch.c 1>cmdline.c 1>codegen.c 1>codegenv2.c 1>coff.c 1>condasm.c 1>context.c 1>cpumodel.c 1>data.c 1>dbgcv.c 1>directiv.c 1>elf.c 1>end.c 1>equate.c 1>Generando código... 1>Compilando... 1>errmsg.c 1>expans.c 1>expreval.c 1>extern.c 1>fastpass.c 1>fixup.c 1>fpfixup.c 1>hll.c 1>input.c 1>invoke.c 1>label.c 1>linnum.c 1>listing.c 1>loop.c 1>lqueue.c 1>ltype.c 1>macho64.c 1>macro.c 1>macrolib.c 1>main.c 1>Generando código... 1>Compilando... 1>mangle.c 1>memalloc.c 1>msgtext.c 1>omf.c 1>omffixup.c 1>omfint.c 1>option.c 1>orgfixup.c 1>parser.c 1>posndir.c 1>preproc.c 1>proc.c 1>queue.c 1>reswords.c 1>safeseh.c 1>segment.c 1>simd.c 1>simsegm.c 1>string.c 1>symbols.c 1>Generando código... 1>Compilando... 1>tbyte.c 1>tokenize.c 1>C:\Users\debugg\My Projects\UASM\tokenize.c(959,1): error C2143: error de sintaxis: falta ';' delante de '<<' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(974,7): error C2059: error de sintaxis: 'while' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1001,16): error C2065: 'dst': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1001,19): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1001,21): error C2223: el operando izquierdo de '->output' debe señalar a struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1002,5): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1006,9): error C2143: error de sintaxis: falta '{' delante de '++' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1006,9): error C2059: error de sintaxis: '++' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1010,5): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1016,27): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1016,29): error C2223: el operando izquierdo de '->output' debe señalar a struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1016,24): error C2198: 'FindResWord': no hay suficientes argumentos para la llamada 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1016,43): error C2099: el inicializador no es una constante 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1017,5): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1034,2): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1055,6): error C2143: error de sintaxis: falta '{' delante de '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1055,6): error C2059: error de sintaxis: '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1056,6): error C2143: error de sintaxis: falta '{' delante de '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1056,6): error C2059: error de sintaxis: '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1057,8): error C2143: error de sintaxis: falta '{' delante de '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1057,8): error C2059: error de sintaxis: '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1060,5): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1099,5): error C2374: 'index': nueva definición; inicialización múltiple 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1016): message : vea la declaración de 'index' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1099,16): error C2065: 'buf': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1099,18): error C2223: el operando izquierdo de '->tokval' debe señalar a struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1110,8): error C2143: error de sintaxis: falta '{' delante de '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1110,8): error C2059: error de sintaxis: '->' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1112,5): error C2059: error de sintaxis: 'switch' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1162,5): error C2059: error de sintaxis: 'return' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1163,1): error C2059: error de sintaxis: '}' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1300,1): error C2143: error de sintaxis: falta ';' delante de '<<' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1303,46): error C2143: error de sintaxis: falta ';' delante de ')' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1307,46): error C2143: error de sintaxis: falta ';' delante de ')' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1310,1): error C2143: error de sintaxis: falta ';' delante de '>>' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1316,1): error C2143: error de sintaxis: falta ';' delante de '<<' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1353,1): error C2143: error de sintaxis: falta ';' delante de '<<' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1361,1): error C2143: error de sintaxis: falta ';' delante de '==' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1364,15): error C2181: 'else' no válido sin el correspondiente 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1376,1): error C2143: error de sintaxis: falta ';' delante de '>>' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1395,1): error C2143: error de sintaxis: falta ';' delante de '<<' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1400,1): error C2143: error de sintaxis: falta ';' delante de '>>' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1406,15): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1422,13): error C2059: error de sintaxis: '}' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1427,9): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,21): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,22): error C2224: el operando izquierdo de '.index' debe tener el tipo struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,27): error C2056: expresión no válida 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,27): error C2466: no se puede asignar una matriz de tamaño constante 0 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,28): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1459,28): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,35): error C2065: 'tokenarray': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,37): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,38): error C2224: el operando izquierdo de '.index' debe tener el tipo struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,49): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,22): error C2198: 'GetToken': no hay suficientes argumentos para la llamada 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1460,50): error C2099: el inicializador no es una constante 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1461,9): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1463,9): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1475,9): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1495,10): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1495,10): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1496,9): error C2059: error de sintaxis: 'if' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1504,10): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1504,10): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1507,5): error C2059: error de sintaxis: '}' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1511,5): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1511,5): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1512,9): error C2143: error de sintaxis: falta '{' delante de ':' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1512,9): error C2059: error de sintaxis: ':' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,17): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,18): error C2224: el operando izquierdo de '.index' debe tener el tipo struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,23): error C2056: expresión no válida 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,23): error C2466: no se puede asignar una matriz de tamaño constante 0 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,24): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1514,24): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,17): error C2065: 'p': identificador no declarado 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,18): error C2224: el operando izquierdo de '.index' debe tener el tipo struct/union 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,23): error C2056: expresión no válida 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,23): error C2466: no se puede asignar una matriz de tamaño constante 0 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,24): error C2143: error de sintaxis: falta '{' delante de '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1515,24): error C2059: error de sintaxis: '.' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1516,5): error C2059: error de sintaxis: 'return' 1>C:\Users\debugg\My Projects\UASM\tokenize.c(1517,1): error C2059: error de sintaxis: '}' 1>trmem.c 1>types.c 1>x86macros.c 1>Generando código... 1>Compilación del proyecto "UASMVS2019.vcxproj" terminada -- ERROR. ========== Recompilar todo: 0 correctos, 1 incorrectos, 0 omitidos ==========

john-terraspace commented 4 years ago

Hi,

I don't have any issues with VS2019 this side, try the v2.50 branch that is current and stable. It will soon be merged to master.

DebugBSD commented 4 years ago

Yes, finally I could build the project with VS2019.

Thanks a lot! Guille!