| Ticket UUID: | 342a9ab0e817c7d439d98c621f25d23305eac3a4 | ||
| Title: | sqlite build error | ||
| Type: | Bug | Created on: | 2023-11-13 17:54:19 |
| Submitter: | dgp | Assigned to: | jan.nijtmans |
| Subsystem: | None | Severity: | Minor |
| Priority: | 5 Medium | Last modified: | 2023-11-13 19:20:47 |
| Status: | Pending | Closed by: | nobody |
| Resolution: | Fixed | Closed on: | |
| Version: | |||
| Description: | ||||
Trying to build the sqlite trunk against the Tcl trunk, I see...
In file included from /home/dgp/fossil/tcl/generic/tcl.h:2426:0,
from /home/dgp/fossil/tcl/pkgs/sqlite/generic/tclsqlite3.c:46:
/home/dgp/fossil/tcl/pkgs/sqlite/generic/tclsqlite3.c: In function ‘dbPrepareAndBind’:
/home/dgp/fossil/tcl/generic/tclDecls.h:4032:67: error: size of array ‘_bool_Var’ is negative
# define TCLBOOLWARNING(boolPtr) ({__attribute__((unused)) char _bool_Var[sizeof(*(boolPtr)) > sizeof(int) ? -1 : 1];}),
^
/home/dgp/fossil/tcl/generic/tclDecls.h:4041:3: note: in expansion of macro ‘TCLBOOLWARNING’
(TCLBOOLWARNING(boolPtr)(sizeof(*(boolPtr)) >= sizeof(int) && (TCL_MAJOR_VERSION == 8)) ? tclStubsPtr->tcl_GetBooleanFromObj(interp, objPtr, (int *)(boolPtr)) : \
^
/home/dgp/fossil/tcl/pkgs/sqlite/generic/tclsqlite3.c:1588:11: note: in expansion of macro ‘Tcl_GetBooleanFromObj’
Tcl_GetBooleanFromObj(interp, pVar, &n);
| ||||
| User Comments: | ||||
jan.nijtmans added on 2023-11-13 19:20:47:
Fixed here. This warning was built into tcl.h exactly for this purpose: Tcl_GetBooleanFromObj() should never be used with a Tcl_Size or Tcl_WideInt pointer argument: You cannot always blindly convert int -> Tcl_Size The warning in Tcl works! Error now fixed in SQLite. I will prepare a new version (3.44.0), which contains this fix. Thanks! | ||||
