Itcl - the [incr Tcl] extension

Check-in [b049519e72]
Login

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

Overview
Comment:Suppress clearly broken code (ItclMemberFunc != ItclDelegatedFunction).
Downloads: Tarball | ZIP archive | SQL archive
Timelines: family | ancestors | descendants | both | dgp-member-flags
Files: files | file ages | folders
SHA1: b049519e7269b09ea1f952359b7498dca11d16f2
User & Date: dgp 2015-05-20 20:04:34
Context
2015-05-21
13:56
Best I can tell, the condition on make only an implemented method known to the TclOO machinery -- leaving out those with no body yet defined -- is just an error. TclOO needs to know about them in order to match them up with the itcl::body that later defines them or to trigger auto-loading of their bodies. check-in: 2642a4eccf user: dgp tags: dgp-member-flags
2015-05-20
20:04
Suppress clearly broken code (ItclMemberFunc != ItclDelegatedFunction). check-in: b049519e72 user: dgp tags: dgp-member-flags
2015-05-08
12:28
Attempt to correct flags confusion leads to trouble. check-in: a9b92b644e user: dgp tags: dgp-member-flags
Changes
Hide Diffs Unified Diffs Ignore Whitespace Patch

Changes to generic/itclBuiltin.c.

1678
1679
1680
1681
1682
1683
1684

1685
1686
1687
1688
1689

1690
1691
1692
1693
1694
1695
1696
        hPtr = Tcl_FindHashEntry(&iclsPtr->delegatedFunctions,
                (char *)objPtr);
        Tcl_DecrRefCount(objPtr);
	if (hPtr != NULL) {
	    idmPtr = Tcl_GetHashValue(hPtr);
            isStar = 1;
	} else {

	    hPtr = Tcl_FindHashEntry(&iclsPtr->functions,
	            (char *)objv[2]);
	    if (hPtr != NULL) {
	        idmPtr = Tcl_GetHashValue(hPtr);
	    }

	}
    } else {
        found = 1;
	idmPtr = Tcl_GetHashValue(hPtr);
    }
    if (isStar) {
       /* check if the function is in the exceptions */







>





>







1678
1679
1680
1681
1682
1683
1684
1685
1686
1687
1688
1689
1690
1691
1692
1693
1694
1695
1696
1697
1698
        hPtr = Tcl_FindHashEntry(&iclsPtr->delegatedFunctions,
                (char *)objPtr);
        Tcl_DecrRefCount(objPtr);
	if (hPtr != NULL) {
	    idmPtr = Tcl_GetHashValue(hPtr);
            isStar = 1;
	} else {
#if 0
	    hPtr = Tcl_FindHashEntry(&iclsPtr->functions,
	            (char *)objv[2]);
	    if (hPtr != NULL) {
	        idmPtr = Tcl_GetHashValue(hPtr);
	    }
#endif
	}
    } else {
        found = 1;
	idmPtr = Tcl_GetHashValue(hPtr);
    }
    if (isStar) {
       /* check if the function is in the exceptions */