Commit 189b6aa
Emery Conrad
Keep symbolic floating defaults in GetFunctionArgDefault
The printed default of a floating-typed parameter need not be a numeric
literal (double ratio = kDefaultRatio, arrow's pool = default_memory_pool()
style); std::stod then throws std::invalid_argument into exception-free
LLVM code and the process terminates. Parse with strtod non-throwingly
(full consumption + ERANGE checked) and keep the printed spelling when the
default is not a plain literal; literals keep the precision normalization
the code exists for.
Co-developed-with-the-help-of: Claude Code (Fable 5, human in the loop)1 parent 3103be9 commit 189b6aa
2 files changed
Lines changed: 41 additions & 4 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
103 | 103 | | |
104 | 104 | | |
105 | 105 | | |
| 106 | + | |
106 | 107 | | |
107 | 108 | | |
108 | 109 | | |
| |||
5502 | 5503 | | |
5503 | 5504 | | |
5504 | 5505 | | |
5505 | | - | |
5506 | | - | |
5507 | | - | |
5508 | | - | |
| 5506 | + | |
| 5507 | + | |
| 5508 | + | |
| 5509 | + | |
| 5510 | + | |
| 5511 | + | |
| 5512 | + | |
| 5513 | + | |
| 5514 | + | |
| 5515 | + | |
| 5516 | + | |
| 5517 | + | |
| 5518 | + | |
| 5519 | + | |
| 5520 | + | |
5509 | 5521 | | |
5510 | 5522 | | |
5511 | 5523 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
2903 | 2903 | | |
2904 | 2904 | | |
2905 | 2905 | | |
| 2906 | + | |
| 2907 | + | |
| 2908 | + | |
| 2909 | + | |
| 2910 | + | |
| 2911 | + | |
| 2912 | + | |
| 2913 | + | |
| 2914 | + | |
| 2915 | + | |
| 2916 | + | |
| 2917 | + | |
| 2918 | + | |
| 2919 | + | |
| 2920 | + | |
| 2921 | + | |
| 2922 | + | |
| 2923 | + | |
| 2924 | + | |
| 2925 | + | |
| 2926 | + | |
| 2927 | + | |
| 2928 | + | |
| 2929 | + | |
| 2930 | + | |
2906 | 2931 | | |
2907 | 2932 | | |
2908 | 2933 | | |
| |||
0 commit comments