Ticket UUID: | 342a9ab0e817c7d439d98c621f25d23305eac3a4 | |||
Title: | sqlite build error | |||
Type: | Bug | Version: | ||
Submitter: | dgp | Created on: | 2023-11-13 17:54:19 | |
Subsystem: | None | Assigned To: | jan.nijtmans | |
Priority: | 5 Medium | Severity: | Minor | |
Status: | Pending | Last Modified: | 2023-11-13 19:20:47 | |
Resolution: | Fixed | Closed By: | nobody | |
Closed on: | ||||
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! |