Scenario: John creates a transaction before a snapshot. Transaction stays pending and he reattaches it 5x. Snapshot is enforced.
Are the pending transactions and their reattachments simply "forgotten" and the balances stay with the sender?
Transactions that are pending at a snapshot are forgotten, and the balance stays where it is.
As the current wallet is stateless, the wallet does not know about those transactions any more either. So, while in theory (if you have still stored the transaction trytes somewhere) you can reattach the transaction after the snapshot, the current wallet does not provide a way for you to do so.