Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Imprecise cast overflows in sv-benchmarks #1586

Open
13 tasks
sim642 opened this issue Sep 30, 2024 · 0 comments
Open
13 tasks

Imprecise cast overflows in sv-benchmarks #1586

sim642 opened this issue Sep 30, 2024 · 0 comments
Labels
precision sv-comp SV-COMP (analyses, results), witnesses

Comments

@sim642
Copy link
Member

sim642 commented Sep 30, 2024

Regarding the question whether casts are overflows in SV-COMP, I ran Goblint both ways and inspected the verdict differences. There are a bunch of tasks where it seems that we are just rather imprecise if casts were to be counted as overflows:

  • Juliet_Test/CWE190_Integer_Overflow__int_connect_socket_*_good (152 tasks): implicit cast ssize_t (long int) -> int on LP64, Goblint imprecise: recv doesn't return bigger than len argument
  • Juliet_Test/CWE190_Integer_Overflow__int_listen_socket_*_good (152 tasks): implicit cast ssize_t (long int) -> int on LP64, Goblint imprecise: recv doesn't return bigger than len argument
  • Juliet_Test/CWE190_Integer_Underflow__int_{connect,listen}_*_good (304 tasks): likely analogous to the Overflow cases, didn't check
  • bitvector/gcd_* (3 tasks): implicit cast signed char -> int and int -> signed char on ILP32
  • bitvector/s3_srvr_2a*.BV.c.cil (2 tasks): explicit cast int -> unsigned int and unsigned int -> int on ILP32
  • loop-invariants/even
  • array-crafted/bAnd* (5 tasks)
  • array-crafted/bor* (5 tasks)
  • array-crafted/xor* (5 tasks)
  • array-memsafety/cstrcspn-alloca-1
  • array-memsafety/cstrlen-alloca-2
  • array-memsafety/cstrspn-alloca-1
  • aws-c-common/aws_array_list_swap_harness

If the SV-COMP community decides that casts are overflows, we might want to fix these imprecisions.

@sim642 sim642 added sv-comp SV-COMP (analyses, results), witnesses precision labels Sep 30, 2024
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
precision sv-comp SV-COMP (analyses, results), witnesses
Projects
None yet
Development

No branches or pull requests

1 participant