From b473d0ae86402c07cf0a72edebdfccfae7646d32 Mon Sep 17 00:00:00 2001
From: Paul Sokolovsky <pfalcon@users.sourceforge.net>
Date: Tue, 6 May 2014 19:30:30 +0300
Subject: [PATCH] py: bytes(), str(): Add NotImplementedError for kwargs.

Addresses #567.
---
 py/objstr.c | 12 ++++++++++++
 1 file changed, 12 insertions(+)

diff --git a/py/objstr.c b/py/objstr.c
index 52520139a..f2f8063d0 100644
--- a/py/objstr.c
+++ b/py/objstr.c
@@ -108,6 +108,12 @@ STATIC void str_print(void (*print)(void *env, const char *fmt, ...), void *env,
 }
 
 STATIC mp_obj_t str_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const mp_obj_t *args) {
+#if MICROPY_CPYTHON_COMPAT
+    if (n_kw != 0) {
+        mp_arg_error_unimpl_kw();
+    }
+#endif
+
     switch (n_args) {
         case 0:
             return MP_OBJ_NEW_QSTR(MP_QSTR_);
@@ -146,6 +152,12 @@ STATIC mp_obj_t bytes_make_new(mp_obj_t type_in, uint n_args, uint n_kw, const m
         return mp_const_empty_bytes;
     }
 
+#if MICROPY_CPYTHON_COMPAT
+    if (n_kw != 0) {
+        mp_arg_error_unimpl_kw();
+    }
+#endif
+
     if (MP_OBJ_IS_STR(args[0])) {
         if (n_args < 2 || n_args > 3) {
             goto wrong_args;
-- 
GitLab