Bug 19131 – Contracts should work function prototypes

Status
NEW
Severity
enhancement
Priority
P4
Component
dmd
Product
D
Version
D2
Platform
All
OS
All
Creation time
2018-08-01T15:23:56Z
Last change time
2024-12-13T19:00:03Z
Assigned to
No Owner
Creator
Felix Hufnagel
Moved to GitHub: dmd#17873 →

Comments

Comment #0 by puremagic — 2018-08-01T15:23:56Z
Contracts should work on function prototypes. Consider a C function like this one from liquid-dsp /* Create object using Kaiser-Bessel windowed sinc method */ \ /* _n : filter length, _n > 0 */ \ /* _fc : filter normalized cut-off frequency, 0 < _fc < 0.5 */ \ /* _As : filter stop-band attenuation [dB], _As > 0 */ \ /* _mu : fractional sample offset, -0.5 < _mu < 0.5 */ \ void _create_kaiser(unsigned int _n, \ float _fc, \ float _As, \ float _mu); \ it would be great if we could add contracts directly to our D decleration: _create_kaiser(uint n, float fc, float As, float mu) in(n > 0) in(0 < fc && fc < 0.5) in(As > 0) in(-0.5 < mu && mu < 0.5);
Comment #1 by robert.schadek — 2024-12-13T19:00:03Z
THIS ISSUE HAS BEEN MOVED TO GITHUB https://github.com/dlang/dmd/issues/17873 DO NOT COMMENT HERE ANYMORE, NOBODY WILL SEE IT, THIS ISSUE HAS BEEN MOVED TO GITHUB