Mě by spíš zajímalo, jak je vúbec možné, že při stejném zdrojovém kódu a stejném překladači se stejnými parametry překladu dostaneš nereprodukovatelný kód. To by se vúbec nemělo stávat.
Jedna z možných příčin obecně je paralelní zpracování. Stačí aby se dílčí výsledky do celku přidávaly v pořadí v jakém byly dokončeny a už bude přeházené pořadí (třeba při linkování) a tedy jiný hash.
Neni to nutne jen vec kompilace samotne. Videl jsem debiani patch pro balik, ktery unifikoval pouzite locale, ponevadz cast vstupu pro kompilaci produkoval sort v pipe na jmena souboru a sort je zavisly na pouzitem locale...