[pypy-commit] pypy default: merge heads

arigo pypy.commits at gmail.com
Tue Feb 21 04:27:35 EST 2017


Author: Armin Rigo <arigo at tunes.org>
Branch: 
Changeset: r90247:c8b8ba5341a7
Date: 2017-02-21 10:26 +0100
http://bitbucket.org/pypy/pypy/changeset/c8b8ba5341a7/

Log:	merge heads

diff --git a/rpython/annotator/unaryop.py b/rpython/annotator/unaryop.py
--- a/rpython/annotator/unaryop.py
+++ b/rpython/annotator/unaryop.py
@@ -704,7 +704,8 @@
             s_func = bookkeeper.immutablevalue(
                              runicode.unicode_encode_utf_8_elidable)
             s_errors = bookkeeper.immutablevalue('strict')
-            s_errorhandler = bookkeeper.immutablevalue(None)
+            s_errorhandler = bookkeeper.immutablevalue(
+                                    runicode.default_unicode_error_encode)
             s_allow_surr = bookkeeper.immutablevalue(True)
             args = [self, self.len(), s_errors, s_errorhandler, s_allow_surr]
             bookkeeper.emulate_pbc_call(bookkeeper.position_key, s_func, args)
diff --git a/rpython/rtyper/rstr.py b/rpython/rtyper/rstr.py
--- a/rpython/rtyper/rstr.py
+++ b/rpython/rtyper/rstr.py
@@ -383,9 +383,10 @@
         from rpython.rlib import runicode
         s = hlunicode(ll_s)
         assert s is not None
+        errorhandler = runicode.default_unicode_error_encode
         # NB. keep the arguments in sync with annotator/unaryop.py
         bytes = runicode.unicode_encode_utf_8_elidable(
-            s, len(s), 'strict', None, True)
+            s, len(s), 'strict', errorhandler, True)
         return self.ll.llstr(bytes)
 
     def rtype_method_encode(self, hop):
diff --git a/rpython/translator/platform/posix.py b/rpython/translator/platform/posix.py
--- a/rpython/translator/platform/posix.py
+++ b/rpython/translator/platform/posix.py
@@ -51,11 +51,12 @@
         return ["-Wl,--export-dynamic"]
 
     def _link(self, cc, ofiles, link_args, standalone, exe_name):
-        self._exe_name = str(exe_name)
         args = [str(ofile) for ofile in ofiles] + link_args
         args += ['-o', str(exe_name)]
         if not standalone:
+            self._exe_name = str(exe_name)
             args = self._args_for_shared(args)
+            del self._exe_name      # remove, otherwise __eq__() fails
         self._execute_c_compiler(cc, args, exe_name,
                                  cwd=str(exe_name.dirpath()))
         return exe_name


More information about the pypy-commit mailing list