<p dir="ltr">> I think that totally depends on how the interface is specified. This<br>
> applies only to one of the two ways an <enum> can grow.</p>
<p dir="ltr">What other way can it grow? It can only grow bigger. If the application isn't aware of new values added, it should output a warning or an error. </p>
<br><div class="gmail_quote">On Fri, 24 Apr 2015 22:05 Bill Spitzak <<a href="mailto:spitzak@gmail.com">spitzak@gmail.com</a>> wrote:<br><blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">Since all the codegen packages that want to use this enum attribute have<br>
not been written yet I don't think back-compatibility is an issue. They<br>
are not using uint because they do not exist yet!<br>
<br>
The C codegen can continue to ignore the enum, or use it in a way that<br>
does not break code that tries to pass an integer or the wrong enum.<br>
<br>
On 04/24/2015 12:07 AM, Pekka Paalanen wrote:<br>
<br>
> The purpose of docenum was purely for documentation. An API generator<br>
> must ignore all docenum annotations. This was the backward-compatible<br>
> addition.<br>
><br>
> Any attribute that modifies the generated API in incompatible ways<br>
> cannot be added after the interface has been released as stable. If<br>
> your function argument was uint, and you change it to an enum in a<br>
> strictly typed language, does it not have a good chance of breaking<br>
> someone's build?<br>
</blockquote></div>