https://gcc.gnu.org/bugzilla/show_bug.cgi?id=64874
Bug ID: 64874 Summary: gcov's magic number possibly increasing too quickly with new gcc version numbering scheme. Product: gcc Version: 5.0 Status: UNCONFIRMED Severity: normal Priority: P3 Component: gcov-profile Assignee: unassigned at gcc dot gnu.org Reporter: rearnsha at gcc dot gnu.org A comment in gcov-io.h reads: " Although the ident and version are formally 32 bit numbers, they are derived from 4 character ASCII strings. The version number consists of the single character major version number, a two character minor version number (leading zero for versions less than 10), and a single character indicating the status of the release. That will be 'e' experimental, 'p' prerelease and 'r' for release. Because, by good fortune, these are in alphabetical order, string collating can be used to compare version strings. Be aware that the 'e' designation will (naturally) be unstable and might be incompatible with itself. For gcc 3.4 experimental, it would be '304e' (0x33303465). When the major version reaches 10, the letters A-Z will be used. Assuming minor increments releases every 6 months, we have to make a major increment every 50 years. Assuming major increments releases every 5 years, we're ok for the next 155 years -- good enough for me." With the move to increasing the major version number with every year, we are going to exhaust this magic number scheme much more rapidly than cited above. Perhaps we should change how the magic number is generated.