--- /tmp/date.py 2004-07-20 14:45:42.212788495 -0400 +++ date.py 2004-07-20 14:45:32.972449000 -0400 @@ -123,6 +123,9 @@ return elif hasattr(spec, 'tuple'): spec = spec.tuple() + elif isinstance(spec, Date): + self.set(spec.formal(), offset=offset, add_granularity=add_granularity) + return try: y,m,d,H,M,S,x,x,x = spec frac = S - int(S)