Mercury Bugs - mercury | |||||
| View Issue Details | |||||
| ID | Project | Category | View Status | Date Submitted | Last Update |
| 0000530 | mercury | Feature Request | public | 2021-02-26 18:03 | 2022-01-25 01:41 |
| Reporter | zs | ||||
|---|---|---|---|---|---|
| Assigned To | zs | ||||
| Priority | normal | Severity | minor | Reproducibility | have not tried |
| Status | resolved | Resolution | fixed | ||
| Platform | OS | OS Version | |||
| Product Version | |||||
| Target Version | Fixed in Version | ||||
| Summary | 0000530: diagnose inapplicable insts in mode declarations | ||||
| Description | This is (or was) real code from library/hash_table.m: :- pred update_item_in_bucket(K, V, hash_bucket(K, V), hash_bucket(K, V)). :- mode update_item_in_bucket(in(hb_two_plus), in, in, out) is semidet :- mode update_item_in_bucket(in, in, in, out) is semidet. The in(hb_two_plus) was intended to be applied to the third argument, the initial hash bucket, not to the key, whose type is unknown, and is extremely unlikely to be a hash bucket of any size :-( The compiler should check whether the modes of arguments in mode declarations match the types (if any) of the corresponding arguments, and generate error messages for any mismatches. | ||||
| Tags | No tags attached. | ||||
| Relationships | |||||
| Attached Files | |||||
| Notes | |||||
|
|
|||||
|
|
||||
| Issue History | |||||
| Date Modified | Username | Field | Change | ||
|---|---|---|---|---|---|
| 2021-02-26 18:03 | zs | New Issue | |||
| 2022-01-25 01:41 | zs | Assigned To | => zs | ||
| 2022-01-25 01:41 | zs | Status | new => resolved | ||
| 2022-01-25 01:41 | zs | Resolution | open => fixed | ||
| 2022-01-25 01:41 | zs | Note Added: 0001160 | |||