Path: utzoo!utgpu!jarvis.csri.toronto.edu!mailrus!csd4.milw.wisc.edu!dogie.macc.wisc.edu!uwvax!umn-d-ub!umn-cs!ns!ddb From: ddb@ns.network.com (David Dyer-Bennet) Newsgroups: comp.lang.c Subject: Re: comma operator: keep away? Message-ID: <1317@ns.network.com> Date: 24 Apr 89 21:22:12 GMT References: <19913@iuvax.cs.indiana.edu> <10092@smoke.BRL.MIL> <19926@iuvax.cs.indiana.edu> <10098@smoke.BRL.MIL> Reply-To: ddb@ns.UUCP (David Dyer-Bennet) Organization: Terrabit Software Lines: 18 In article <10098@smoke.BRL.MIL> gwyn@brl.arpa (Doug Gwyn) writes: :Ok, I picked a bad example. However, many macros need to accomplish :more than one thing and cannot do so without the aid of some such :trickery as : ((expr1) & 0 | (expr2)) :which is more simply expressed as : (expr1, expr2) Which is an example of the weakness of the macro facility in C (one of the most light-weight macro facilities I've ever had foisted on me). Without taking a position on the general value of the comma operator -- the correct solution to this one is to improve the macro facility, not provide a way to kludge some (but not all) cases. -- David Dyer-Bennet, ddb@terrabit.fidonet.org, or ddb@ns.network.com or ddb@Lynx.MN.Org, ...{amdahl,hpda}!bungia!viper!ddb or ...!{rutgers!dayton | amdahl!ems | uunet!rosevax}!umn-cs!ns!ddb or Fidonet 1:282/341.0, (612) 721-8967 9600hst/2400/1200/300