diff options
| author | Maxime Dénès | 2016-06-28 10:57:52 +0200 |
|---|---|---|
| committer | Maxime Dénès | 2016-06-28 10:57:52 +0200 |
| commit | 16a6be0332bf3bea4a87ee5eec874cbf444174c3 (patch) | |
| tree | 39c64e0325f525e7f785d1322db339cbfe70d4ed /plugins/syntax | |
| parent | 35b28e591cc3cf00afcc56aec2f206b58bfd416e (diff) | |
| parent | 4b3a261bee1882c338e6e72e992349dfa02f9678 (diff) | |
Merge branch 'warnings' into trunk
Was PR#213: New warnings machinery
Diffstat (limited to 'plugins/syntax')
| -rw-r--r-- | plugins/syntax/nat_syntax.ml | 14 |
1 files changed, 8 insertions, 6 deletions
diff --git a/plugins/syntax/nat_syntax.ml b/plugins/syntax/nat_syntax.ml index 3142c8cf00..89305838b1 100644 --- a/plugins/syntax/nat_syntax.ml +++ b/plugins/syntax/nat_syntax.ml @@ -26,14 +26,16 @@ open Errors let threshold = of_int 5000 +let warn_large_nat = + CWarnings.create ~name:"large-nat" ~category:"numbers" + (fun () -> strbrk "Stack overflow or segmentation fault happens when " ++ + strbrk "working with large numbers in nat (observed threshold " ++ + strbrk "may vary from 5000 to 70000 depending on your system " ++ + strbrk "limits and on the command executed).") + let nat_of_int dloc n = if is_pos_or_zero n then begin - if less_than threshold n then - Feedback.msg_warning - (strbrk "Stack overflow or segmentation fault happens when " ++ - strbrk "working with large numbers in nat (observed threshold " ++ - strbrk "may vary from 5000 to 70000 depending on your system " ++ - strbrk "limits and on the command executed)."); + if less_than threshold n then warn_large_nat (); let ref_O = GRef (dloc, glob_O, None) in let ref_S = GRef (dloc, glob_S, None) in let rec mk_nat acc n = |
