summaryrefslogtreecommitdiffstats
path: root/generic/tclCompCmds.c
diff options
context:
space:
mode:
authordkf <donal.k.fellows@manchester.ac.uk>2008-09-28 22:17:36 (GMT)
committerdkf <donal.k.fellows@manchester.ac.uk>2008-09-28 22:17:36 (GMT)
commitd41bad2545ee171add61111b71b9d8c5c3e89173 (patch)
tree33b115c93550ac4c16da41b57aba376b6af847bd /generic/tclCompCmds.c
parent58acf122398c693f3a99b458711b071301e10670 (diff)
downloadtcl-d41bad2545ee171add61111b71b9d8c5c3e89173.zip
tcl-d41bad2545ee171add61111b71b9d8c5c3e89173.tar.gz
tcl-d41bad2545ee171add61111b71b9d8c5c3e89173.tar.bz2
Implement TIP 314. [Patch 1901783]
Diffstat (limited to 'generic/tclCompCmds.c')
-rw-r--r--generic/tclCompCmds.c16
1 files changed, 15 insertions, 1 deletions
diff --git a/generic/tclCompCmds.c b/generic/tclCompCmds.c
index dae4417..877bb11 100644
--- a/generic/tclCompCmds.c
+++ b/generic/tclCompCmds.c
@@ -12,7 +12,7 @@
* See the file "license.terms" for information on usage and redistribution of
* this file, and for a DISCLAIMER OF ALL WARRANTIES.
*
- * RCS: @(#) $Id: tclCompCmds.c,v 1.146 2008/07/27 22:18:22 nijtmans Exp $
+ * RCS: @(#) $Id: tclCompCmds.c,v 1.147 2008/09/28 22:17:39 dkf Exp $
*/
#include "tclInt.h"
@@ -6219,6 +6219,20 @@ TclCompileEnsemble(
}
/*
+ * Also refuse to compile anything that uses a formal parameter list for
+ * now, on the grounds that it is too complex.
+ */
+
+ if (Tcl_GetEnsembleParameterList(NULL, ensemble, &listObj) != TCL_OK
+ || listObj != NULL) {
+ /*
+ * Figuring out how to compile this has become too much. Bail out.
+ */
+
+ return TCL_ERROR;
+ }
+
+ /*
* Next, get the flags. We need them on several code paths.
*/