Commit 1f59a1ea authored by scottmg's avatar scottmg Committed by Commit bot

vs2015: fix pvoid->dword truncation warning

FAILED: ninja -t msvc -e environment.x64 -- "C:\Program Files (x86)\Microsoft Visual Studio 14.0\VC\bin\amd64\cl.exe" /nologo /showIncludes /FC @obj\base\win\base_static_win64.pe_image.obj.rsp /c ..\..\base\win\pe_image.cc /Foobj\base\win\base_static_win64.pe_image.obj /Fdobj\base\base_static_win64.cc.pdb
d:\src\cr2\src\base\win\pe_image.cc(571): error C2220: warning treated as error - no 'object' file generated
d:\src\cr2\src\base\win\pe_image.cc(571): warning C4311: 'reinterpret_cast': pointer truncation from 'LPVOID' to 'DWORD'
d:\src\cr2\src\base\win\pe_image.cc(571): warning C4302: 'reinterpret_cast': truncation from 'LPVOID' to 'DWORD'
d:\src\cr2\src\base\win\pe_image.cc(573): warning C4311: 'reinterpret_cast': pointer truncation from 'PVOID' to 'DWORD'
d:\src\cr2\src\base\win\pe_image.cc(573): warning C4302: 'reinterpret_cast': truncation from 'PVOID' to 'DWORD'

R=cpu@chromium.org
BUG=440500

Review URL: https://codereview.chromium.org/1117433003

Cr-Commit-Position: refs/heads/master@{#327404}
parent 4800fc26
......@@ -568,12 +568,11 @@ bool PEImage::ImageAddrToOnDiskOffset(LPVOID address,
if (NULL == section_header)
return false;
#pragma warning(suppress : 4302) // pointer truncation
// These casts generate warnings because they are 32 bit specific.
// Don't follow the virtual RVAToAddr, use the one on the base.
DWORD offset_within_section = reinterpret_cast<DWORD>(address) -
reinterpret_cast<DWORD>(PEImage::RVAToAddr(
section_header->VirtualAddress));
DWORD offset_within_section =
static_cast<DWORD>(reinterpret_cast<uintptr_t>(address)) -
static_cast<DWORD>(reinterpret_cast<uintptr_t>(
PEImage::RVAToAddr(section_header->VirtualAddress)));
*on_disk_offset = section_header->PointerToRawData + offset_within_section;
return true;
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment