It seems like a form of layering violation to me. Conflation of meaning for a #define is definitely undue obfuscation, if not out right bad coding.
Ivan... On 1/29/06, Hans Reiser <[EMAIL PROTECTED]> wrote: > suppose there are two distinct layers of abstraction, one on top of the > other. Suppose someone uses the error condition names of the top layer > in coding the bottom layer when the return values it is used for in the > bottom layer have not the same purpose as those of the top layer, and > when it would be an error for the return value to actually get > propagated all the way out of the top layer. What is this bad > programming practice called, there is a name for it isn't there? When > you use a return value #define for two different meanings, is there a > name for that? It is generally accepted to be bad style, yes? > > Hans >