No.  This case goes to the beginning of eval_sum:
```
def eval_sum(f, limits):
    (i, a, b) = limits
    if f is S.Zero:
        return S.Zero
    if i not in f.free_symbols:
        return f*(b - a + 1) # <--- here
```