Skip to content

patch to improve matrix conformability error message

4 messages · Joshua N Pritikin, irederik m@iii@g oii oib@@et

#
With this patch,
Error in A %*% B : 
  non-conformable arguments of dimension (2, 2) and (3, 2)
From: Joshua Nathaniel Pritikin <jpritikin at pobox.com>
Date: Fri, 5 Apr 2019 12:03:58 -0400
Subject: [PATCH] Improve non-conformable arguments error message

---
 src/main/array.c | 9 ++++++---
 1 file changed, 6 insertions(+), 3 deletions(-)

diff --git a/src/main/array.c b/src/main/array.c
index 4b95e33..cedf627 100644
--- a/src/main/array.c
+++ b/src/main/array.c
@@ -1350,15 +1350,18 @@ SEXP attribute_hidden do_matprod(SEXP call, SEXP op, SEXP args, SEXP rho)
     if (PRIMVAL(op) == 0) {
 	/* primitive, so use call */
 	if (ncx != nry)
-	    errorcall(call, _("non-conformable arguments"));
+	  errorcall(call, _("non-conformable arguments of dimension (%d, %d) and (%d, %d)"),
+		    nrx, ncx, nry, ncy);
     }
     else if (PRIMVAL(op) == 1) {
 	if (nrx != nry)
-	    error(_("non-conformable arguments"));
+	  error(_("non-conformable arguments of dimension (%d, %d) and (%d, %d)"),
+		nrx, ncx, nry, ncy);
     }
     else {
 	if (ncx != ncy)
-	    error(_("non-conformable arguments"));
+	  error(_("non-conformable arguments of dimension (%d, %d) and (%d, %d)"),
+		nrx, ncx, nry, ncy);
     }
 
     if (isComplex(CAR(args)) || isComplex(CADR(args)))
24 days later
#
I think this is a good idea. Is there a reason why it got no interest?
Slippery slope?

Or maybe others were also just occupied trying to figure out how
Joshua's second message had timestamp earlier than his first message?
On Fri, Apr 05, 2019 at 12:05:36PM -0400, Joshua N Pritikin wrote:
#
On Mon, Apr 29, 2019 at 06:28:46PM -0700, frederik at ofb.net wrote:
What's the next step? Can it get committed?
As a new subscriber, I guess my messages got caught in moderation.
#
I'm not really the one who makes these decisions; I'd just wait for
someone on the Core team to reply to this thread. Maybe they are all
just busy right now.
On Mon, Apr 29, 2019 at 10:08:43PM -0400, Joshua N Pritikin wrote: