diff --git a/.github/workflows/validate.yml b/.github/workflows/validate.yml new file mode 100644 index 0000000..21ca828 --- /dev/null +++ b/.github/workflows/validate.yml @@ -0,0 +1,34 @@ +name: ะก++ division by zero validation + +on: + push: + branches: [ "master" ] + pull_request: + branches: [ "master" ] + +jobs: + build: + runs-on: ubuntu-latest + steps: + - uses: actions/checkout@v3 + - uses: actions/setup-java@v3 + with: + java-version: '17' + distribution: 'temurin' + - name: Pull the Docker image + run: | + mkdir out + docker pull yegor256/c2eo:0.1.24 + - name: Run the Docker image + run: docker run -v $(pwd):/eo yegor256/c2eo:0.1.24 examples/hello.c out/global.eo + - name: Check out/global.eo + run: cat out/global.eo + - name: Run Polystat Jar + run: bash polystat.sh + - name: Check polystat-eo-out.txt + run: cat polystat-eo-out.txt + - name: Upload results + uses: actions/upload-artifact@v3 + with: + name: polystat-eo-out + path: polystat-eo-out.txt diff --git a/examples/div-by-zero.c b/examples/div-by-zero.c new file mode 100644 index 0000000..4134be4 --- /dev/null +++ b/examples/div-by-zero.c @@ -0,0 +1,3 @@ +auto test(int a, int b) -> int { + return (a / b) + ((b / a) / a); +} \ No newline at end of file diff --git a/polystat.sh b/polystat.sh new file mode 100644 index 0000000..7101acc --- /dev/null +++ b/polystat.sh @@ -0,0 +1,8 @@ +#!/bin/bash + +# Run Polystat (EO) and save reports to "results" folder +curl -L -o polystat.jar "https://github.com/polystat/polystat-cli/releases/download/v0.1.11/polystat.jar" +echo "Polystat (EO) analysis has started" +touch polystat-eo-out.txt +java -jar polystat.jar eo --in out --to file=polystat-eo-out.txt --sarif +echo "Polystat (EO) analysis has finished"o polystat.jar "https://github.com/polystat/polystat-cli/releases/download/v0.1.11/polystat.jar" \ No newline at end of file