sympy/sympy — pull request #1800 by asmeurer (2013-02-18 01:36:18+00:00)
Title: Fix issue 3649

The problem was that Integral._eval_subs was returning an instance of
Integral, so that NonElementaryIntegral.subs() was returning an instance of
Integral, and hence failing an isinstance check. I changed all methods of
Integral to use self.func(*args) instead of Integral(*args). But we need to
audit all of SymPy and make sure we are doing this everywhere. See issue
3652.