Well that's actually correct and incorrect at the same time. See when WD40 is used as a rust preventative it needs to be a pretty heavy coat. Yes it is hygroscopic but thats the point, it absorbs the water and keeps it off the surface of the steel. What happens is when someone just lightly rubs down a firearm with WD40 with just a light coat of it. Then there is not enough oil to keep the water in suspension and it will rust.
There are much better products out there then WD40 to prevent rust on firearms. I use it but my guns never sit longer then a month or two with out being wiped down again.
That is just one more reason that you need a specific product for a specific job.