Dianne Skoll
7e5dc26ee5
*PROPERLY* disable RUN in eval. :)
2025-05-23 12:03:09 -04:00
Dianne Skoll
4c2b6031cd
Disable shell() inside an eval("...") for safety.
...
Based on email from Tim Chase.
2025-05-23 11:48:06 -04:00
Dianne Skoll
70a97a8fe5
Add trigbase() built-in function.
2025-05-22 17:44:42 -04:00
Dianne Skoll
8a6857b787
Add test to ensure recursive eval() yields error rather than segfault.
2025-05-22 15:00:46 -04:00
Dianne Skoll
3118f8d2a4
Add "eval()" built-in function.
2025-05-22 13:52:07 -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
43d0066780
Add test for additional non-constant debugging message.
2025-05-21 12:24:44 -04:00
Dianne Skoll
1e3657b728
Overhaul how IF/ELSE work so we can track "constant-ness" of variables.
...
We now keep track of whether a variable holds a "constant" value
(ie, a value that will stay the same on successive Remind runs)
so Purge Mode can be more accurate.
2025-05-20 22:11:39 -04:00
Dianne Skoll
31c8893a2a
Add tests for non-const-expression debugging output.
2025-05-20 12:03:53 -04:00
Dianne Skoll
1be6ff23fb
Optimmize away ! INT_CONSTANT.
2025-05-16 10:48:02 -04:00
Dianne Skoll
6aa217044b
Implement wkdaynum("dayname")
2025-05-14 18:30:47 -04:00
Dianne Skoll
c64d939237
Allow argument to monnum to be a string, in which case it's parsed as a month name.
2025-05-14 09:57:16 -04:00
Dianne Skoll
3fb1db0880
Add catcherr() built-in function.
2025-05-10 09:33:24 -04:00
Dianne Skoll
a35de17b00
Add the "catch()" built-in function.
2025-05-09 17:09:00 -04:00
Dianne Skoll
213138a7b7
Split the "-ds" debug flag into "-ds" and "-dh"
...
-ds prints parsed expressions
-dh dumps hash-table statistics on exit.
2024-12-31 12:50:15 -05:00
Dianne Skoll
b8c4786b33
Allow INCLUDE/DO/SYSINCLUDE to take a QuotedString argument. This allows for filenames with spaces in them.
2024-12-13 10:38:34 -05:00
Dianne Skoll
3362c7226c
Add regression test for commit 356b562d75
Remind unit tests / tests (push) Successful in 31s
2024-12-12 12:17:15 -05:00
Dianne Skoll
bc7c57e53b
Add another translation-propagation test.
Remind unit tests / tests (push) Successful in 27s
2024-12-11 20:10:11 -05:00
Dianne Skoll
a894076bfc
Verify two-way correspondence between translation table and system variables.
2024-12-11 19:48:19 -05:00
Dianne Skoll
d3e6c81a3a
Synthesize mixed-case translations.
2024-12-10 17:02:41 -05:00
Dianne Skoll
a622d4fad4
Add LANGID translations to all language packs.
2024-12-10 15:27:41 -05:00
Dianne Skoll
9dbb0de7e6
Fix bug in ParseQuotedString
2024-12-09 20:07:29 -05:00
Dianne Skoll
d9796e72e5
Allow error messages to be localized.
2024-12-09 19:55:23 -05:00
Dianne Skoll
1446ac0552
Make the output of "make test" considerably less verbose.
Remind unit tests / tests (push) Successful in 33s
2024-12-09 14:33:02 -05:00
Dianne Skoll
1443282859
Add a whack more torture tests.
2024-12-09 14:09:40 -05:00
Dianne Skoll
4a2d707654
Properly handle deleting everything out of a hash table.
2024-12-09 13:59:41 -05:00
Dianne Skoll
a05d9eefc9
Make "SET $foo" also add a translation table entry if $foo is a dynamic translation variable.
2024-12-09 13:29:05 -05:00
Dianne Skoll
973019c4c7
Implement TRANSLATE keyword.
2024-12-09 12:56:40 -05:00
Dianne Skoll
d161a8ff1a
Actually allow up to 9 levels of INCLUDE nesting.
Remind unit tests / tests (push) Successful in 42s
2024-11-30 23:03:09 -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
d7f5582a45
Add a test for the msgsuffix char(8) hack.
2024-11-13 21:59:23 -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
ad5dff1de7
Add tests for FRENAME
2024-11-13 17:49:31 -05:00
Dianne Skoll
d5e38ee3b4
Fix typo in test.rem.
Remind unit tests / tests (push) Successful in 28s
2024-10-18 11:26:41 -04:00
Dianne Skoll
10ae0b0077
Add DEBUG +s test.
2024-09-16 14:43:37 -04:00
Dianne Skoll
df6298bd63
Add test for $SuppressImplicitWarnings
Remind unit tests / tests (push) Successful in 1m15s
2024-09-15 16:59:46 -04:00
Dianne Skoll
0806b6738f
Add test for time constants of the form '12:34'
Remind unit tests / tests (push) Successful in 41s
2024-09-13 13:07:49 -04:00
Dianne Skoll
c645db5ede
Diagnose bad YYYY-MM-DD constants in REM command.
2024-09-10 14:09:52 -04:00
Dianne Skoll
ef6b9c3783
Better error message when a number that isn't recognized as a day number or year is encountered.
2024-09-10 13:57:34 -04:00
Dianne Skoll
7d13f4b09e
Better diagnostics when printing "Too many/few arguments" errors
2024-08-28 18:14:43 -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
c019221d15
Add diagnostics for missing/bad subst_XXX functions.
2024-08-28 15:15:34 -04:00
Dianne Skoll
b7bd6faf07
Warn if SCHED/WARN/OMITFUNC functions take wrong number of args.
2024-08-28 15:02:22 -04:00
Dianne Skoll
cd8624e176
Tweak diagnostic messages.
2024-08-28 14:35:49 -04:00
Dianne Skoll
e201ebcfa4
Document that logical operators can take any type; add tests.
2024-08-28 14:22:07 -04:00
Dianne Skoll
1adccf9b1f
Add tests for SCHED/WARN/OMITFUNC functions that don't use their argument.
2024-08-28 13:54:47 -04:00
Dianne Skoll
1e0d650737
Fix tests.
2024-08-28 13:49:34 -04:00
Dianne Skoll
dc62841517
Fix accidental broken commit. :(
2024-08-28 13:45:42 -04:00
Dianne Skoll
b794a45c3f
Add more SATISFY diagnostics.
Remind unit tests / tests (push) Successful in 34s
2024-08-27 15:02:11 -04:00
Dianne Skoll
702704af1a
Make sure SATISFY expressions are either constant or mention trigdate.
2024-08-27 11:22:42 -04:00