If Mcdavid signs a 12.5M for 5 years deal and then follows it up 5 years later with another long term deal at 12.5M, sure.
You said Crosby took a discount though, he didn't really. He took very close to max on his post ELC deal.
McDavid can't do the same thing Crosby did on his second deal by going long term. Crosby's second deal looked like this at the time as a representation of the cap once you take away all the years past year 8 (20%/20%/20%/18.17%/18.17%/16.7%/15%/16%).
So if McDavid were to sign the exact same deals as Crosby, he'd get 12.975M on a 5 year term right now, and then assuming there are no further changes to the CBA, if the cap went up on average even 2M per season he'd get (17/17/17/15.44/15.44/14.2/12.75/13.6) which would be a (edit: oops) 15.3M AAV and on an 85M cap would be a similar contract to what Crosby got on a 60M cap when you take out the benefit of Crosby being able to sign a longer contract that artificially lowers the cap hit in his prime by coupling it with his out of prime years.
Crosby didn't take a discount on his first contract, it was the same as McDavid taking about 13M now. Then Crosby no more took a big discount than a guy like Hossa or Kovalchuk did. He just had an easier time than stars do now because he could have his cake and eat it too. Get paid fair value while not over burdening his team with a huge cap hit due to their not being an 8 year limit on contracts at the time.