Here's a great article from May 9th, on OverTheCap.com, where Nick Korte, the guy who does the compensatory pick projections for OTC, and he goes over why both the Bills & 49ers didn't get a 3rd rd comp pick, instead they got 4th rd comp picks, and well it has to do with restructures.
Basically when the 49ers redid Arik Armstead's deal in 2022 & 2023, instead of his actual APY being $17M a yr, as it was a 5yr/$85M deal, the part of the NFL that does these calculations, for some reason count the void years' "salaries", despite them not being real, anyway, they count the void years, and then they come up with a $28M APY for Armstead, even though he never made anywhere near that a year, he may have had a cap hit that high, but only due to prorated bonuses, but because of this the 49ers lost the 3rd-round comp pick for losing McGlinchey, instead the NFL turned it into a 4th-round comp pick.
It's so stupid, even Nick Korte agrees with this, as he says it in the article, as the Bills GM was asked by a local station in Buffalo, NY about the reasoning for a 4th and not a 3rd, he mentioned us, and the void years, making a contract look higher APY wise than it actually is/was, Beane didn't mention the player, just with San Francisco in the interview he did, saying it had to do with void year, restructures, counting what is fake money as part of the players APY.
Anyway, I, along with Nick agree that this shouldn't have happened, but it is what it is, stupid IMO, just goes to show you that sometimes restructures can indeed come back to bite you in the ass, I'm assuming the 49ers didn't know about this whole restructures, void years being used in calculating comp picks, as it's literally a top secret that only the NFL itself knows about, not even the teams know this, well now they do thanks to the Bills GM putting it out there in the public, so now the 49ers & every NFL team knows this.
https://overthecap.com/the-mystery-on-the-3rd-4th-round-compensatory-pick-cutoff-has-been-solved