Skip to content

Commit

Permalink
Minor bugfixes
Browse files Browse the repository at this point in the history
  • Loading branch information
uxmal committed Sep 28, 2017
1 parent 5200c05 commit f874142
Show file tree
Hide file tree
Showing 2 changed files with 22 additions and 14 deletions.
7 changes: 6 additions & 1 deletion src/CodeModel/CSharpExpressionWriter.cs
Original file line number Diff line number Diff line change
Expand Up @@ -470,14 +470,19 @@ private void WriteByteLiteral(Syntax.Bytes literal)
writer.Write("0x{0}{1}", s[i + 2], s[i + 3]);
i += 3;
}
else if (s[i + 1] == '0')
{
writer.Write("\\0");
i += 1;
}
else if (s[i + 1] == '\\')
{
writer.Write("(byte)'\\\\'");
i += 1;
}
else
{
throw new NotImplementedException();
throw new NotImplementedException(string.Format("Not implemented {0}{1}", s[i], s[i+1]));
}
}
else if (' ' <= s[i] && s[i] <= '~')
Expand Down
29 changes: 16 additions & 13 deletions src/Syntax/Parser.cs
Original file line number Diff line number Diff line change
Expand Up @@ -1044,22 +1044,25 @@ public Statement raise_stmt()
if (!Peek(stmt_follow))
{
exToRaise = test();
posEnd = exToRaise.End;
if (PeekAndDiscard(TokenType.From))
if (exToRaise != null)
{
exOriginal = test();
posEnd = exOriginal.End;
}
else if (PeekAndDiscard(TokenType.COMMA))
{
Exp ex2 = test();
Exp ex3 = new NoneExp(filename, ex2.End, ex2.End);
if (PeekAndDiscard(TokenType.COMMA))
posEnd = exToRaise.End;
if (PeekAndDiscard(TokenType.From))
{
ex3 = test();
exOriginal = test();
posEnd = exOriginal.End;
}
else if (PeekAndDiscard(TokenType.COMMA))
{
Exp ex2 = test();
Exp ex3 = new NoneExp(filename, ex2.End, ex2.End);
if (PeekAndDiscard(TokenType.COMMA))
{
ex3 = test();
}
exOriginal = new PyTuple(new List<Exp> { ex2, ex3 }, filename, posStart, (ex3 ?? ex2).End);
posEnd = exOriginal.End;
}
exOriginal = new PyTuple(new List<Exp> { ex2, ex3 }, filename, posStart, (ex3 ?? ex2).End);
posEnd = exOriginal.End;
}
}
return new RaiseStatement(exToRaise, exOriginal, filename, posStart, posEnd);
Expand Down

0 comments on commit f874142

Please sign in to comment.