Add casts to avoid warnings about implicit conversions losing precision
This fixes warnings like these:
DwarfInstructions.hpp:85:25: warning: implicit conversion
loses integer precision: 'uint64_t' (aka 'unsigned long long') to
'libunwind::DwarfInstructions<libunwind::LocalAddressSpace,
libunwind::Registers_arm>::pint_t' (aka 'unsigned int')
[-Wshorten-64-to-32]
DwarfInstructions.hpp:88:25: warning: implicit conversion
loses integer precision: 'uint64_t' (aka 'unsigned long long') to
'libunwind::DwarfInstructions<libunwind::LocalAddressSpace,
libunwind::Registers_arm>::pint_t' (aka 'unsigned int')
[-Wshorten-64-to-32]
Differential Revision: https://reviews.llvm.org/D56983
git-svn-id: https://llvm.org/svn/llvm-project/libunwind/trunk@351877 91177308-0d34-0410-b5e6-96231b3b80d8
diff --git a/src/DwarfInstructions.hpp b/src/DwarfInstructions.hpp
index 75acf40..4f5f821 100644
--- a/src/DwarfInstructions.hpp
+++ b/src/DwarfInstructions.hpp
@@ -81,12 +81,11 @@
const RegisterLocation &savedReg) {
switch (savedReg.location) {
case CFI_Parser<A>::kRegisterInCFA:
- return addressSpace.getRegister(cfa + (pint_t)savedReg.value);
+ return (pint_t)addressSpace.getRegister(cfa + (pint_t)savedReg.value);
case CFI_Parser<A>::kRegisterAtExpression:
- return addressSpace.getRegister(
- evaluateExpression((pint_t)savedReg.value, addressSpace,
- registers, cfa));
+ return (pint_t)addressSpace.getRegister(evaluateExpression(
+ (pint_t)savedReg.value, addressSpace, registers, cfa));
case CFI_Parser<A>::kRegisterIsExpression:
return evaluateExpression((pint_t)savedReg.value, addressSpace,