From 375b8b0c68bc0ff5c23c6a9acdcb3126cdac1c9a Mon Sep 17 00:00:00 2001 From: Michael Hansen Date: Thu, 10 Oct 2019 11:47:48 -0700 Subject: [PATCH] Fix non-inplace matrix multiplication operator. --- ASTNode.cpp | 4 ++-- ASTNode.h | 9 +++++---- tests/{xfail => compiled}/matrix_mult_oper.3.5.pyc | Bin 3 files changed, 7 insertions(+), 6 deletions(-) rename tests/{xfail => compiled}/matrix_mult_oper.3.5.pyc (100%) diff --git a/ASTNode.cpp b/ASTNode.cpp index 0725ba2..d375b65 100644 --- a/ASTNode.cpp +++ b/ASTNode.cpp @@ -29,9 +29,9 @@ const char* ASTBinary::op_str() const { static const char* s_op_strings[] = { ".", " ** ", " * ", " / ", " // ", " % ", " + ", " - ", - " << ", " >> ", " & ", " ^ ", " | ", " and ", " or ", + " << ", " >> ", " & ", " ^ ", " | ", " and ", " or ", " @ ", " += ", " -= ", " *= ", " /= ", " %= ", " **= ", " <<= ", - " >>= ", " &= ", " ^= ", " |= ", " //= ", " @ ", " @= ", + " >>= ", " &= ", " ^= ", " |= ", " //= ", " @= ", }; return s_op_strings[op()]; } diff --git a/ASTNode.h b/ASTNode.h index e832858..728c7f4 100644 --- a/ASTNode.h +++ b/ASTNode.h @@ -112,10 +112,11 @@ public: enum BinOp { BIN_ATTR, BIN_POWER, BIN_MULTIPLY, BIN_DIVIDE, BIN_FLOOR, BIN_MODULO, BIN_ADD, BIN_SUBTRACT, BIN_LSHIFT, BIN_RSHIFT, BIN_AND, BIN_XOR, - BIN_OR, BIN_LOG_AND, BIN_LOG_OR, BIN_IP_ADD, BIN_IP_SUBTRACT, - BIN_IP_MULTIPLY, BIN_IP_DIVIDE, BIN_IP_MODULO, BIN_IP_POWER, - BIN_IP_LSHIFT, BIN_IP_RSHIFT, BIN_IP_AND, BIN_IP_XOR, BIN_IP_OR, - BIN_IP_FLOOR, BIN_MAT_MULTIPLY, BIN_IP_MAT_MULTIPLY, + BIN_OR, BIN_LOG_AND, BIN_LOG_OR, BIN_MAT_MULTIPLY, + /* Inplace operations */ + BIN_IP_ADD, BIN_IP_SUBTRACT, BIN_IP_MULTIPLY, BIN_IP_DIVIDE, + BIN_IP_MODULO, BIN_IP_POWER, BIN_IP_LSHIFT, BIN_IP_RSHIFT, BIN_IP_AND, + BIN_IP_XOR, BIN_IP_OR, BIN_IP_FLOOR, BIN_IP_MAT_MULTIPLY, }; ASTBinary(PycRef left, PycRef right, int op, diff --git a/tests/xfail/matrix_mult_oper.3.5.pyc b/tests/compiled/matrix_mult_oper.3.5.pyc similarity index 100% rename from tests/xfail/matrix_mult_oper.3.5.pyc rename to tests/compiled/matrix_mult_oper.3.5.pyc