version 1.2, 2025/03/09 15:20:18
|
version 1.5, 2025/04/30 14:41:03
|
Line 1
|
Line 1
|
/* |
/* |
* * |
* $Id$ |
* * * |
|
* * * |
|
* *************** |
|
* * * * * |
|
* * MUMPS * |
|
* * * * * |
|
* *************** |
|
* * * |
|
* * * |
|
* * |
|
* |
|
* mdebug.h |
|
* debugger enhancements |
* debugger enhancements |
* |
* |
* |
* |
* Author: Serena Willis <snw@coherent-logic.com> |
* Author: Serena Willis <snw@coherent-logic.com> |
* Copyright (C) 1998 MUG Deutschland |
* Copyright (C) 1998 MUG Deutschland |
* Copyright (C) 2020 Coherent Logic Development LLC |
* Copyright (C) 2020, 2025 Coherent Logic Development LLC |
* |
* |
* |
* |
* This file is part of FreeM. |
* This file is part of FreeM. |
Line 35
|
Line 23
|
* You should have received a copy of the GNU Affero Public License |
* You should have received a copy of the GNU Affero Public License |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* along with FreeM. If not, see <https://www.gnu.org/licenses/>. |
* |
* |
|
* $Log$ |
|
* Revision 1.5 2025/04/30 14:41:03 snw |
|
* Further debugger work |
|
* |
|
* Revision 1.4 2025/04/29 18:46:17 snw |
|
* Begin work on interactive debugger |
|
* |
|
* Revision 1.3 2025/03/09 19:50:47 snw |
|
* Second phase of REUSE compliance and header reformat |
|
* |
|
* |
|
* SPDX-FileCopyrightText: (C) 2025 Coherent Logic Development LLC |
|
* SPDX-License-Identifier: AGPL-3.0-or-later |
**/ |
**/ |
|
|
#if !defined(_MDEBUG_H) |
#if !defined(_MDEBUG_H) |
Line 42
|
Line 43
|
|
|
#define MAXWATCH 100 |
#define MAXWATCH 100 |
|
|
|
#define DEBENTRY_CMD 0 |
|
#define DEBENTRY_LINE 1 |
|
#define DEBENTRY_BREAKPOINT 2 |
|
#define DEBENTRY_ERROR 4 |
|
#define DEBENTRY_SIGINT 5 |
|
|
|
#define STEPMODE_NONE 0 |
|
#define STEPMODE_CONT 1 |
|
#define STEPMODE_CMD 2 |
|
#define STEPMODE_LINE 3 |
|
|
typedef struct dbg_watch { |
typedef struct dbg_watch { |
|
|
/* name of variable to watch */ |
/* name of variable to watch */ |
Line 57 typedef struct dbg_watch {
|
Line 69 typedef struct dbg_watch {
|
} dbg_watch; |
} dbg_watch; |
|
|
extern void dbg_init (void); |
extern void dbg_init (void); |
|
extern int debugger (int entry_mode, char *curcode); |
extern dbg_watch *dbg_add_watch (char *varnam); |
extern dbg_watch *dbg_add_watch (char *varnam); |
extern void dbg_remove_watch (char *varnam); |
extern void dbg_remove_watch (char *varnam); |
extern dbg_watch *dbg_find_watch (char *varnam); |
extern dbg_watch *dbg_find_watch (char *varnam); |
Line 69 extern void dbg_dump_watchlist (void);
|
Line 82 extern void dbg_dump_watchlist (void);
|
extern short dbg_enable_watch; /* 0 = watches disabled, 1 = watches enabled */ |
extern short dbg_enable_watch; /* 0 = watches disabled, 1 = watches enabled */ |
extern int dbg_pending_watches; |
extern int dbg_pending_watches; |
|
|
#endif |
|
|
|
|
#endif |