diff --git a/src/pl/plpython/expected/plpython_function.out b/src/pl/plpython/expected/plpython_function.out
index 4ac5260f1e8a31442e2cd6ffa2147810a7d93a1a..a536ae7fe9a48029a28e1b5ebaa259c858d723a6 100644
--- a/src/pl/plpython/expected/plpython_function.out
+++ b/src/pl/plpython/expected/plpython_function.out
@@ -270,21 +270,21 @@ LANGUAGE plpythonu;
 --
 -- Unicode error handling
 --
-CREATE FUNCTION unicode_return_error() RETURNS text AS '
+CREATE FUNCTION unicode_return_error() RETURNS text AS E'
 return u"\\x80"
 ' LANGUAGE plpythonu;
-CREATE FUNCTION unicode_trigger_error() RETURNS trigger AS '
+CREATE FUNCTION unicode_trigger_error() RETURNS trigger AS E'
 TD["new"]["testvalue"] = u"\\x80"
 return "MODIFY"
 ' LANGUAGE plpythonu;
 CREATE TRIGGER unicode_test_bi BEFORE INSERT ON unicode_test
   FOR EACH ROW EXECUTE PROCEDURE unicode_trigger_error();
-CREATE FUNCTION unicode_plan_error1() RETURNS text AS '
+CREATE FUNCTION unicode_plan_error1() RETURNS text AS E'
 plan = plpy.prepare("SELECT $1 AS testvalue", ["text"])
 rv = plpy.execute(plan, [u"\\x80"], 1)
 return rv[0]["testvalue"]
 ' LANGUAGE plpythonu;
-CREATE FUNCTION unicode_plan_error2() RETURNS text AS '
+CREATE FUNCTION unicode_plan_error2() RETURNS text AS E'
 plan = plpy.prepare("SELECT $1 AS testvalue1, $2 AS testvalue2", ["text", "text"])
 rv = plpy.execute(plan, u"\\x80", 1)
 return rv[0]["testvalue1"]
diff --git a/src/pl/plpython/sql/plpython_function.sql b/src/pl/plpython/sql/plpython_function.sql
index cbee81cc63f257864dbbe78216c02643458d78c6..c5920685d9617889191b6a03aa58d81d7dbec4e1 100644
--- a/src/pl/plpython/sql/plpython_function.sql
+++ b/src/pl/plpython/sql/plpython_function.sql
@@ -318,11 +318,11 @@ LANGUAGE plpythonu;
 -- Unicode error handling
 --
 
-CREATE FUNCTION unicode_return_error() RETURNS text AS '
+CREATE FUNCTION unicode_return_error() RETURNS text AS E'
 return u"\\x80"
 ' LANGUAGE plpythonu;
 
-CREATE FUNCTION unicode_trigger_error() RETURNS trigger AS '
+CREATE FUNCTION unicode_trigger_error() RETURNS trigger AS E'
 TD["new"]["testvalue"] = u"\\x80"
 return "MODIFY"
 ' LANGUAGE plpythonu;
@@ -330,13 +330,13 @@ return "MODIFY"
 CREATE TRIGGER unicode_test_bi BEFORE INSERT ON unicode_test
   FOR EACH ROW EXECUTE PROCEDURE unicode_trigger_error();
 
-CREATE FUNCTION unicode_plan_error1() RETURNS text AS '
+CREATE FUNCTION unicode_plan_error1() RETURNS text AS E'
 plan = plpy.prepare("SELECT $1 AS testvalue", ["text"])
 rv = plpy.execute(plan, [u"\\x80"], 1)
 return rv[0]["testvalue"]
 ' LANGUAGE plpythonu;
 
-CREATE FUNCTION unicode_plan_error2() RETURNS text AS '
+CREATE FUNCTION unicode_plan_error2() RETURNS text AS E'
 plan = plpy.prepare("SELECT $1 AS testvalue1, $2 AS testvalue2", ["text", "text"])
 rv = plpy.execute(plan, u"\\x80", 1)
 return rv[0]["testvalue1"]