On Wed, Feb 26, 2014 at 2:27 PM, Chris Lattner <[email protected]> wrote: > On Feb 26, 2014, at 2:26 PM, Hal Finkel <[email protected]> wrote: >> >> Remarks should often indicate things that are good (like this loop was >> vectorized), >> and so upgrading remarks to errors will only make sense for 'negative' >> remarks. > > Each remark should have its own identifier, so people can choose to upgrade > them > or not. It’s not worth the complexity to try to add another level or > behavior for > “positive remarks”.
Hear hear hear hear hear. ------------- Going off on an ambitious tangent here: It seems to me that -Werror is currently a synonym for what in EDG's world would be spelled "--diag_error=<all-diags-that-are-warnings-by-default>". I.e., we might have the generic syntax "-W<severity>=<diagnostic-class>", of which "-Werror=format" is currently an example. We'd add additional diagnostic-classes, such as "warnings" = "the class of all diags that are warnings by default", "remarks" = "the class of all diags that are remarks by default" and "everything" = "the class of all diags, period". Then -Werror=foo remains exactly the same -Werror becomes a driver synonym for -Werror=warnings -Wformat becomes a driver synonym for -Wwarning=format -Wno-format becomes a driver synonym for -Wsuppress=format -Weverything becomes a driver synonym for -Wwarning=everything and so on. --remarks would still be its own thing, since (as I mentioned before) it's about conceptually //redirecting the output// of certain diagnostics, which isn't the same thing as //changing the severity// of those diagnostics. I believe -w falls in the same category as --remarks (conceptually redirecting diagnostics of less-than-error severity to the bitbucket), rather than trying to treat it as a driver synonym for "-Wsuppress=warnings"; the difference is detectable via command lines like "clang -w -Wformat". –Arthur _______________________________________________ cfe-commits mailing list [email protected] http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
