mirror of
https://github.com/c64scene-ar/llvm-6502.git
synced 2025-06-25 16:24:23 +00:00
MC: rework static_assert to be MSVC compatible
Visual Studio does not permit referencing a structure member as a static field for sizeof calculations. Resort to a pointer cast which is compatible across Visual Studio and other compilers. git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@206445 91177308-0d34-0410-b5e6-96231b3b80d8
This commit is contained in:
@ -632,10 +632,8 @@ void WinCOFFObjectWriter::ExecutePostLayoutBinding(MCAssembler &Asm,
|
|||||||
const MCAsmLayout &Layout) {
|
const MCAsmLayout &Layout) {
|
||||||
// "Define" each section & symbol. This creates section & symbol
|
// "Define" each section & symbol. This creates section & symbol
|
||||||
// entries in the staging area.
|
// entries in the staging area.
|
||||||
// FIXME: this used to be
|
|
||||||
// sizeof(COFF::AuxiliaryFile::FileName) == COFF::SymbolSize
|
static_assert(sizeof(((COFF::AuxiliaryFile *)0)->FileName) == COFF::SymbolSize,
|
||||||
// but VS2013 can't compile that.
|
|
||||||
static_assert(sizeof(COFF::AuxiliaryFile) == COFF::SymbolSize,
|
|
||||||
"size mismatch for COFF::AuxiliaryFile::FileName");
|
"size mismatch for COFF::AuxiliaryFile::FileName");
|
||||||
for (auto FI = Asm.file_names_begin(), FE = Asm.file_names_end();
|
for (auto FI = Asm.file_names_begin(), FE = Asm.file_names_end();
|
||||||
FI != FE; ++FI) {
|
FI != FE; ++FI) {
|
||||||
|
Reference in New Issue
Block a user