Parsing functions.sh
|
Traceback (most recent call last):
File "/home/andy/git/oilshell/oil/bin/oil.py", line 906, in <module>
sys.exit(main(sys.argv))
File "/home/andy/git/oilshell/oil/bin/oil.py", line 864, in main
return AppBundleMain(argv)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 838, in AppBundleMain
status = ShellMain('osh', argv0, main_argv, login_shell)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 656, in ShellMain
status = main_loop.Batch(ex, c_parser, arena, nodes_out=nodes_out)
File "/home/andy/git/oilshell/oil/core/main_loop.py", line 148, in Batch
node = c_parser.ParseLogicalLine() # can raise ParseError
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2022, in ParseLogicalLine
node = self._ParseCommandLine()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1883, in _ParseCommandLine
child = self.ParseAndOr()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1813, in ParseAndOr
child = self.ParsePipeline()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1759, in ParsePipeline
child = self.ParseCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1711, in ParseCommand
return self.ParseFunctionDef() # f() { echo; } # function
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1522, in ParseFunctionDef
func.body = self.ParseCompoundCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1422, in ParseCompoundCommand
n1 = self.ParseBraceGroup()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 903, in ParseBraceGroup
c_list = self._ParseCommandList()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2005, in _ParseCommandList
node = self._ParseCommandTerm()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1946, in _ParseCommandTerm
child = self.ParseAndOr()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1813, in ParseAndOr
child = self.ParsePipeline()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1759, in ParsePipeline
child = self.ParseCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1674, in ParseCommand
return self.ParseCompoundCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1441, in ParseCompoundCommand
n4 = self.ParseIf()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1372, in ParseIf
self._ParseElifElse(if_node)
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1324, in _ParseElifElse
body = self._ParseCommandList()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2005, in _ParseCommandList
node = self._ParseCommandTerm()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1952, in _ParseCommandTerm
self._Peek()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 420, in _Peek
w = self.w_parser.ReadWord(self.next_lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1469, in ReadWord
w, need_more = self._ReadWord(lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1428, in _ReadWord
w = self._ReadCompoundWord(lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1171, in _ReadCompoundWord
return self._ReadCompoundWord3(lex_mode, Id.Undefined_Tok, True)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1283, in _ReadCompoundWord3
part = self._ReadLeftParts()
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 617, in _ReadLeftParts
return self._ReadExprSub(lex_mode_e.ShCommand)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 839, in _ReadExprSub
enode, _ = self.parse_ctx.ParseOilExpr(self.lexer, grammar_nt.oil_expr_sub)
File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 401, in ParseOilExpr
ast_node = self.tr.Expr(pnode)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 564, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 434, in Expr
return self._Tuple(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 221, in _Tuple
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 439, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 466, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 470, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 475, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 482, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 489, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 501, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 505, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 509, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 513, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 517, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 521, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 104, in _AssocBinary
right = self.Expr(children[2])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 527, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 539, in Expr
node = self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 430, in Expr
return self._Atom(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 281, in _Atom
return self._TestlistComp(children[1], id_)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 254, in _TestlistComp
if children[1].tok.id == Id.Arith_Comma:
IndexError: list index out of range
|
Translating functions.sh
|
Traceback (most recent call last):
File "/home/andy/git/oilshell/oil/bin/oil.py", line 906, in <module>
sys.exit(main(sys.argv))
File "/home/andy/git/oilshell/oil/bin/oil.py", line 864, in main
return AppBundleMain(argv)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 843, in AppBundleMain
return OshCommandMain(main_argv)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 753, in OshCommandMain
node = main_loop.ParseWholeFile(c_parser)
File "/home/andy/git/oilshell/oil/core/main_loop.py", line 180, in ParseWholeFile
node = c_parser.ParseLogicalLine() # can raise ParseError
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2022, in ParseLogicalLine
node = self._ParseCommandLine()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1883, in _ParseCommandLine
child = self.ParseAndOr()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1813, in ParseAndOr
child = self.ParsePipeline()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1759, in ParsePipeline
child = self.ParseCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1711, in ParseCommand
return self.ParseFunctionDef() # f() { echo; } # function
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1522, in ParseFunctionDef
func.body = self.ParseCompoundCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1422, in ParseCompoundCommand
n1 = self.ParseBraceGroup()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 903, in ParseBraceGroup
c_list = self._ParseCommandList()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2005, in _ParseCommandList
node = self._ParseCommandTerm()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1946, in _ParseCommandTerm
child = self.ParseAndOr()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1813, in ParseAndOr
child = self.ParsePipeline()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1759, in ParsePipeline
child = self.ParseCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1674, in ParseCommand
return self.ParseCompoundCommand()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1441, in ParseCompoundCommand
n4 = self.ParseIf()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1372, in ParseIf
self._ParseElifElse(if_node)
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1324, in _ParseElifElse
body = self._ParseCommandList()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 2005, in _ParseCommandList
node = self._ParseCommandTerm()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 1952, in _ParseCommandTerm
self._Peek()
File "/home/andy/git/oilshell/oil/osh/cmd_parse.py", line 420, in _Peek
w = self.w_parser.ReadWord(self.next_lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1469, in ReadWord
w, need_more = self._ReadWord(lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1428, in _ReadWord
w = self._ReadCompoundWord(lex_mode)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1171, in _ReadCompoundWord
return self._ReadCompoundWord3(lex_mode, Id.Undefined_Tok, True)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 1283, in _ReadCompoundWord3
part = self._ReadLeftParts()
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 617, in _ReadLeftParts
return self._ReadExprSub(lex_mode_e.ShCommand)
File "/home/andy/git/oilshell/oil/osh/word_parse.py", line 839, in _ReadExprSub
enode, _ = self.parse_ctx.ParseOilExpr(self.lexer, grammar_nt.oil_expr_sub)
File "/home/andy/git/oilshell/oil/frontend/parse_lib.py", line 401, in ParseOilExpr
ast_node = self.tr.Expr(pnode)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 564, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 434, in Expr
return self._Tuple(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 221, in _Tuple
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 439, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 466, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 470, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 475, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 482, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 489, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 501, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 505, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 509, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 513, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 517, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 97, in _AssocBinary
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 521, in Expr
return self._AssocBinary(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 104, in _AssocBinary
right = self.Expr(children[2])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 527, in Expr
return self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 539, in Expr
node = self.Expr(children[0])
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 430, in Expr
return self._Atom(children)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 281, in _Atom
return self._TestlistComp(children[1], id_)
File "/home/andy/git/oilshell/oil/oil_lang/expr_to_ast.py", line 254, in _TestlistComp
if children[1].tok.id == Id.Arith_Comma:
IndexError: list index out of range
|
Translating utility_functions.sh
|
Traceback (most recent call last):
File "/home/andy/git/oilshell/oil/bin/oil.py", line 906, in <module>
sys.exit(main(sys.argv))
File "/home/andy/git/oilshell/oil/bin/oil.py", line 864, in main
return AppBundleMain(argv)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 843, in AppBundleMain
return OshCommandMain(main_argv)
File "/home/andy/git/oilshell/oil/bin/oil.py", line 775, in OshCommandMain
osh2oil.PrintAsOil(arena, node)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 84, in PrintAsOil
fixer.DoCommand(node, None, at_top_level=True) # no local symbols yet
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 574, in DoCommand
self.DoCommand(child, local_symbols, at_top_level=at_top_level)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 741, in DoCommand
self.DoCommand(child, new_local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 813, in DoCommand
self.DoCommand(node.body, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 761, in DoCommand
self.DoCommand(child, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 650, in DoCommand
self.DoShAssignment(node, at_top_level, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 538, in DoShAssignment
self.DoWordAsExpr(pair.rhs, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 935, in DoWordAsExpr
self.DoWordInCommand(node, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 1113, in DoWordInCommand
self.DoWordPart(part, local_symbols)
File "/home/andy/git/oilshell/oil/tools/osh2oil.py", line 1326, in DoWordPart
raise AssertionError(node.__class__.__name__)
AssertionError: word_part__ExprSub
|