The operator %integrate has a simplim%function. This contributes to this bug:
(%i38) xxx : integrate(1/(x + exp(-x)),x,1,z)/z;
(%o38) ('integrate(1/(x+%e^-x),x,1,z))/z
(%i39) limit(xxx,z,inf);
(%o39) 0
Defining simplim%functions for sums and products would likely create similar bugs.