[ros-dev] Re: [ros-svn] [gdalsnes] 18113:-reorderInsertXscendingOrder macro argument order and update uses

Ge van Geldorp gvg at reactos.com
Wed Sep 28 09:04:43 CEST 2005

> From: Gunnar Dalsnes
> > And I think these macro's are a perfect example of 
> > Phillip's point. I have no idea how the flow of
> > control is without looking at the macro definitions.
> Sure you do, if you try _reeeealy_ hard;-P

No, really, I don't <<without looking at the macro definitions>>. RETURN
sounds much like return, it is non-obvious that they're actually goto's to
CLEANUP. Ofcourse, I figured it out when you committed that stuff 3 weeks
ago, but when looking at it last night it was again non-obvious to me.
On the other hand, I had no problem whatsoever figuring out the macro-free
code that Nathan posted:

BOOL NtFunc()
  BOOL bResult;
  void *pPointer = NULL;


  if (Stuff)
    bResult = FALSE;
    goto cleanup;

  bResult = TRUE;

  if (pPointer)
  DPRINT1("NtFunc returned %i\n", bResult);
  return bResult;

> 2)Using gotos are much more ugly imo.

Oh, so goto's are acceptable if and only if you hide them out of sight?

Gé van Geldorp.

More information about the Ros-dev mailing list