aboutsummaryrefslogtreecommitdiff
path: root/build.sh
diff options
context:
space:
mode:
authorkartofen <kartofen.mail.0@protonmail.com>2025-08-03 23:53:24 +0300
committerkartofen <kartofen.mail.0@protonmail.com>2025-08-03 23:53:24 +0300
commit1c83c514c8108fccfec9764da5e4563b98eb871b (patch)
treeccc6657a0b24900a17cf90cfd0676c8123492566 /build.sh
parent059ee9afcc575572f87f224c93288e2835cd1a52 (diff)
calc implemented in my grammar
Diffstat (limited to 'build.sh')
-rwxr-xr-xbuild.sh20
1 files changed, 15 insertions, 5 deletions
diff --git a/build.sh b/build.sh
index e39d4b4..ea1daef 100755
--- a/build.sh
+++ b/build.sh
@@ -4,7 +4,7 @@ set -e
function log
{
- echo "-> $@"
+ >&2 echo "-> $@"
"$@"
}
@@ -70,12 +70,22 @@ shared demos/sample-files/lalr-defs
# shared demos/sample-files/calc-defs
# leak generate-parser "-o bin/calc -t lalr-table bin/calc-defs.so"
# cc demos/sample-files/calc-skeleton "" parser
-# leak parser "13*10+9" # wrong answer
+# leak parser "13*10+9"
# leak parser "-13+20"
# leak parser "1>52?2+3:53"
+# exit 0
-# --- Grammar Definitino example ---
+# --- Grammar Definition example ---
shared demos/sample-files/gram-defs
leak generate-parser "-o bin/gram -t lalr-table bin/gram-defs.so"
-cc demos/sample-files/gram-skeleton "" parser
-leak parser
+cc demos/sample-files/gram-skeleton "" gram-parser
+
+leak gram-parser < demos/sample-files/calc.g > bin/calc-gram.c
+
+shared bin/calc-gram
+leak generate-parser "-o bin/calc -t lalr-table bin/calc-gram.so"
+cc demos/sample-files/calc-skeleton "" calc-parser
+
+leak calc-parser "13*10+9"
+leak calc-parser "-13+20"
+leak calc-parser "1>52?2+3:53"