changed C source to use C booleans with backward compatibility

Fix "Under source code control" date for new version.h file.

Sorted the order of symbols printed by "make env".

Test if <stdbool.h> exists and set HAVE_STDBOOL_H accordingly
in have_stdbool.h.  Added HAVE_STDBOOL_H to allow one to force
this value.

Added "bool.h" include file to support use of boolean symbols,
true and false for pre-c99 C compilers.  The "bool.h" include
file defines TRUE as true, FALSE as false, and BOOL as bool:
for backward compatibility.

The sign in a ZVALUE is now of type SIGN, whcih is either
SB32 when CALC2_COMPAT is defined, or a bool.

Replaced in C source, TRUE with true, FALSE with false, and
BOOL with bool.
This commit is contained in:
Landon Curt Noll
2023-08-19 19:20:32 -07:00
parent e18b715f3f
commit 3c18e6e25b
71 changed files with 1267 additions and 1043 deletions

12
token.h
View File

@@ -1,7 +1,7 @@
/*
* token - token defines
*
* Copyright (C) 1999-2007,2014,2021 David I. Bell
* Copyright (C) 1999-2007,2014,2021,2023 David I. Bell
*
* Calc is open software; you can redistribute it and/or modify it under
* the terms of the version 2.1 of the GNU Lesser General Public License
@@ -138,7 +138,7 @@
#define T_ABORT 127 /* abort operation */
#define iskeyword(n) ((n) > 100) /* TRUE if token is a keyword */
#define iskeyword(n) ((n) > 100) /* true if token is a keyword */
/*
@@ -148,13 +148,13 @@
#define EXPR_CONST 0x0002 /* result is constant */
#define EXPR_ASSIGN 0x0004 /* result is an assignment */
/* TRUE if expression is rvalue */
/* true if expression is rvalue */
#define isrvalue(n) ((n) & EXPR_RVALUE)
/* TRUE if expr is lvalue */
/* true if expr is lvalue */
#define islvalue(n) (((n) & EXPR_RVALUE) == 0)
/* TRUE if expr is constant */
/* true if expr is constant */
#define isconst(n) ((n) & EXPR_CONST)
/* TRUE if expr is an assignment */
/* true if expr is an assignment */
#define isassign(n) ((n) & EXPR_ASSIGN)