Компиляция и выполнение переводчика языка программирования Шекспира spl2c в Mac OS X 10.6 приводит к предупреждениям / ошибкам
Я хотел поэкспериментировать сШекспировский язык программированияпоэтому я скачал его сВот и выполнил Makefile, используяcd spl-1.2.1
,Make
Сборникspl2c
выполняется с парой предупреждений:
scanner.l:600: warning, rule cannot be matched
<stdout>:5808: warning: ‘yyunput’ defined but not used
И затем, когда он пытается скомпилировать все примеры, все идет наперекосяк:
../spl/bin/spl2c < fibonacci.spl > fibonacci.c
Warning at line 19: equality expected
Warning at line 28: equality expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 30: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 32: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 34: comment expected
Warning at line 36: comment expected
Warning at line 36: comment expected
Warning at line 37: comment expected
Warning at line 37: comment expected
Warning at line 37: comment expected
Warning at line 37: colon expected
Warning at line 40: equality expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: comment expected
Warning at line 51: colon expected
Error at line 59: 'act [roman number]' or 'scene [roman number]' expected
1 errors and 27 warnings found. No code output.
Кто-нибудь может указать мне правильное направление для исправления этого? Мой первоначальный проект собирался изучать спл, не склоняясь к отладке компиляторов (яЯ действительно хотел бы написать свой собственный компилятор в конце концов, но яЯ предпочитаю придерживаться моего первоначального проекта на данный момент). Я '
Я бегу,OS X 10.6.2
gcc version 4.2.1 (Apple Inc. build 5646) (dot 1)
flex 2.5.35
, а также .bison (GNU Bison) 2.3
РЕДАКТИРОВАТЬ: Для простых программ, не требующих gotos (например, hello.spl), вы можете обойти проблему, удалив все строки ACT / SCENE, кроме первой ACT I / SCENE I.