Tcl Source Code

Check-in [df5c902252]
Login
Bounty program for improvements to Tcl and certain Tcl packages.
Tcl 2019 Conference, Houston/TX, US, Nov 4-8
Send your abstracts to [email protected]
or submit via the online form by Sep 9.

Many hyperlinks are disabled.
Use anonymous login to enable hyperlinks.

Overview
Comment:Fix gcc warning on 32-bit platforms
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | core-8-6-branch
Files: files | file ages | folders
SHA3-256:df5c902252a0307af8ec1833a83ad4da0494f3f337a75048b49c7d086f3d776d
User & Date: jan.nijtmans 2019-04-02 18:21:09
Context
2019-04-05
16:46
Relax timing for some socket tests a little bit. Hopefully this fixes the spurious hangs on Travis b... check-in: b0639b8475 user: jan.nijtmans tags: core-8-6-branch
2019-04-02
19:17
Merge 8.6 Leaf check-in: 1bcfcb3ac6 user: jan.nijtmans tags: androwish
18:23
merge-mark check-in: 5b3cc9e2a9 user: jan.nijtmans tags: core-8-branch
18:21
Fix gcc warning on 32-bit platforms check-in: df5c902252 user: jan.nijtmans tags: core-8-6-branch
2019-04-01
14:22
integrate sebres-8-6-tommath-1-1 - cherry-picking of several optimizations and simplifications of 8.... check-in: 0a72c6b7b4 user: sebres tags: core-8-6-branch
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/tclExecute.c.

8730
8731
8732
8733
8734
8735
8736

8737

8738
8739
8740
8741
8742
8743
8744
....
8772
8773
8774
8775
8776
8777
8778

8779

8780
8781
8782
8783
8784
8785
8786
	    goto doubleResult;
	}
	l1 = l2 = 0;
	w1 = w2 = 0; /* to silence compiler warning (maybe-uninitialized) */
	switch (type2) {
	case TCL_NUMBER_LONG:
	    l2 = *((const long *) ptr2);

    pwrLongExpon:

	    if (l2 == 0) {
		/*
		 * Anything to the zero power is 1.
		 */

		return constants[1];
	    } else if (l2 == 1) {
................................................................................
	    mp_clear(&big2);
	    break;
	}

	switch (type1) {
	case TCL_NUMBER_LONG:
	    l1 = *((const long *)ptr1);

    pwrLongBase:

	    switch (l1) {
	    case 0:
		/*
		 * Zero to a positive power is zero.
		 * Zero to a negative power is div by zero error.
		 */







>

>







 







>

>







8730
8731
8732
8733
8734
8735
8736
8737
8738
8739
8740
8741
8742
8743
8744
8745
8746
....
8774
8775
8776
8777
8778
8779
8780
8781
8782
8783
8784
8785
8786
8787
8788
8789
8790
	    goto doubleResult;
	}
	l1 = l2 = 0;
	w1 = w2 = 0; /* to silence compiler warning (maybe-uninitialized) */
	switch (type2) {
	case TCL_NUMBER_LONG:
	    l2 = *((const long *) ptr2);
#ifndef TCL_WIDE_INT_IS_LONG
    pwrLongExpon:
#endif
	    if (l2 == 0) {
		/*
		 * Anything to the zero power is 1.
		 */

		return constants[1];
	    } else if (l2 == 1) {
................................................................................
	    mp_clear(&big2);
	    break;
	}

	switch (type1) {
	case TCL_NUMBER_LONG:
	    l1 = *((const long *)ptr1);
#ifndef TCL_WIDE_INT_IS_LONG
    pwrLongBase:
#endif
	    switch (l1) {
	    case 0:
		/*
		 * Zero to a positive power is zero.
		 * Zero to a negative power is div by zero error.
		 */