+2012-10-01 Eli Zaretskii <eliz@gnu.org>
+
+ * preprep.c (RVA_TO_PTR): Use 'unsigned char *' instead of
+ 'void *', for pointer arithmetics.
+ (OFFSET_TO_RVA, RVA_TO_OFFSET, RVA_TO_SECTION_OFFSET): Enclose all
+ macro arguments in parentheses.
+
2012-09-30 Eli Zaretskii <eliz@gnu.org>
* makefile.w32-in ($(TRES)): Use $(EMACS_MANIFEST).
}
#define OFFSET_TO_RVA(offset, section) \
- (section->VirtualAddress + ((DWORD_PTR)(offset) - section->PointerToRawData))
+ ((section)->VirtualAddress + ((DWORD_PTR)(offset) - (section)->PointerToRawData))
#define RVA_TO_OFFSET(rva, section) \
- (section->PointerToRawData + ((DWORD_PTR)(rva) - section->VirtualAddress))
+ ((section)->PointerToRawData + ((DWORD_PTR)(rva) - (section)->VirtualAddress))
#define RVA_TO_SECTION_OFFSET(rva, section) \
- ((DWORD_PTR)(rva) - section->VirtualAddress)
+ ((DWORD_PTR)(rva) - (section)->VirtualAddress)
#define RVA_TO_PTR(var,section,filedata) \
- ((void *)(RVA_TO_OFFSET(var,section) + (filedata)->file_base))
+ ((unsigned char *)(RVA_TO_OFFSET(var,section) + (filedata)->file_base))
/* Convert address in executing image to RVA. */
#define PTR_TO_RVA(ptr) ((DWORD_PTR)(ptr) - (DWORD_PTR) GetModuleHandle (NULL))
2012-10-01 Eli Zaretskii <eliz@gnu.org>
+ * unexw32.c (OFFSET_TO_RVA, RVA_TO_OFFSET)
+ (RVA_TO_SECTION_OFFSET): Encode all macro arguments in parentheses.
+ (RVA_TO_PTR): Cast the result of RVA_TO_OFFSET to 'unsigned char *',
+ as the previous version used 'void *'.
+
+ * ralloc.c (ROUNDUP): Fix last change.
+ (MEM_ROUNDUP): Don't cast MEM_ALIGN, it is already of type
+ 'size_t'.
+
* w32proc.c <disable_itimers>: New static flag.
(init_timers): Initialize it to zero, after creating the critical
sections used by the timer threads.
by changing the definition of PAGE. */
#define PAGE (getpagesize ())
#define ROUNDUP(size) (((size_t) (size) + page_size - 1) \
- & ~((size_t)page_size - 1))
+ & ~((size_t)(page_size - 1)))
#define MEM_ALIGN sizeof (double)
#define MEM_ROUNDUP(addr) (((size_t)(addr) + MEM_ALIGN - 1) \
- & ~((size_t)MEM_ALIGN - 1))
+ & ~(MEM_ALIGN - 1))
/* The hook `malloc' uses for the function which gets more space
from the system. */
}
#define OFFSET_TO_RVA(offset, section) \
- (section->VirtualAddress + ((DWORD_PTR)(offset) - section->PointerToRawData))
+ ((section)->VirtualAddress + ((DWORD_PTR)(offset) - (section)->PointerToRawData))
#define RVA_TO_OFFSET(rva, section) \
- (section->PointerToRawData + ((DWORD_PTR)(rva) - section->VirtualAddress))
+ ((section)->PointerToRawData + ((DWORD_PTR)(rva) - (section)->VirtualAddress))
#define RVA_TO_SECTION_OFFSET(rva, section) \
- ((DWORD_PTR)(rva) - section->VirtualAddress)
+ ((DWORD_PTR)(rva) - (section)->VirtualAddress)
/* Convert address in executing image to RVA. */
#define PTR_TO_RVA(ptr) ((DWORD_PTR)(ptr) - (DWORD_PTR) GetModuleHandle (NULL))
#define RVA_TO_PTR(var,section,filedata) \
- ((DWORD_PTR)(RVA_TO_OFFSET (var,section) + (filedata).file_base))
+ ((unsigned char *)(RVA_TO_OFFSET (var,section) + (filedata).file_base))
#define PTR_TO_OFFSET(ptr, pfile_data) \
((unsigned char *)(ptr) - (pfile_data)->file_base)