@@ -0,0 +1,22 @@
+Index: parse.y
+===================================================================
+--- parse.y.orig
++++ parse.y
+@@ -3106,7 +3106,7 @@ parse_matched_pair (qc, open, close, len
+ ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen);
+ xfree (nestret);
+
+- if ((rflags & P_DQUOTE) == 0)
++ if (extended_quote || (rflags & P_DQUOTE) == 0)
+ {
+ nestret = sh_single_quote (ttrans);
+ free (ttrans);
+@@ -3517,7 +3517,7 @@ eof_error:
+ ttrans = ansiexpand (nestret, 0, nestlen - 1, &ttranslen);
+ xfree (nestret);
+
+- if ((rflags & P_DQUOTE) == 0)
++ if (extended_quote || (rflags & P_DQUOTE) == 0)
+ {
+ nestret = sh_single_quote (ttrans);
+ free (ttrans);
|