[gnumeric] Deps: fix intersection dependency tracking.
- From: Morten Welinder <mortenw src gnome org>
- To: commits-list gnome org
- Cc:
- Subject: [gnumeric] Deps: fix intersection dependency tracking.
- Date: Sun, 12 Jul 2020 21:33:09 +0000 (UTC)
commit 2602cbadd5f69addf96e1234c56856c7e6321086
Author: Morten Welinder <terra gnome org>
Date: Sun Jul 12 17:32:29 2020 -0400
Deps: fix intersection dependency tracking.
src/dependent.c | 10 ++++++++--
1 file changed, 8 insertions(+), 2 deletions(-)
---
diff --git a/src/dependent.c b/src/dependent.c
index 5f021b08c..0bcc177c0 100644
--- a/src/dependent.c
+++ b/src/dependent.c
@@ -1179,8 +1179,10 @@ link_unlink_constant (GnmEvalPos *ep, GnmValue const *v, DepLinkFlags flags)
if (!dependent_is_cell (ep->dep))
goto everything; // Must figure out semantics first
- if ((flags & DEP_LINK_NON_SCALAR) &&
- eval_pos_is_array_context (ep))
+ if (flags & DEP_LINK_NON_SCALAR)
+ goto everything;
+
+ if (eval_pos_is_array_context (ep))
goto everything; // Potential implicit iteration -- bail
// Inspiration from value_intersection:
@@ -1246,6 +1248,10 @@ link_unlink_funcall (GnmEvalPos *ep, GnmExprFunction const *call, DepLinkFlags f
? DEP_LINK_NON_SCALAR
: 0;
+ if (0)
+ g_printerr ("%s, arg %d: %c\n",
+ gnm_func_get_name (call->func, FALSE),
+ i, t);
flag |= link_unlink_expr_dep (ep, call->argv[i], pass | extra);
}
return flag;
[
Date Prev][
Date Next] [
Thread Prev][
Thread Next]
[
Thread Index]
[
Date Index]
[
Author Index]