The GPL version 3 includes a similar clause. You don't have to give up your patents. You just have to license them to anyone who has rights to use the code from a copyright perspective. If I understand it correctly, this gives the GPL sharper teeth, since someone who violates the GPL not only loses the distribution/derivative rights from the copyright license, but also the patent license.