summaryrefslogtreecommitdiffstats
path: root/unix/tclLoadDl.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2006-06-13 22:10:19 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2006-06-13 22:10:19 (GMT)
commit8aa008feecf66fb147b65f564af0dc679facb58a (patch)
treeaad3e8d23373ad1caf9967cd45978bf4baca8957 /unix/tclLoadDl.c
parente755bf4fe6fbbe333dd04a1fecbe2015d7c3734c (diff)
downloadtcl-8aa008feecf66fb147b65f564af0dc679facb58a.zip
tcl-8aa008feecf66fb147b65f564af0dc679facb58a.tar.gz
tcl-8aa008feecf66fb147b65f564af0dc679facb58a.tar.bz2
Workaround for silly compiler bug. [Bug 1503729]
Diffstat (limited to 'unix/tclLoadDl.c')
-rw-r--r--unix/tclLoadDl.c11
1 files changed, 9 insertions, 2 deletions
diff --git a/unix/tclLoadDl.c b/unix/tclLoadDl.c
index fa1371f..d92dc04 100644
--- a/unix/tclLoadDl.c
+++ b/unix/tclLoadDl.c
@@ -9,7 +9,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclLoadDl.c,v 1.15 2005/11/11 23:46:34 dkf Exp $
+ * RCS: @(#) $Id: tclLoadDl.c,v 1.16 2006/06/13 22:10:19 dkf Exp $
*/
#include "tclInt.h"
@@ -92,8 +92,15 @@ TclpDlopen(
}
if (handle == NULL) {
+ /*
+ * Write the string to a variable first to work around a compiler bug
+ * in the Sun Forte 6 compiler. [Bug 1503729]
+ */
+
+ const char *errorStr = dlerror();
+
Tcl_AppendResult(interp, "couldn't load file \"",
- Tcl_GetString(pathPtr), "\": ", dlerror(), NULL);
+ Tcl_GetString(pathPtr), "\": ", errorStr, NULL);
return TCL_ERROR;
}