Fix auto export symbols for Dlls containing /bigobj for 64bit builds.

This fixes a bug where 64 bit builds with /bigobj incorrectly determined
that the object files were not 64 bit. This manifested itself with
printf type functions showing up as undefined because the leading
underscore was being removed and should not be removed.
This commit is contained in:
Bill Hoffman 2015-11-19 17:21:03 -05:00
parent e45e503f14
commit 75004280af
2 changed files with 3 additions and 1 deletions

View File

@ -422,7 +422,7 @@ DumpFile(const char* filename,
DumpSymbols<cmANON_OBJECT_HEADER_BIGOBJ, cmIMAGE_SYMBOL_EX> DumpSymbols<cmANON_OBJECT_HEADER_BIGOBJ, cmIMAGE_SYMBOL_EX>
symbolDumper((cmANON_OBJECT_HEADER_BIGOBJ*) lpFileBase, symbols, symbolDumper((cmANON_OBJECT_HEADER_BIGOBJ*) lpFileBase, symbols,
dataSymbols, dataSymbols,
(dosHeader->e_magic == IMAGE_FILE_MACHINE_AMD64)); (h->Machine == IMAGE_FILE_MACHINE_AMD64));
symbolDumper.DumpObjFile(); symbolDumper.DumpObjFile();
} else { } else {
printf("unrecognized file format in '%s'\n", filename); printf("unrecognized file format in '%s'\n", filename);

View File

@ -1,4 +1,6 @@
#include <stdio.h>
int sub() int sub()
{ {
printf("");
return 10; return 10;
} }