On Fri, 2012-01-20 at 16:46 +0300, Dan Carpenter wrote: > On Fri, Jan 20, 2012 at 05:15:15AM -0800, Joe Perches wrote: > > @@ -2838,7 +2849,8 @@ > > if ($dstat ne '' && > > $dstat !~ /^(?:$Ident|-?$Constant),$/ && # 10, // foo(), > > $dstat !~ /^(?:$Ident|-?$Constant);$/ && # foo(); > > - $dstat !~ /^(?:$Ident|-?$Constant)$/ && # 10 // foo() > > + $dstat !~ /^[!~-]?(?:$Ident|$Constant)$/ && # 10 // foo() // !foo // ~foo // -foo > > + $dstat !~ /^'X'$/ && # character constants > > $dstat !~ /$exceptions/ && > > $dstat !~ /^\.$Ident\s*=/ && # .foo = > > $dstat !~ /^do\s*$Constant\s*while\s*$Constant;?$/ && # do {...} while (...); // do {...} while (...) > > I think the character change test is fine but > > the !~- addition/change is suspect. > > !~- are precedence level 3 operators > Level 2? Table I looked at said 3, http://publib.boulder.ibm.com/infocenter/macxhelp/v6v81/index.jsp?topic=/com.ibm.vacpp6m.doc/language/ref/clrc05preeval.htm but 1 is c++ only, so you're right c level 2. > Anyway if people are really writing macros which are used this way, > then that's something which is outside of the scope of checkpatch.pl > to fix. I think there are some convenience macros like: #define helper(a, b) some->long[a]->dereference.b but likely anyone that really wants to add a !~- prefix to those should be mindful anyway. _______________________________________________ devel mailing list devel@xxxxxxxxxxxxxxxxxxxxxx http://driverdev.linuxdriverproject.org/mailman/listinfo/devel