aaron.ballman requested changes to this revision.
aaron.ballman added inline comments.
This revision now requires changes to proceed.


================
Comment at: clang/include/clang/Basic/DiagnosticCommonKinds.td:127-129
+def warn_eval_method_setting_is_meaningless_in_value_unsafe_context : Warning<
+  "setting the eval method via '-ffp-eval-method' or '#pragma clang fp 
eval_method' "
+  "has not effect when numeric results of floating-point calculations aren't 
value-safe.">, InGroup<Pragmas>;
----------------
I think we should split the diagnostics into two -- one as a Sema diagnostic 
(as a warning for the pragma case, in the Pragmas diagnostic group) and one as 
a Frontend diagnostic (as an error, for the command line case).

Basically, I think we should treat the command line options as being mutually 
exclusive and handle it the same as any other "these options cannot be used 
together" situation.


================
Comment at: clang/lib/Sema/Sema.cpp:259-260
                               getLangOpts().getFPEvalMethod());
+    if (getLangOpts().ApproxFunc || getLangOpts().AllowFPReassoc ||
+        getLangOpts().AllowRecip)
+      // When these options are used, the compiler is allowed to make
----------------
I don't think this is the right place to diagnose this -- these are command 
line options that don't play well together, so they should be handled when 
processing command line options.


CHANGES SINCE LAST ACTION
  https://reviews.llvm.org/D122155/new/

https://reviews.llvm.org/D122155

_______________________________________________
cfe-commits mailing list
cfe-commits@lists.llvm.org
https://lists.llvm.org/cgi-bin/mailman/listinfo/cfe-commits

Reply via email to