aboutsummaryrefslogtreecommitdiff
path: root/src/backend/utils/misc/guc.c
diff options
context:
space:
mode:
authorBruce Momjian <bruce@momjian.us>2005-06-26 03:04:37 +0000
committerBruce Momjian <bruce@momjian.us>2005-06-26 03:04:37 +0000
commitbb3cce4ec9cc157a8dfc80b5b1770c2beac0a57e (patch)
tree5631b9dda006f8c56f6b1d4f64c72f015adf2468 /src/backend/utils/misc/guc.c
parentc96375a39b28e54e19fa5c9c2e3dd69c44b7618c (diff)
downloadpostgresql-bb3cce4ec9cc157a8dfc80b5b1770c2beac0a57e.tar.gz
postgresql-bb3cce4ec9cc157a8dfc80b5b1770c2beac0a57e.zip
Add E'' syntax so eventually normal strings can treat backslashes
literally. Add GUC variables: "escape_string_warning" - warn about backslashes in non-E strings "escape_string_syntax" - supports E'' syntax? "standard_compliant_strings" - treats backslashes literally in '' Update code to use E'' when escapes are used.
Diffstat (limited to 'src/backend/utils/misc/guc.c')
-rw-r--r--src/backend/utils/misc/guc.c35
1 files changed, 33 insertions, 2 deletions
diff --git a/src/backend/utils/misc/guc.c b/src/backend/utils/misc/guc.c
index 05ce93cf58f..17386049426 100644
--- a/src/backend/utils/misc/guc.c
+++ b/src/backend/utils/misc/guc.c
@@ -10,7 +10,7 @@
* Written by Peter Eisentraut <peter_e@gmx.net>.
*
* IDENTIFICATION
- * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.268 2005/06/17 22:32:47 tgl Exp $
+ * $PostgreSQL: pgsql/src/backend/utils/misc/guc.c,v 1.269 2005/06/26 03:03:41 momjian Exp $
*
*--------------------------------------------------------------------
*/
@@ -189,7 +189,9 @@ static int max_function_args;
static int max_index_keys;
static int max_identifier_length;
static int block_size;
-static bool integer_datetimes;
+static bool integer_datetimes;
+static bool escape_string_syntax;
+static bool standard_compliant_strings;
/* should be static, but commands/variable.c needs to get at it */
char *session_authorization_string;
@@ -873,6 +875,35 @@ static struct config_bool ConfigureNamesBool[] =
false, NULL, NULL
},
+ {
+ {"escape_string_warning", PGC_USERSET, COMPAT_OPTIONS_PREVIOUS,
+ gettext_noop("Warn about backslash escapes in ordinary, non-escape-syntax strings."),
+ NULL
+ },
+ &escape_string_warning,
+ false, NULL, NULL
+ },
+
+ {
+ {"escape_string_syntax", PGC_INTERNAL, PRESET_OPTIONS,
+ gettext_noop("Escape string syntax (E'') is supported."),
+ NULL,
+ GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
+ },
+ &escape_string_syntax,
+ true, NULL, NULL
+ },
+
+ {
+ {"standard_compliant_strings", PGC_INTERNAL, PRESET_OPTIONS,
+ gettext_noop("'' strings treat backslashes literally."),
+ NULL,
+ GUC_REPORT | GUC_NOT_IN_SAMPLE | GUC_DISALLOW_IN_FILE
+ },
+ &standard_compliant_strings,
+ false, NULL, NULL
+ },
+
/* End-of-list marker */
{
{NULL, 0, 0, NULL, NULL}, NULL, false, NULL, NULL