Mercurial > vim
view src/nbdebug.h @ 24430:fe71212fd202 v8.2.2755
patch 8.2.2755: Vim9: no error for using a number in a condition
Commit: https://github.com/vim/vim/commit/af8ea0d066d31cf3cd0a39c5c49ce0342728588d
Author: Bram Moolenaar <Bram@vim.org>
Date: Sun Apr 11 18:24:46 2021 +0200
patch 8.2.2755: Vim9: no error for using a number in a condition
Problem: Vim9: no error for using a number in a condition.
Solution: Also use ISN_COND2BOOL if the type is t_number_bool.
(closes #7644)
author | Bram Moolenaar <Bram@vim.org> |
---|---|
date | Sun, 11 Apr 2021 18:30:05 +0200 |
parents | 6e3dc2d630c2 |
children | 038eb6d9003a |
line wrap: on
line source
/* vi:set ts=8 sw=8 noet: * * VIM - Vi IMproved by Bram Moolenaar * Visual Workshop integration by Gordon Prieur * * Do ":help uganda" in Vim to read copying and usage conditions. * Do ":help credits" in Vim to see a list of people who contributed. */ #ifndef NBDEBUG_H #define NBDEBUG_H #ifdef NBDEBUG # ifndef ASSERT # define ASSERT(c) \ if (!(c)) { \ fprintf(stderr, "Assertion failed: line %d, file %s\n", \ __LINE__, __FILE__); \ fflush(stderr); \ abort(); \ } # endif # define nbdebug(a) nbdbg a # define NB_TRACE 0x00000001 # define NB_TRACE_VERBOSE 0x00000002 # define NB_TRACE_COLONCMD 0x00000004 # define NB_PRINT 0x00000008 # define NB_DEBUG_ALL 0xffffffff # define NBDLEVEL(flags) (nb_debug != NULL && (nb_dlevel & (flags))) # define NBDEBUG_TRACE 1 typedef enum { WT_ENV = 1, // look for env var if set WT_WAIT, // look for ~/.gvimwait if set WT_STOP // look for ~/.gvimstop if set } WtWait; void nbdbg(char *, ...) # ifdef USE_PRINTF_FORMAT_ATTRIBUTE __attribute__((format(printf, 1, 2))) # endif ; void nbdebug_wait(u_int wait_flags, char *wait_var, u_int wait_secs); void nbdebug_log_init(char *log_var, char *level_var); extern FILE *nb_debug; extern u_int nb_dlevel; // nb_debug verbosity level #else // not NBDEBUG # ifndef ASSERT # define ASSERT(c) # endif /* * The following 3 stubs are needed because a macro cannot be used because of * the variable number of arguments. */ void nbdbg( char *fmt, ...) { } #endif // NBDEBUG #endif // NBDEBUG_H