Skip to content
Snippets Groups Projects
  1. Jul 26, 2011
  2. Jul 25, 2011
  3. Jul 21, 2011
    • Phil Carmody's avatar
      treewide: fix potentially dangerous trailing ';' in #defined values/expressions · 497888cf
      Phil Carmody authored
      
      All these are instances of
        #define NAME value;
      or
        #define NAME(params_opt) value;
      
      These of course fail to build when used in contexts like
        if(foo $OP NAME)
        while(bar $OP NAME)
      and may silently generate the wrong code in contexts such as
        foo = NAME + 1;    /* foo = value; + 1; */
        bar = NAME - 1;    /* bar = value; - 1; */
        baz = NAME & quux; /* baz = value; & quux; */
      
      Reported on comp.lang.c,
      Message-ID: <ab0d55fe-25e5-482b-811e-c475aa6065c3@c29g2000yqd.googlegroups.com>
      Initial analysis of the dangers provided by Keith Thompson in that thread.
      
      There are many more instances of more complicated macros having unnecessary
      trailing semicolons, but this pile seems to be all of the cases of simple
      values suffering from the problem. (Thus things that are likely to be found
      in one of the contexts above, more complicated ones aren't.)
      
      Signed-off-by: default avatarPhil Carmody <ext-phil.2.carmody@nokia.com>
      Signed-off-by: default avatarJiri Kosina <jkosina@suse.cz>
      497888cf
  4. Jul 17, 2011
  5. Jul 15, 2011
  6. Jul 12, 2011
  7. Jul 10, 2011
  8. Jul 08, 2011
  9. Jul 03, 2011
  10. Jul 01, 2011
  11. Jun 18, 2011
  12. Jun 04, 2011
  13. Jun 01, 2011
  14. May 27, 2011
Loading