I’d say it’s more like why to change/update something if it works.
Gathered some characteristics from the GCC update
- During the process we did a good number updates and fixes
- Counted that we fixed/updated 33 packages due to GCC 10 – I likely missed some.
- Build breaks (compiler default config changes, C/C++ changes, etc)
- Package updates
- And even runtime errors
Whilst doing this kind of update, we needs to pay attention to a thing that we call ‘update jenga’ where a package update triggers a chain of updates firing new chains of updates.
Whilst it’s arm GCC 10 this change log gives an idea what kind of changes there are.