[Lldb-commits] [PATCH] fix cross compilation to 32 bit arm targets

Vince Harron vharron at google.com
Tue Dec 30 17:31:47 PST 2014


Hi zturner, granata.enrico,


After syncing to ToT, I started getting this error when cross compiling to an arm target.

```
/usr/local/google/home/vharron/ll/cross/llvm/tools/lldb/include/lldb/Utility/ProcessStructReader.h:68:74: error: non-constant-expression cannot be narrowed from type 'unsigned long long' to 'size_t' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]
                m_fields[const_name] = FieldImpl{field_type, byte_index, size};
                                                                         ^~~~

```

This patch adds a cast to fix the error.  The cast is non-controversial because it comes after (size <= 8) is confirmed.

REPOSITORY
  rL LLVM

http://reviews.llvm.org/D6814

Files:
  include/lldb/Utility/ProcessStructReader.h

Index: include/lldb/Utility/ProcessStructReader.h
===================================================================
--- include/lldb/Utility/ProcessStructReader.h
+++ include/lldb/Utility/ProcessStructReader.h
@@ -65,7 +65,7 @@
                     return;
                 ConstString const_name = ConstString(name.c_str());
                 size_t byte_index = static_cast<size_t>(bit_offset / 8);
-                m_fields[const_name] = FieldImpl{field_type, byte_index, size};
+                m_fields[const_name] = FieldImpl{field_type, byte_index, (size_t)size};
             }
             size_t total_size = struct_type.GetByteSize();
             lldb::DataBufferSP buffer_sp(new DataBufferHeap(total_size,0));

EMAIL PREFERENCES
  http://reviews.llvm.org/settings/panel/emailpreferences/
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D6814.17680.patch
Type: text/x-patch
Size: 724 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/lldb-commits/attachments/20141231/cdfa1862/attachment.bin>


More information about the lldb-commits mailing list