As I see in Transfer-length issues section 1, if transfer-length and entity-length differs the sender is not allowed to use the Content-Length header at all.
So if message has Content-Encoding header with value different than identity it cannot use Content-Length.
Does it mean chunked encoding should be ultimately specified for, say, gzipped content?