From mboxrd@z Thu Jan 1 00:00:00 1970 X-Spam-Checker-Version: SpamAssassin 3.4.4 (2020-01-24) on polar.synack.me X-Spam-Level: X-Spam-Status: No, score=-1.3 required=5.0 tests=BAYES_00,INVALID_MSGID autolearn=no autolearn_force=no version=3.4.4 X-Google-Language: ENGLISH,ASCII-7-bit X-Google-Thread: 103376,d1df6bc3799debed X-Google-Attributes: gid103376,public From: kenner@lab.ultra.nyu.edu (Richard Kenner) Subject: Re: Not intended for use in medical, Date: 1997/05/04 Message-ID: <5kj7sg$hn9$1@news.nyu.edu>#1/1 X-Deja-AN: 239372140 References: <5kgu95$kb7@bcrkh13.bnr.ca> Organization: New York University Ultracomputer Research Lab Newsgroups: comp.lang.ada Date: 1997-05-04T00:00:00+00:00 List-Id: In article dewar@merv.cs.nyu.edu (Robert Dewar) writes: > How can it ever be friendly to hide a ++ in a macro, such that the > peculiar rules about not using more than one ++ in an expression > suddenly apply in a hidden manner to the macro, Ugh! The classic is when you have the common macro: #define MIN(X,Y) ((X) < (Y) ? (X) : (Y)) And then forget what the macro expands to and use MIN (a[n++]) someplace. Of course, not only is that particular case undefined, but it might increment N twice.