The quick answer is they are not legal in Virginia fresh waters.
According the Virginia Department of Game & Inland Fisheries: "Fishing in inland waters must be by angling with a hook and line or rod and reel (see exceptions for nongame fish). "
Under the exception for nongame fish it says: "Bow and Arrow may be used to take carp and gar (fishing license required) during day and night hours (24 hrs.), except from waters stocked with trout. Crossbows, spearguns and poisoned arrows are prohibited."
As you can see, spearguns are specifically prohibited in inland waters. Besides, the average spear is about 4 feet long. The shock codr (between the gun and spear) is around 16 feet long. Put the gun at the end of your arm and you have a distance of well over 20 feet from your eye to the tip of the spear after fired. With visibility in the low teens at Pepper's Ferry you can see the obvious potential for disaster.