================
Comment at: lib/Sema/SemaStmt.cpp:169
@@ +168,3 @@
+  if (SourceMgr.isMacroBodyExpansion(ExprLoc) &&
+      !(isa<CallExpr>(E->IgnoreParens()) &&
+        E->getLocStart().isMacroID() &&
----------------
Matt Beaumont-Gay wrote:
> Richard Smith wrote:
> > The ad-hoc nature of this check gives me pause. I'd be more comfortable 
> > saying that __attribute__((warn_unused_result)) always gives a warning, 
> > even in a macro body.
> What about __attribute__((pure)) or methods declared const?
I think it's fine to continue to suppress the warning for those. The difference 
is that __attribute__((warn_unused_result)) means "it's always a bug if the 
result of this function is unused". That should apply even within macros, 
whereas the other cases may be fine, because the macro may be providing an 
optional (ignorable) result.


http://llvm-reviews.chandlerc.com/D380
_______________________________________________
cfe-commits mailing list
[email protected]
http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits

Reply via email to