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:
With this patch,

A <- matrix(1, 2, 2)
B <- matrix(2, 3, 2)
A %*% B
Error in A %*% B :
 non-conformable arguments of dimension (2, 2) and (3, 2)

From 205b591d4d14b5ff667325fb233a6deb08314726 Mon Sep 17 00:00:00 2001
From: Joshua Nathaniel Pritikin <jpriti...@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)))
--
2.19.1

______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel


______________________________________________
R-devel@r-project.org mailing list
https://stat.ethz.ch/mailman/listinfo/r-devel

Reply via email to