[email protected] wrote on Tue, Nov 09, 2010 at 15:07:48 -0000: > /** Generic three-state property to represent an unknown value for values > * that are just like booleans. The values have been set deliberately to > - * make tristates mainly compatible with #svn_boolean_t. > + * make tristates disjoint from #svn_boolean_t. > * > * @since New in 1.7. */ > typedef enum > { > - svn_tristate_false = FALSE, > - svn_tristate_true = TRUE, > + svn_tristate_false = 2, > + svn_tristate_true, > svn_tristate_unknown > } svn_tristate_t;
I see us someday pcalloc()'ing one of these and forgetting to reset it to the 'svn_tristate_unknown' value. Could we make compilers catch that for us? Or should we just assert that the value really is one of those three values? Or even interpret any value (except svn_tristate_true and svn_tristate_false) as "unknown"?

