Tcl Source Code

Artifact [168ceb2569]
Login

Artifact 168ceb2569580f991536efc1df63c2ba396e8dc025c2fc3a28bd795d902e2525:

Attachment "setbignumobj-sif.diff" to ticket [1c60dca341] added by chrstphrchvz 2022-02-16 00:15:37. (unpublished)
diff --git generic/tclObj.c generic/tclObj.c
index 1fd674f2..a03ebb44 100644
--- generic/tclObj.c
+++ generic/tclObj.c
@@ -3547,7 +3547,7 @@ Tcl_SetBignumObj(
 	    goto tooLargeForLong;
 	}
 	if (bignumValue->sign) {
-	    TclSetLongObj(objPtr, -(long)value);
+	    TclSetLongObj(objPtr, (long)(0-value));
 	} else {
 	    TclSetLongObj(objPtr, (long)value);
 	}
@@ -3573,7 +3573,7 @@ Tcl_SetBignumObj(
 	    goto tooLargeForWide;
 	}
 	if (bignumValue->sign) {
-	    TclSetWideIntObj(objPtr, -(Tcl_WideInt)value);
+	    TclSetWideIntObj(objPtr, (Tcl_WideInt)(0-value));
 	} else {
 	    TclSetWideIntObj(objPtr, (Tcl_WideInt)value);
 	}