trailofbits / vast

VAST is an experimental compiler pipeline designed for program analysis of C and C++. It provides a tower of IRs as MLIR dialects to choose the best fit representations for a program analysis or further program abstraction.
https://trailofbits.github.io/vast/
Apache License 2.0
368 stars 23 forks source link

[Bug]: Shadowing variable breaks declaration reference after the end of the scope #634

Open Jezurko opened 1 week ago

Jezurko commented 1 week ago

VAST version

18

LLVM version

18

Operating system

Linux

Description

The SV-Comp test-suite program sv-benchmarks/c/seq-mthreaded-reduced/pals_floodmax.3.1.ufo.BOUNDED-6.pals.c.v+lhb-reducer.c

Steps to Reproduce

Using creduce I have obtained the following reproducer:

void b() {
  int c;
  { int c; }
  c;
}