From: Tom Tromey Date: Tue, 20 Aug 2013 15:12:53 +0000 (+0000) Subject: fix PR python/15816 X-Git-Url: https://git.libre-soc.org/?a=commitdiff_plain;h=df30244622aff60b2b7a316ae9baa36ef22e5685;p=binutils-gdb.git fix PR python/15816 This fixes PR python/15816. The bug here is that python-selftest.exp can fail: No symbol "RETURN_MASK_ALL" in current context. RETURN_MASK_ALL is a macro, so if macros do not end up in the debuginfo (very typical) then the test fails. It seemed simplest to me to simply turn the RETURN_MASK_ defines into enum constants. This way they end up in the debuginfo and all is well. PR python/15816: * exceptions.h (return_mask): Now an enum. (RETURN_MASK_QUIT, RETURN_MASK_ERROR, RETURN_MASK_ALL): Now enum constants. Built and regtested on x86-64 Fedora 18. --- diff --git a/gdb/ChangeLog b/gdb/ChangeLog index d11e2263f5b..2e0109e36bc 100644 --- a/gdb/ChangeLog +++ b/gdb/ChangeLog @@ -1,3 +1,10 @@ +2013-08-20 Tom Tromey + + PR python/15816: + * exceptions.h (return_mask): Now an enum. + (RETURN_MASK_QUIT, RETURN_MASK_ERROR, RETURN_MASK_ALL): Now + enum constants. + 2013-08-20 Tom Tromey * cp-namespace.c (cp_lookup_symbol_imports_or_template): Use diff --git a/gdb/exceptions.h b/gdb/exceptions.h index bf418608449..129d29a62ad 100644 --- a/gdb/exceptions.h +++ b/gdb/exceptions.h @@ -38,10 +38,13 @@ enum return_reason }; #define RETURN_MASK(reason) (1 << (int)(-reason)) -#define RETURN_MASK_QUIT RETURN_MASK (RETURN_QUIT) -#define RETURN_MASK_ERROR RETURN_MASK (RETURN_ERROR) -#define RETURN_MASK_ALL (RETURN_MASK_QUIT | RETURN_MASK_ERROR) -typedef int return_mask; + +typedef enum +{ + RETURN_MASK_QUIT = RETURN_MASK (RETURN_QUIT), + RETURN_MASK_ERROR = RETURN_MASK (RETURN_ERROR), + RETURN_MASK_ALL = (RETURN_MASK_QUIT | RETURN_MASK_ERROR) +} return_mask; /* Describe all exceptions. */