You 've made the same mistake within another statement migration (older thread), I think. Maybe also the original one (oracle) was already somehow weird.
In postgres the “::” is a convenient way of type casting and used quite often. Don’t use it without care! In best case, you get an error while running, since the operator is not available for the given types. In the worst case you get a “silent”, implicit type cast, leading to unexpected effects.
It might be useful to try the expressions with some simple statements like:
select now(), now()::date;
select now(), now()::date; <myField>::date from <myTable> where ...