Function taylor - bug or feature?



When I apply the function 'taylor(function,z,..., ...)' to a function 
containing the d/dz operator, it works correctly.  However if the 
differential is of another variable it fails.  Thus:
=================================
(%i1) G : diff(a(x,z),z,1);
                                 d
(%o1)                           -- (a(x, z))
                                 dz
(%i2) H : taylor(G,z,0,1);
                                                !
                         !          2           !
             d           !         d            !
(%o2)/T/    -- (a(x, z))!      + (--- (a(x, z))!     ) z + . . .
             dz          !           2          !
                         !z = 0    dz           !
                                                !z = 0
=================================

works, but:

=================================
(%i3) G : diff(a(x,z),x,1);
                                 d
(%o3)                           -- (a(x, z))
                                 dx
(%i4) H : taylor(G,z,0,1);
                             d
(%o4)/T/                    -- (a(x, z)) + . . .
                             dx
=================================

fails.

I presume this is a bug.

Regards,

David Webb.