user specified a specific exception, we only want to cause a stop
if the program thrown that exception. */
-static int
+static bool
should_stop_exception (const struct bp_location *bl)
{
struct ada_catchpoint *c = (struct ada_catchpoint *) bl->owner;
const struct ada_catchpoint_location *ada_loc
= (const struct ada_catchpoint_location *) bl;
- int stop;
+ bool stop;
struct internalvar *var = lookup_internalvar ("_ada_exception");
if (c->m_kind == ada_catch_assert)
/* With no specific exception, should always stop. */
if (c->excep_string.empty ())
- return 1;
+ return true;
if (ada_loc->excep_cond_expr == NULL)
{
/* We will have a NULL expression if back when we were creating
the expressions, this location's had failed to parse. */
- return 1;
+ return true;
}
- stop = 1;
+ stop = true;
try
{
struct value *mark;
#include "defs.h"
#include "value.h"
-#include "language.h" /* For value_true */
#include <ctype.h>
#include "ui-out.h"
/* Keep iterating so long as the expression is true. */
while (loop == 1)
{
- int cond_result;
+ bool cond_result;
QUIT;
}
else
{
- int tem = value_logical_not (arg1);
+ bool tem = value_logical_not (arg1);
if (!tem)
{
arg2 = std::get<1> (m_storage)->evaluate (nullptr, exp, noside);
}
else
{
- int tem = value_logical_not (arg1);
+ bool tem = value_logical_not (arg1);
if (tem)
{
arg2 = std::get<1> (m_storage)->evaluate (nullptr, exp, noside);
show_language_command (NULL, 1, NULL, NULL);
}
\f
-
-/* This page contains functions that return info about
- (struct value) values used in GDB. */
-
-/* Returns non-zero if the value VAL represents a true value. */
-int
-value_true (struct value *val)
-{
- /* It is possible that we should have some sort of error if a non-boolean
- value is used in this context. Possibly dependent on some kind of
- "boolean-checking" option like range checking. But it should probably
- not depend on the language except insofar as is necessary to identify
- a "boolean" value (i.e. in C using a float, pointer, etc., as a boolean
- should be an error, probably). */
- return !value_logical_not (val);
-}
-\f
/* This page contains functions for the printing out of
error messages that occur during type- and range-
checking. */
extern void range_error (const char *, ...) ATTRIBUTE_PRINTF (1, 2);
-/* Data: Does this value represent "truth" to the current language? */
-
-extern int value_true (struct value *);
-
/* Misc: The string representing a particular enum language. */
extern enum language language_enum (const char *str);
/* For scalar built-in types, only evaluate the right
hand operand if the left hand operand compares
unequal(&&)/equal(||) to 0. */
- int tmp = value_logical_not (arg1);
+ bool tmp = value_logical_not (arg1);
if (op == BINOP_LOGICAL_OR)
tmp = !tmp;
return val;
}
\f
-/* Simulate the C operator ! -- return 1 if ARG1 contains zero. */
+/* See value.h. */
-int
+bool
value_logical_not (struct value *arg1)
{
int len;
extern int value_less (struct value *arg1, struct value *arg2);
-extern int value_logical_not (struct value *arg1);
+/* Simulate the C operator ! -- return true if ARG1 contains zero. */
+extern bool value_logical_not (struct value *arg1);
+
+/* Returns true if the value VAL represents a true value. */
+static inline bool
+value_true (struct value *val)
+{
+ return !value_logical_not (val);
+}
/* C++ */