0
私はもうプロジェクトからコードをコンパイルしようとしています。いくつかのyacc/lexコードが含まれています。 bison、bison ++、bisonC++のyaccでコンパイルしようとしました。しかし、誰もそれをコンパイルできないようです。私は実際にバイソン/ yacc /レックスを知らないので、どんなヒントもありがたいです。ここでyaccコードをコンパイルしようとしています
はエラーメッセージです:ここで
lex -t generator/parse_testvectors.l \
> generator/parse_testvectors.lex.c
yacc -o generator/parse_testvectors.C \
generator/parse_testvectors.y
generator/parse_testvectors.y:75.51-99: syntax error, unexpected {...}
generator/parse_testvectors.y:88.124-173: syntax error, unexpected {...}
generator/parse_testvectors.y:98.9-102.9: syntax error, unexpected {...}
generator/parse_testvectors.y:105.9-113.9: syntax error, unexpected {...}
generator/parse_testvectors.y:138.9-142.9: syntax error, unexpected {...}
...
は、コードは次のとおりです。
...
68 %token MEMORY_KEYWORD
69 %token STACK_KEYWORD
70 %token STACK_TOP_KEYWORD
71 %token FRAME_POINTER_KEYWORD
72
73 %%
74 main : testvector { i386_seq::num_testvectors = cur_testvector+1; }
75 | testvector main ; { i386_seq::num_testvectors = cur_testvector+1; }
76
77 testvector : testvector_begin assignments testvector_end ;
78
79 assignments : register_assignments flag_assignments stack_assignment memory_assignment
80 {
...
はい、それは機能しました!ありがとう。このコードはそのまま動作するはずなので、奇妙です。 – psiphi75
この答えがあなたの問題psiphi75を解決した場合は、それを正解としてください。さもなければ、スタックオーバーフローのユーザーは将来あなたの質問に答えることを拒否するかもしれません。 – librik
librikありがとう、私はそれを認識しませんでした。 – psiphi75