summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authordas <das>2008-06-12 06:29:14 (GMT)
committerdas <das>2008-06-12 06:29:14 (GMT)
commit3e497c1f548a8cbba7c7211b72f9b476f4093355 (patch)
tree51011188377a8200015fe034379e37100688c9a5
parent478314cd955802ff15753a226ac6a1e7ee7d73d8 (diff)
downloadtcl-3e497c1f548a8cbba7c7211b72f9b476f4093355.zip
tcl-3e497c1f548a8cbba7c7211b72f9b476f4093355.tar.gz
tcl-3e497c1f548a8cbba7c7211b72f9b476f4093355.tar.bz2
* generic/tclOO.c: use TclOOStubs hooks field to retrieve
* generic/tclOODecls.h: TclOOIntStubs pointer. [Bug 1980953] * generic/tclOOIntDecls.h: * generic/tclOOStubInit.c: * generic/tclOOStubLib.c:
-rw-r--r--ChangeLog65
-rw-r--r--generic/tclOO.c6
-rw-r--r--generic/tclOODecls.h4
-rw-r--r--generic/tclOOIntDecls.h11
-rw-r--r--generic/tclOOStubInit.c11
-rw-r--r--generic/tclOOStubLib.c10
6 files changed, 57 insertions, 50 deletions
diff --git a/ChangeLog b/ChangeLog
index 56c825e..ddd5f0f 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,24 @@
+2008-06-12 Daniel Steffen <das@users.sourceforge.net>
+
+ * generic/tclOO.c: use TclOOStubs hooks field to retrieve
+ * generic/tclOODecls.h: TclOOIntStubs pointer. [Bug 1980953]
+ * generic/tclOOIntDecls.h:
+ * generic/tclOOStubInit.c:
+ * generic/tclOOStubLib.c:
+
+ * generic/tclIORTrans.c: fix signed <-> unsigned cast warnings.
+
+ * unix/Makefile.in: clean generated tclDTrace.h file.
+ * unix/configure.in: fix static DTrace-enabled build on Solaris.
+
+ * unix/tcl.m4 (SunOS-5.11): fix 64bit amd64 support with gcc & Sun cc.
+ * unix/configure: autoconf-2.59
+
+ * macosx/Tcl.xcodeproj/project.pbxproj: add tclIORTrans.c; updates and
+ cleanup for Xcode 3.1/Leopard.
+ * macosx/Tcl.xcode/project.pbxproj: sync Tcl.xcodeproj changes.
+ * macosx/README: document new build configs.
+
2008-06-10 Joe English <jenglish@users.sourceforge.net>
* generic/tclEncoding.c(UtfToUtfProc): Avoid unwanted sign extension
@@ -7,23 +28,21 @@
2008-06-10 Andreas Kupries <andreask@activestate.com>
* tests/ioTrans.test (iortrans.tf-6.1): Fixed the [Bug 1988552],
- reported by Kevin. Have to close the channel before removal of
- the file. Fixed same bug in test 'iortrans.tf-11.0', after
- fixing missing cleanup of the file in 'iortrans.tf-11.*'. Lastly
- fixed the names of the threaded tests 'iortrans-8.*' to the
- correct 'iortrans.tf-8.*'.
+ reported by Kevin. Have to close the channel before removal of the
+ file. Fixed same bug in test 'iortrans.tf-11.0', after fixing missing
+ cleanup of the file in 'iortrans.tf-11.*'. Lastly fixed the names of
+ the threaded tests 'iortrans-8.*' to the correct 'iortrans.tf-8.*'.
2008-06-09 Andreas Kupries <andreas_kupries@users.sourceforge.net>
- * generic/tclIORTrans.c (ReflectInput): Fixed a bug triggered by
- Pat Thoyts <patthoyts@users.sourceforge.net>. Reset the EOF flag
- after draining the Tcl level into the result buffer, to make sure
- that the result buffer will be drained as well by repeated calls
- to ReflectInput should it contain more than one buffer-full of
- data. Without that reset the higher I/O system will not call on
- ReflectInput anymore due to the assumed EOF, thus losing the data
- which did not fit in the buffer of the call which caused the eof
- and drain.
+ * generic/tclIORTrans.c (ReflectInput): Fixed a bug triggered by Pat
+ Thoyts <patthoyts@users.sourceforge.net>. Reset the EOF flag after
+ draining the Tcl level into the result buffer, to make sure that the
+ result buffer will be drained as well by repeated calls to
+ ReflectInput should it contain more than one buffer-full of data.
+ Without that reset the higher I/O system will not call on ReflectInput
+ anymore due to the assumed EOF, thus losing the data which did not fit
+ in the buffer of the call which caused the eof and drain.
2008-06-09 Donal K. Fellows <dkf@users.sf.net>
@@ -31,6 +50,7 @@
that occurred when all methods were hidden. [Bug 1987817]
2008-06-08 Miguel Sofer <msofer@users.sf.net>
+
* generic/tclBasic.c: Compilation of uplevel scripts, allow
* generic/tclCompCmds.c: non-body compiled scripts to access the
* generic/tclCompile.c: LVT (but not to extend it) and enable the
@@ -92,14 +112,13 @@
* generic/tclOOIntDecls.h: DLLIMPORT needed to make EXTERN work.
* generic/tclDictObj.c: Added missing initializers to the ensemble
- map to silence a compiler warning.
- Thanks to George Peter Staplin for the
- report.
+ map to silence a compiler warning. Thanks
+ to George Peter Staplin for the report.
* generic/tclOOMethod.c: Fix a bug where the refcount of a method
- was reset if the method was redefined while
- there was an active invocation.
- [Bug #1981001]
+ was reset if the method was redefined while
+ there was an active invocation.
+ [Bug 1981001]
2008-06-01 Donal K. Fellows <dkf@users.sf.net>
@@ -131,7 +150,7 @@
* unix/tclConfig.h.in: autoheader-2.59
* macosx/Tcl.xcodeproj/project.pbxproj: add new tclOO files; add debug
- * macosx/README: targets with corefoundation
+ * macosx/README: configs with corefoundation
disabled and with gcov; update
to Xcode 3.1.
@@ -226,9 +245,7 @@
Kenny for his help with this.
* unix/tclUnixThrd.c: Add platform-specific TSD functions for use by
- tclThreadStorage.c.
- * win/tclWinThrd.c: Add platform-specific TSD functions for use by
- tclThreadStorage.c.
+ * win/tclWinThrd.c: tclThreadStorage.c.
2008-05-09 Kevin B. Kenny <kennykb@acm.org>
diff --git a/generic/tclOO.c b/generic/tclOO.c
index f374876..667210b 100644
--- a/generic/tclOO.c
+++ b/generic/tclOO.c
@@ -8,7 +8,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclOO.c,v 1.7 2008/06/02 02:19:41 kennykb Exp $
+ * RCS: @(#) $Id: tclOO.c,v 1.8 2008/06/12 06:29:17 das Exp $
*/
#ifdef HAVE_CONFIG_H
@@ -118,7 +118,7 @@ static char initScript[] =
/* "tcl_findLibrary tcloo $oo::version $oo::version" */
/* " tcloo.tcl OO_LIBRARY oo::library;"; */
-MODULE_SCOPE const struct TclOOStubAPI * const tclOOStubAPIPtr;
+MODULE_SCOPE const TclOOStubs * const tclOOConstStubPtr;
/*
* Convenience macro for getting the foundation from an interpreter.
@@ -164,7 +164,7 @@ TclOOInit(
}
return Tcl_PkgProvideEx(interp, "TclOO", TCLOO_VERSION,
- (ClientData) tclOOStubAPIPtr);
+ (ClientData) tclOOConstStubPtr);
}
/*
diff --git a/generic/tclOODecls.h b/generic/tclOODecls.h
index 375abf3..969cd5d 100644
--- a/generic/tclOODecls.h
+++ b/generic/tclOODecls.h
@@ -1,5 +1,5 @@
/*
- * $Id: tclOODecls.h,v 1.4 2008/06/01 02:02:48 kennykb Exp $
+ * $Id: tclOODecls.h,v 1.5 2008/06/12 06:29:18 das Exp $
*
* This file is (mostly) automatically generated from tclOO.decls.
*/
@@ -22,7 +22,7 @@
/*
* WARNING: This file is automatically generated by the tools/genStubs.tcl
* script. Any modifications to the function declarations below should be made
- * in the generic/tcl.decls script.
+ * in the generic/tclOO.decls script.
*/
diff --git a/generic/tclOOIntDecls.h b/generic/tclOOIntDecls.h
index bc6c2d3..de761a7 100644
--- a/generic/tclOOIntDecls.h
+++ b/generic/tclOOIntDecls.h
@@ -1,5 +1,5 @@
/*
- * $Id: tclOOIntDecls.h,v 1.4 2008/06/01 02:02:49 kennykb Exp $
+ * $Id: tclOOIntDecls.h,v 1.5 2008/06/12 06:29:18 das Exp $
*
* This file is (mostly) automatically generated from tclOO.decls.
*/
@@ -21,7 +21,7 @@
/*
* WARNING: This file is automatically generated by the tools/genStubs.tcl
* script. Any modifications to the function declarations below should be made
- * in the generic/tcl.decls script.
+ * in the generic/tclOO.decls script.
*/
/* !BEGIN!: Do not edit below this line. */
@@ -258,12 +258,7 @@ extern CONST TclOOIntStubs *tclOOIntStubsPtr;
/* !END!: Do not edit above this line. */
-struct TclOOStubAPI {
- CONST TclOOStubs *stubsPtr;
- CONST TclOOIntStubs *intStubsPtr;
-};
-
#undef TCL_STORAGE_CLASS
#define TCL_STORAGE_CLASS DLLIMPORT
-#endif /* _TCLOODECLS */
+#endif /* _TCLOOINTDECLS */
diff --git a/generic/tclOOStubInit.c b/generic/tclOOStubInit.c
index 522fa6b..06e22d0 100644
--- a/generic/tclOOStubInit.c
+++ b/generic/tclOOStubInit.c
@@ -1,5 +1,5 @@
/*
- * $Id: tclOOStubInit.c,v 1.3 2008/06/01 00:33:05 dkf Exp $
+ * $Id: tclOOStubInit.c,v 1.4 2008/06/12 06:29:18 das Exp $
*
* This file is (mostly) automatically generated from tclOO.decls.
* It is compiled and linked in with the tclOO package proper.
@@ -73,11 +73,6 @@ static const TclOOStubs tclOOStubs = {
/* !END!: Do not edit above this line. */
-static const struct TclOOStubAPI tclOOStubAPI = {
- &tclOOStubs,
- &tclOOIntStubs
-};
-
-MODULE_SCOPE const struct TclOOStubAPI * const tclOOStubAPIPtr;
-const struct TclOOStubAPI * const tclOOStubAPIPtr = &tclOOStubAPI;
+MODULE_SCOPE const TclOOStubs * const tclOOConstStubPtr;
+const TclOOStubs * const tclOOConstStubPtr = &tclOOStubs;
diff --git a/generic/tclOOStubLib.c b/generic/tclOOStubLib.c
index 280854b..0414ae4 100644
--- a/generic/tclOOStubLib.c
+++ b/generic/tclOOStubLib.c
@@ -1,5 +1,5 @@
/*
- * $Id: tclOOStubLib.c,v 1.3 2008/06/01 00:33:05 dkf Exp $
+ * $Id: tclOOStubLib.c,v 1.4 2008/06/12 06:29:18 das Exp $
* ORIGINAL SOURCE: tk/generic/tkStubLib.c, version 1.9 2004/03/17
*/
@@ -53,16 +53,16 @@ TclOOInitializeStubs(
ClientData clientData = NULL;
const char *actualVersion =
Tcl_PkgRequireEx(interp, packageName,version, exact, &clientData);
- struct TclOOStubAPI *stubsAPIPtr = clientData;
- if (stubsAPIPtr == NULL) {
+ if (clientData == NULL) {
Tcl_ResetResult(interp);
Tcl_AppendResult(interp, "Error loading ", packageName, " package; ",
"package not present or incomplete", NULL);
return NULL;
} else {
- const TclOOStubs * const stubsPtr = stubsAPIPtr->stubsPtr;
- const TclOOIntStubs * const intStubsPtr = stubsAPIPtr->intStubsPtr;
+ const TclOOStubs * const stubsPtr = clientData;
+ const TclOOIntStubs * const intStubsPtr = stubsPtr->hooks ?
+ stubsPtr->hooks->tclOOIntStubs : NULL;
if (!actualVersion) {
return NULL;