summaryrefslogtreecommitdiffstats
path: root/generic/tclCompCmdsGR.c
diff options
context:
space:
mode:
authordkf <dkf@noemail.net>2014-09-09 19:49:08 (GMT)
committerdkf <dkf@noemail.net>2014-09-09 19:49:08 (GMT)
commit9e76b1aca3113eb784d036078aa575fd5e108a47 (patch)
tree72a3f847eacafc0e7683bb731876435229575b2b /generic/tclCompCmdsGR.c
parent012a0523f81e6f133c76b1cf9e61800a9777b282 (diff)
downloadtcl-9e76b1aca3113eb784d036078aa575fd5e108a47.zip
tcl-9e76b1aca3113eb784d036078aa575fd5e108a47.tar.gz
tcl-9e76b1aca3113eb784d036078aa575fd5e108a47.tar.bz2
[84af1192f5]: [regsub] compiler no longer confused by quantification handling.
FossilOrigin-Name: 25f44e9a6d13da68a2acd60c02e0ccf4d202d3a2
Diffstat (limited to 'generic/tclCompCmdsGR.c')
-rw-r--r--generic/tclCompCmdsGR.c7
1 files changed, 4 insertions, 3 deletions
diff --git a/generic/tclCompCmdsGR.c b/generic/tclCompCmdsGR.c
index 64dcaa6..603c51d 100644
--- a/generic/tclCompCmdsGR.c
+++ b/generic/tclCompCmdsGR.c
@@ -2270,7 +2270,7 @@ TclCompileRegexpCmd(
* converted pattern as a literal.
*/
- if (TclReToGlob(NULL, varTokenPtr[1].start, len, &ds, &exact)
+ if (TclReToGlob(NULL, varTokenPtr[1].start, len, &ds, &exact, NULL)
== TCL_OK) {
simple = 1;
PushLiteral(envPtr, Tcl_DStringValue(&ds),Tcl_DStringLength(&ds));
@@ -2362,7 +2362,7 @@ TclCompileRegsubCmd(
Tcl_Obj *patternObj = NULL, *replacementObj = NULL;
Tcl_DString pattern;
const char *bytes;
- int len, exact, result = TCL_ERROR;
+ int len, exact, quantified, result = TCL_ERROR;
if (parsePtr->numWords < 5 || parsePtr->numWords > 6) {
return TCL_ERROR;
@@ -2422,7 +2422,8 @@ TclCompileRegsubCmd(
*/
bytes = Tcl_GetStringFromObj(patternObj, &len);
- if (TclReToGlob(NULL, bytes, len, &pattern, &exact) != TCL_OK || exact) {
+ if (TclReToGlob(NULL, bytes, len, &pattern, &exact, &quantified)
+ != TCL_OK || exact || quantified) {
goto done;
}
bytes = Tcl_DStringValue(&pattern);