Not all pins on the various Arduinos support pin change interrupts, which is a requirement of pins used for SoftwareSerial. You need to see which ones support pin change interrupts on the Leonardo.
as you can see I am using pin 8 of the leo and according to the Software Serial page
-Not all pins on the Leonardo support change interrupts, so only the following can be used for RX: 8, 9, 10, 11, 14 (MISO), 15 (SCK), 16 (MOSI).
so that should be fine?
also in some more testing i have found the ublox gps test PC software accepts the Software serial data and plots the correct location, but it cant find as much data in it as the hardware serial data, ie software serial does not have the time and date whereas the it gets it from the hardware serial data
I have this exact problem! I posted a question a question about it this morning, but I haven't solved it yet. There were some posts on the Sparkfun site where I bought my GPS module (a Locosys LS20031) about increasing the receive buffer size in the SoftwareSerial.h header.
In NewSoftSerial.h: NewSS_MAX_RX_BUFF 64 to NewSS_MAX_RX_BUFF 256
Here's the link to that post, it's at the bottom in the customer comments:
This did NOT fix the problem for me, unless I did something wrong modifying the Library (I learned some things about OSX while trying to find where those library files were hidden!) But it seems like a possibility for you.
no luck though, still spits out the same data, I think the hardware buffer is 64 bytes as-well so it wouldn't account for the difference between the two methods.