-
-
Notifications
You must be signed in to change notification settings - Fork 679
Closed
Description
In some tickets (eg #15024, #16813) this doctest from symbolic/expression_conversions.py
sage: foo = random_expr(20, nvars=2)
sage: foo
sage: s = ExpressionTreeWalker(foo)
sage: bool(s() == foo)
fails because the set of functions returned by random_expr contains one of floor/ceil which currently don't accept the hold keyword:
sage: floor(x,hold=True)
---------------------------------------------------------------------------
TypeError Traceback (most recent call last)
<ipython-input-8-fc5809e0a430> in <module>()
----> 1 floor(x,hold=True)
TypeError: __call__() got an unexpected keyword argument 'hold'
This would affect any use of the walker or its subclasses on floor expressions.
The reason is that both functions handle their calls themselves (instead of relying on superclass functionality) because at the time it was deemed necessary to provide a keyword named maximum_bits.
Component: symbolics
Author: Ralf Stephan
Branch/Commit: u/rws/expressiontreewalker_fails_on_some_functions @ d2afc44
Issue created by migration from https://trac.sagemath.org/ticket/19464