On Fri, Jul 22, 2016 at 01:46:44PM +0200, Martin Liška wrote:
> As described in the PR, current numbering scheme in gcov-io.h would overflow 
> in couple of years.
> Thus, I'm suggesting to switch from:
> 
> [major][minor/10][minor%10][release_status]
> 
> to:
> [major/10][major%10][minor][release_status]
> 
> Patch can bootstrap on ppc64le-redhat-linux and survives regression tests.

Won't this clash with the already released versions?
Unless you start e.g. using different release_status letters from the past
(but that is complicated with vendor supplied DEV-PHASE), won't
say gcc 3.4.0 and gcc 30.4.1 have the same string?

Wouldn't it be better to just use letters for the major/10?  As GCC major
didn't reach 10 yet, we only had [0-9][0-9][0-9]. in the past, so I think:

-  v[0] = (major < 10 ? '0' : 'A' - 10) + major;
-  v[1] = (minor / 10) + '0';
-  v[2] = (minor % 10) + '0';
+  v[0] = (major / 10) + 'A';
+  v[1] = (major % 10) + '0';
+  v[2] = minor + '0';

would be better, then there will be no clash, and the versioning scheme will
allow until 259.9.

        Jakub

Reply via email to