Dianne Skoll
b33a3191f5
Better nonconst diagnostic messages.
2025-05-22 09:38:06 -04:00
Dianne Skoll
1d3c1f006f
Take care of some corner-cases of non-const tracking.
2025-05-22 09:35:18 -04:00
Dianne Skoll
471ecff267
Report both starting and ending lines for commands spanning multiple lines because of \-line continuation.
...
This affects error and warning messages primarily. The JSON
interchange format has an additional lineno_start entry for
reminders that span multiple lines. (Historically, lineno
was the *last* line of the reminder statement and I kept
that for compatibility.)
2025-02-16 20:30:16 -05:00
Dianne Skoll
a35920f28e
Put quotes around function name when issuing "redefined" warning.
2025-01-14 11:30:06 -05:00
Dianne Skoll
17ccf5d2b4
Make more messages translatable.
2025-01-14 11:27:47 -05:00
Dianne Skoll
562cec3dc8
Mass-update copyright date to 2025.
2024-12-29 13:47:07 -05:00
Dianne Skoll
5a2914f6c7
Start hash tables with 7 buckets instead of 17; print more detailed hash stats with -ds; consistently use ErrFp instead of stderr
Remind unit tests / tests (push) Successful in 32s
2024-12-14 11:52:16 -05:00
Dianne Skoll
d9796e72e5
Allow error messages to be localized.
2024-12-09 19:55:23 -05:00
Dianne Skoll
e50d583659
Use case-sensitive hashing for dedup and translation hash tables.
2024-12-09 18:36:53 -05:00
Dianne Skoll
6b05d772f0
Exit if we run out of memory initializing hash tables. There's no sane way to recover.
2024-12-09 18:10:03 -05:00
Dianne Skoll
4a2d707654
Properly handle deleting everything out of a hash table.
2024-12-09 13:59:41 -05:00
Dianne Skoll
cb712ad7e7
Replace the individual hash table implementations with a unified one.
2024-12-09 11:54:52 -05:00
Dianne Skoll
553899127a
Diagnose redefinition of built-in functions by checking newname before oldname
Remind unit tests / tests (push) Failing after 30s
2024-11-14 22:27:54 -05:00
Dianne Skoll
46e1b7386e
Don't allow FRENAME to attempt to rename a built-in function.
2024-11-14 10:17:33 -05:00
Dianne Skoll
f1591140d4
- Add $DefaultDelta system variable.
...
- Make FRENAME delete definition of newname if oldname is not defined.
- Document FRENAME, $DefaultDelta and the char(8) hack.
2024-11-13 21:45:54 -05:00
Dianne Skoll
0f5de395ff
Add FRENAME command.
2024-11-13 17:29:32 -05:00
Dianne Skoll
533718b0a0
Massive whitespace cleanups: Untabify everything.
2024-11-08 20:30:13 -05:00
Dianne Skoll
302bc5a5de
Make hash table sizes prime numbers instead of powers of two.
2024-10-12 10:24:22 -04:00
Dianne Skoll
950c0b3747
Use HashPJW for hasing user-defined function names and variable names.
Remind unit tests / tests (push) Successful in 26s
2024-10-12 10:17:50 -04:00
Dianne Skoll
ad382fea25
Print hash-table statistics with "-ds" debugging.
Remind unit tests / tests (push) Failing after 29s
2024-10-11 16:34:11 -04:00
Dianne Skoll
a22e81040f
Check error return in a couple of spots.
2024-09-01 23:22:00 -04:00
Dianne Skoll
30e2e9c633
When looking at SATISFY expressions to make sure they use the trigger date, look recursively into user-defined functions in the expression also.
2024-08-28 17:49:12 -04:00
Dianne Skoll
8c072cd9b6
Add a warning if a function is redefined.
2024-08-27 21:41:45 -04:00
Dianne Skoll
b3cf741d15
Suppress warning in GCC 14.2.1. Patch courtesy of Emanuele Torre
Remind unit tests / tests (push) Successful in 38s
2024-08-23 07:44:36 -04:00
Dianne Skoll
526610bdd2
Stop parsing user func early if possible.
2024-07-02 09:16:47 -04:00
Dianne Skoll
0e010b56ec
Fix some error messages.
2024-06-03 17:59:11 -04:00
Dianne Skoll
d77d9854d2
Remove src/expr.h - everything in it is now in types.h or protos.h
2024-06-02 10:26:41 -04:00
Dianne Skoll
b78702cc53
Assume all function names are lower-case.
2024-06-01 08:46:27 -04:00
Dianne Skoll
d2b43605ad
Completely revamp expression engine.
2024-06-01 08:19:12 -04:00
Dianne Skoll
7728e09337
Don't allow duplicate arg names in function definitions.
2024-06-01 08:19:09 -04:00
Dianne Skoll
959355b19c
Stricter parsing of '-i' option.
2024-05-25 09:36:33 -04:00
Dianne Skoll
c03a95ad94
Use built-in versions of strdup, strcasecmp and strncasecmp instead of writing our own.
2024-04-21 14:44:24 -04:00
Dianne Skoll
72d10178bf
Mass-update copyright year to 2024.
2023-12-31 12:05:03 -05:00
Dianne Skoll
32e8db322d
Stricter parsing of SET command expressions.
2023-12-22 14:22:54 -05:00
Dianne Skoll
64fa71ab09
Avoid segfault if we define a function on the command-line with -i
2023-02-22 09:57:09 -05:00
Dianne Skoll
18f21693af
Clean up some warnings from cppcheck static analyzer.
2023-02-07 10:28:02 -05:00
Dianne Skoll
2f196e3c9f
Update copyright year. :)
2022-12-30 13:43:28 -05:00
Dianne Skoll
0cea410529
Add a bunch of: "SPDX-License-Identifier: GPL-2.0-only" comments.
2022-12-26 14:24:33 -05:00
Dianne Skoll
2afe95d090
Fix typo in comment.
2022-10-18 17:25:59 -04:00
Dianne Skoll
dbe4c662c1
Add the "FUNSET" command to delete user-defined functions.
2022-10-12 14:12:13 -04:00
Dianne Skoll
df9ef6e13a
Print call stack if an error occurs in a user-defined function.
2022-03-25 14:03:06 -04:00
Dianne Skoll
780044219f
Store the filename / lineno at which a user-defined function is defined.
2022-03-25 13:40:07 -04:00
Dianne Skoll
4d17494371
Bump copyright date.
2022-03-14 21:12:20 -04:00
Dianne Skoll
61d665ef7d
Turn a bunch of Eprint calls into Wprint calls to indicate warnings instead of errors.
2022-03-12 10:27:58 -05:00
Dianne Skoll
34409f7a7d
Update copyright year.
2021-04-02 10:43:54 -04:00
Dianne Skoll
8b4bc0f56e
Print warning if we truncate a function name.
2019-12-31 22:54:22 -05:00
Dianne Skoll
fbbffb4672
Bump version to 3.1.18 and copyright year to 2020.
2019-12-30 11:15:00 -05:00
Dianne Skoll
72403a2512
Warn if "OMIT a THROUGH b" has a > b
2019-11-14 11:09:51 -05:00
Dianne Skoll
6178a627a0
Fix bug that prevented warning if we redefine a built-in function.
2019-11-07 20:50:35 -05:00
Dianne Skoll
52d252723f
Depenguinization.
2018-11-04 10:56:47 -05:00