// with it. It doesn't count as the "first file".
foreignST = mbr;
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
} else if (mbr->isStringTable()) {
// Simply suck the entire string table into a string
// (SVR4 style long names).
strtab.assign(At,mbr->getSize());
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
} else if (mbr->isLLVMSymbolTable()) {
parseSymbolTable(mbr->getData(),mbr->getSize());
seenSymbolTable = true;
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr; // We don't need this member in the list of members.
} else {
}
members.push_back(mbr);
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
}
}
if (mbr->isForeignSymbolTable()) {
// Skip the foreign symbol table, we don't do anything with it
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
// Process the string table entry
strtab.assign((const char*)mbr->getData(),mbr->getSize());
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
// Get the next one
if (mbr->isLLVMSymbolTable()) {
parseSymbolTable(mbr->getData(),mbr->getSize());
FirstFile = At + mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
FirstFile++;
} else {
// There's no symbol table in the file. We have to rebuild it from scratch
// Go to the next file location
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
}
}
ARFile.write(data,fSize);
// Make sure the member is an even length
- if (ARFile.tellp() % 2 != 0)
+ if (ARFile.tellp() & 1 == 1)
ARFile << ARFILE_PAD;
// Free the compressed data, if necessary
// with it. It doesn't count as the "first file".
foreignST = mbr;
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
} else if (mbr->isStringTable()) {
// Simply suck the entire string table into a string
// (SVR4 style long names).
strtab.assign(At,mbr->getSize());
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
} else if (mbr->isLLVMSymbolTable()) {
parseSymbolTable(mbr->getData(),mbr->getSize());
seenSymbolTable = true;
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr; // We don't need this member in the list of members.
} else {
}
members.push_back(mbr);
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
}
}
if (mbr->isForeignSymbolTable()) {
// Skip the foreign symbol table, we don't do anything with it
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
// Process the string table entry
strtab.assign((const char*)mbr->getData(),mbr->getSize());
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
delete mbr;
// Get the next one
if (mbr->isLLVMSymbolTable()) {
parseSymbolTable(mbr->getData(),mbr->getSize());
FirstFile = At + mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
FirstFile++;
} else {
// There's no symbol table in the file. We have to rebuild it from scratch
// Go to the next file location
At += mbr->getSize();
- if ((mbr->getSize() & 1) == 1)
+ if ((intptr_t(At) & 1) == 1)
At++;
}
}
ARFile.write(data,fSize);
// Make sure the member is an even length
- if (ARFile.tellp() % 2 != 0)
+ if (ARFile.tellp() & 1 == 1)
ARFile << ARFILE_PAD;
// Free the compressed data, if necessary