It doesn't make any difference. It's not used at all.
You can even remove that lines from the weapon_whatever functions that, when you pick up a gun, nothing abnormal will happen.
In weapon_touch(), I think ID would use other.items = other.items | self.weapon instead of new at first. But then, they changed the code.
There are some lines on certain functions that are just excess fat... Just compile the vanilla QC source with FTEQCC and you'll get lots of warnings like "whatever no references".