Age | Commit message (Collapse) | Author | Files | Lines |
|
*: Add tests/expr-new.test from Tcl
*: Directly convert from int to double if possible
*: Always treat '-' in front of a number as unary minus
so that '-0x1234' works.
*: Fix expr when the variable does not exist
*: Add optional support for math functions
*: Also double/0 == Inf or -Inf
|
|
Implement lsearch in C with options
*: lsearch -exact, -glob, -regexp, -not, -bool, -all, -inline
Add tests for lsearch and expand
expr operators: in and ni (Tcl 8.6)
|
|
Add unset -nocomplain and tests
Implement lrepeat
|
|
Also remove all literal sharing code. It was disabled anyway.
|
|
|
|
This reverts commit 3201b17708d278541b66962045b68f9b0687c1dc.
|
|
*: Detect it during tokenisation rather than afterwards
*: Create a special token for it
*: Also create most tokens as JIM_TT_STR rather than JIM_TT_ESC
|
|
*: Import Tcl expr tests (expr-old.test) and fix things:
*: !double should be boolean (int)
*: double&&double and double||double should be boolean (int)
*: 2.34e+1 and 2.0e2 are an acceptable double values
*: precedence of && and || is not equal
*: precedence of ? and : is not equal
*: expression "2:3" is invalid
*: lazy evaluation involving multiple && and || was quite wrong
*: Fix unary minus wrt subexpressions. e.g. -(-1.5)
*: Also add support for functions: int, double, abs, round
*: Fix lazy evaluation of ternary operator
*: Error on missing ?, missing :
*: Fix double unary minus
*: Add unary plus
*: Fix parsing of double with no '.' before 'e'. Also support 'E'.
*: Right-to-left associativity of ternary operator is *almost* correct
*: Import div/mod of -ve integers from Tcl
*: Rotate (<<< and >>>) failed because of wrong arity
*: Don't use auto-converted double values
*: When an expression fails, show the expression
*: Bump version to 0.62
|
|
Subst was broken for backslash escapes
Add support for return, break, continue in subst commands
Accept abbreviations for switches to subst
Fix 'list #'
More tests
|
|
|
|
Use libc strtoull() for long long conversions
Also some white space cleanup
Also remove some win32 vestiges
Also improve error messages for array access errors
|
|
|
|
jimsh - retry on EINTR from fgets()
Fix 0 -> NULL for 64 bit systems
Fix overlapping memcpy
Fix jim array dereferencing bug
*: Counting of parentheses was incorrect with nested array references
*: The result for array dereference wasn't being used properly
Add os.uptime command
Documentation: autogenerated command index
Fix gets when last line has no newline
|
|
time should return wall time, not cpu time (Tcl compatible)
Bump version to 0.61
------------------------------------------------------------------------
|
|
env command allows a default to be supplied
Fix wrong 'file rename' error message
|
|
Remove unimplemented 'after restart|expire' from eventloop
Allow libjim to be build as a shared library
On some platforms, regex.h needs stdlib.h first
Use ualarm() only for times < 1 second
Fix warnings found by clang static analyser
*: printf/syslog %m isn't portable
*: some variables set but never read
*: some possible null pointer references (although mostly impossible)
*: also minor fixes to jim unit tests
Fix 'syslog -options <n>'
Must null terminate readlink() result
|
|
Add /lib/jim to the default auto_path
*: Otherwise there is no 'standard' location to install packages
Prompt should show name for all non-zero return types
Initial documentation for Jim
------------------------------------------------------------------------
|
|
format %.0f was wrong
Minor bug in [string trimright]
*: When the string was empty, a read was done of str[-1]
------------------------------------------------------------------------
|
|
|
|
Especially ternary operator and unary minus
Still evaluates both sides of the ternary operator :-(
Fix unary minus
And add const in more places to avoid this mistake in future
|
|
source fails with zero length file
unknown can't be called recursively
*: This can be useful when using unknown to dynamically load code,
which may in turn want to dynamically load code
*: Limit it to 50 recursions though
Allow string greater/less comparison
*: Comparing two strings for order did not work
Implement file join
*: It's not to hard and is handy when working with the current dir, ""
Don't omit [unknown] completely from stack trace
*: Since we lose valuable informtion, just omit the name
Fix return from case
Turn regexp patterns into real objects
*: Thus caching the compiled regexps
Allow error to rethrow an error
Replace bcopy() with more standard memcpy()
Fixes to parray, improve errorInfo
*: errorInfo takes an optional stack trace
Add tests for rethrowing errors via errorInfo
Fix ndelay
*: Was looking at wrong param
*: Also fix usage/help for aio.socket
Package should be able to call exit
*: Currently any return from a package is changed to JIM_ERR
Line counting is incorrect for backlash newline
|
|
The result of boolean ops on doubles is an int
*: e.g. 0.5 < 0.1 should be 0, not 0.1
Implement jimsh -e <cmd>
Allow jim to be built in a different location
*: e.g. mkdir build; cd build; ../configure ...; make jimsh
Add dict.test
|
|
jimsh argv0 was wrong
*: Should be the name of the script when run non-interactively
Missed adding jim.h changes for errorProc
Add lsort -command tests to jim/tests
Handle the case of a script with no tokens
------------------------------------------------------------------------
|
|
*: Improve stack trace handling on errors
*: Add 'info source'
*: Add 'info stacktrace'
*: Add errorInfo procedure to generate a human readable stack trace
*: Add tests for stacktrace
------------------------------------------------------------------------
|
|
Fix unset ::var properly this time
Ensure that jimsh exits with the correct exit code
*: Previously a script that did 'exit 0' would exit with 7!
|
|
Support @filehandle syntax
Support for nommu
Disable os.fork for nommu
Remove trailing newline
No need for binary escaping in bio module
------------------------------------------------------------------------
|
|
Implement 'lreplace'
Implement 'string last'
Implement 'pid'
Implement 'info procs'
Implement 'info script'
Implement 'info patchlevel' as an alias for 'info version'
Implement syslog extensions for jim
Fix return code display in jim-interactive.c
Make jim more compatible if JIM_TCL_COMPAT is set
*: Use tcl_interactive rather than jim_interactive
*: Use auto_path rather than jim_libpath
Add "." to the lib search path, not "./"
Fix a couple of files with CRLF line endings
|
|
*: Need to null terminate the buffer in Jim_EvalFile()
*: If an object is used a subst and a script, a crash will result.
set x abc
subst $x
eval $x
------------------------------------------------------------------------
|
|
Casts to (void) are in order to silent GCC about unused variables.
I didn't want to break ABI for the sake of clean compilation
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
|
|
the file and line number for return -code error's are
now added to the dumped stack trace.
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
|
|
Not a double. expr {0.5 < 1.0}
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
If an error occurs when {expand} is in operation, the line number is wrong.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
If an object is used in subst, then source, a crash will result
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
It was doing nothing.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
*: make-c-ext is now make-c-ext.tcl
*: build doc/Tcl.html with asciidoc
*: Jim_SetIntResult -> Jim_SetResultInt
*: Jim_EvalFile() now reads the file contents in one go
|
|
Need to duplicate a possibly shared object when loading a package fails
Need to initialise signal-related fields in the jim interp
Return an error from 'lsort -command' on failure
|
|
Also:
- make stream.server set SO_REUSEADDR
- do object reference properly for callbacks
- white space cleanup in jim-eventloop.c
- fix the pwd command
- add support for JIM_MODFLAG_FULLARGV to subcmd
- make verbose runtests easier to read
- bio might not be available
|
|
Save (but then cleanup) generated extensions
Add package and readdir to 'all' extensions
Order of static extensions matters!!
Simple C define support for configured extensions
Fix some compiler warnings
|
|
jim
---
Add a unique id facility to jim (Jim_GetId())
Remove unused jim_vasprintf(), Jim_AppendString_sprintf()
Remove duplicate output in Jim_Panic()
Add support for catch -signal
aio
---
Use this for aio handles
aio automatically creates stdin, stdout and stderr channels
Jim_AioFilehandle() returns the 'FILE *' filehandle for a channel
If JIM_TCL_COMPAT is set, create top level open, close, read, puts, etc.
load
----
load core command split out into jim-load.c
package
-------
package core command split out into jim-package.c
added 'package list'
posix
-----
Remove os.sleep, os.usleep, os.sethostname, os.signal, pit, Jpit
Most of these are in 'signal'
|
|
- string trim, trimleft, trimright
- lsort -command, -integer
- fix 'unset ::var'
|
|
|
|
Nvp, getopt, move interactive processing to jim-interactive.c
|
|
Note that this commit removes some files and undoes
some commits which will be reapplied later.
This is the easiest way to switch across.
Signed-off-by: Steve Bennett <steveb@workware.net.au>
|
|
It wasn't added to the API list => NPE
JIM_REGISTER_API(ListInsertElements);
Signed-off-by: Øyvind Harboe <oyvind.harboe@zylin.com>
|
|
Remove "FreeBSD license" statements, since it's not a correct term
I believe.
Small cleanup while being here.
|
|
This reverts commit 1e2fdd7d9e877fbe2c88a4c32f098ce1e575dc1d.
|