Bug#801576: lldb-3.5 expression evaluation is broken
Roman Podoliaka
rpodolyaka at mirantis.com
Mon Oct 12 07:55:18 UTC 2015
Package: lldb-3.5
Version: 1:3.5-10
Severity: important
When I try to evaluate an arbitrary expression in lldb session, it
fails like this:
rpodolyaka at rpodolyaka-pc:~/src$ lldb
(lldb) expr 1 + 2
error: warning: duplicate 'signed' declaration specifier
error: cannot combine with previous 'unsigned' declaration specifier
error: 1 errors parsing expression
It's a known upstream issue, which can be resolved by applying the
following patch:
https://www.marc.info/?l=fedora-extras-commits&m=141954205617043&w=2
I've tried to rebuild the package with the patch applied and can
confirm it fixes the problem.
I'm using Debian Jessie. It'd nice to have this fixed in stable, as a
basic feature of lldb is essentially broken.
-------------- next part --------------
Index: llvm-toolchain-snapshot_3.5~svn211104/lldb/source/Expression/ExpressionSourceCode.cpp
============================================================================================
--- llvm-toolchain-snapshot_3.5~svn211104.orig/lldb/source/Expression/ExpressionSourceCode.cpp
+++ llvm-toolchain-snapshot_3.5~svn211104/lldb/source/Expression/ExpressionSourceCode.cpp
@@ -28,16 +28,16 @@
#define nil (__null)
#define YES ((BOOL)1)
#define NO ((BOOL)0)
-typedef signed __INT8_TYPE__ int8_t;
-typedef unsigned __INT8_TYPE__ uint8_t;
-typedef signed __INT16_TYPE__ int16_t;
-typedef unsigned __INT16_TYPE__ uint16_t;
-typedef signed __INT32_TYPE__ int32_t;
-typedef unsigned __INT32_TYPE__ uint32_t;
-typedef signed __INT64_TYPE__ int64_t;
-typedef unsigned __INT64_TYPE__ uint64_t;
-typedef signed __INTPTR_TYPE__ intptr_t;
-typedef unsigned __INTPTR_TYPE__ uintptr_t;
+typedef __INT8_TYPE__ int8_t;
+typedef __UINT8_TYPE__ uint8_t;
+typedef __INT16_TYPE__ int16_t;
+typedef __UINT16_TYPE__ uint16_t;
+typedef __INT32_TYPE__ int32_t;
+typedef __UINT32_TYPE__ uint32_t;
+typedef __INT64_TYPE__ int64_t;
+typedef __UINT64_TYPE__ uint64_t;
+typedef __INTPTR_TYPE__ intptr_t;
+typedef __UINTPTR_TYPE__ uintptr_t;
typedef __SIZE_TYPE__ size_t;
typedef __PTRDIFF_TYPE__ ptrdiff_t;
typedef unsigned short unichar;
More information about the Pkg-llvm-team
mailing list