[K-Bug] Broken "Non-exhausive match" warning
Chưa có ai nhận issue này.
Đánh giá
- Độ khó
- 3/5
- Thời gian dự kiến
- 1-2 ngày
- Mức phù hợp với người mới
- 48/100
- Loại issue
- Lỗi
- Độ rõ ràng
- Đặc tả rõ ràng
- Mức độ hoạt động
- Đình trệ
- Lĩnh vực
- compilers
Hướng nghiên cứu
The reproducer is in a.k; begin by running kompile a.k with K v7.1.104 and confirm the non-exhaustive match warning. Compare it with the version where the parentheses around item are removed, and consider the issue complete when the original definition compiles without that warning.
Do mô hình lập chỉ mục viết ra từ nội dung của issue.
Mô tả
What component is the issue in?
Front-End
Which command
- kompile
- kast
- krun
- kprove
- kprovex
- ksearch
What K Version?
K version: v7.1.104-0-g34892bf1cc Build date: Mi aug 14 01:57:38 EEST 2024
Operating System
Linux
K Definitions (If Possible)
a.k:
module A
syntax Item ::= "item"
syntax ItemList ::= List{Item, ","}
syntax ItemList ::= reverse(ItemList) [function, total]
| #reverse(ItemList, ItemList) [function, total]
rule reverse(L:ItemList) => #reverse(L, .ItemList)
rule #reverse(.ItemList, R) => R
rule #reverse((P:Item , L:ItemList), R)
=> #reverse(L, (P , R))
syntax A ::= "a"
| b(ItemList)
rule a => b((item))
endmodule
Steps to Reproduce
$ kompile a.k
[Warning] Compiler: Non exhaustive match detected:
`#reverse(_,_)_A_ItemList_ItemList_ItemList`(_,_)
Source(/mnt/data/pi-squared/rust-demo-semantics/tmp/a.k)
Location(6,25,6,72)
6 | | #reverse(ItemList, ItemList) [function, total]
. ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Note that if the parentheses around item in rule a => b((item)) are removed, the warning dissapears.
Expected Results
No "Non-exhausive match" warning.
- Ngôn ngữ chính
- Python
- Star
- 594
- Fork
- 164
- Chỉ số merge pull request
- Không có pull request nào được merge trong 30 ngày
Chuẩn bị môi trường
- Không có Dockerfile hay tệp Docker Compose
- Không có mẫu pull request
- Đọc hướng dẫn đóng góp
Bắt đầu từ đâu
- Đọc hết issue, rồi đọc hướng dẫn đóng góp của dự án.
- Bình luận trên issue rằng bạn sẽ nhận — tránh hai người làm cùng một việc.
- Fork repository và làm thay đổi trên một nhánh.
- Mở pull request có tham chiếu số hiệu của issue.
Issue khác của runtimeverification/k
-
Introduce composable symbolic execution interface in pyxCó thể làm lại được @Stevengre đã nhận 99 ngày trước và không có pull request nào đang mở. Đang mở
runtimeverification/k#4939 · 1 người được giao ·
-
Concolic ExplorerĐang mở
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 32/100
runtimeverification/k#4937 ·
-
Độ khó 5/5 Hơn một tuần Mức phù hợp với người mới 30/100
runtimeverification/k#4936 ·
-
Accelerating all-path reachability proofs with one-path reachability proofsCó thể làm lại được @Stevengre đã nhận 105 ngày trước và không có pull request nào đang mở. Đang mởtype:epic
runtimeverification/k#4934 · 4 bình luận · 1 người được giao ·
-
Support progressive depth halving as a generic policy in `Prover.advance_proof`Có thể làm lại được @Stevengre đã nhận 124 ngày trước và không có pull request nào đang mở. Đang mở
runtimeverification/k#4924 · 1 người được giao ·
Tất cả issue của runtimeverification/k
Issue tương tự
-
repo-audit
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 75/100
scverse/repo-health#20 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
/context/prime scope override double-prefixes an entity-ref project and drops its scoped memoriesĐang mở
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 85/100
phasespace-labs/palinode#232 ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 82/100
collective/icalendar#1858 · 1 bình luận ·
Maintainer thường phản hồi trong vòng 1 ngày
-
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 68/100
Maintainer thường phản hồi trong vòng 1 ngày
-
lfx-mcp cannot supply global variables: LangflowClient drops X-LANGFLOW-GLOBAL-VAR-* from envĐang mởbug
Độ khó 2/5 1-3 giờ Mức phù hợp với người mới 78/100
langflow-ai/langflow#15496 ·
Maintainer thường phản hồi trong vòng 1 ngày