diff options
author | Tom Tromey <tromey@redhat.com> | 2013-08-20 15:12:53 +0000 |
---|---|---|
committer | Tom Tromey <tromey@redhat.com> | 2013-08-20 15:12:53 +0000 |
commit | df30244622aff60b2b7a316ae9baa36ef22e5685 (patch) | |
tree | 026cbd1446dea70f896f9905576123641e62d0e7 /gdb/exceptions.h | |
parent | df6d5441760d6744b7c9e2cc0af4e234417c61b0 (diff) | |
download | gdb-df30244622aff60b2b7a316ae9baa36ef22e5685.zip gdb-df30244622aff60b2b7a316ae9baa36ef22e5685.tar.gz gdb-df30244622aff60b2b7a316ae9baa36ef22e5685.tar.bz2 |
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.
Diffstat (limited to 'gdb/exceptions.h')
-rw-r--r-- | gdb/exceptions.h | 11 |
1 files changed, 7 insertions, 4 deletions
diff --git a/gdb/exceptions.h b/gdb/exceptions.h index bf41860..129d29a 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. */ |