Skip to content

Commit 5fe108b

Browse files
committed
C++ problems
1 parent f3f78ee commit 5fe108b

File tree

3 files changed

+10
-3
lines changed

3 files changed

+10
-3
lines changed

src/lang/interpreter.cc

Lines changed: 8 additions & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -68,7 +68,14 @@ namespace verona::interpreter
6868

6969
InterpreterFrame* top_frame()
7070
{
71-
return frame_stack.back();
71+
if (frame_stack.empty())
72+
{
73+
return nullptr;
74+
}
75+
else
76+
{
77+
return frame_stack.back();
78+
}
7279
}
7380

7481
InterpreterFrame* push_stack_frame(trieste::Node body)

src/lang/passes/parse.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -96,7 +96,7 @@ trieste::Parse parser()
9696
"(?:#[^\\n\\r]*)" >> [](auto&) {},
9797

9898
"def\\b" >> [](auto& m) { m.seq(Func); },
99-
"@name\\(\"([0-9A-Za-z_]+)\"\\)" >> [](auto& m) { m.add(Name, 1); },
99+
"@name\\(\"([^\\n\"]+)\"\\)" >> [](auto& m) { m.add(Name, 1); },
100100
"when\\b" >> [](auto& m) { m.seq(When); },
101101
"\\(" >> [](auto& m) { m.push(Parens); },
102102
"\\)" >>

src/rt/rt.cc

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -361,7 +361,7 @@ namespace rt
361361

362362
int get_cown_id(objects::DynObject* cown)
363363
{
364-
if (cown->get_prototype() != core::cownPrototypeObject())
364+
if (cown && cown->get_prototype() != core::cownPrototypeObject())
365365
{
366366
ui::error("The given object is not a cown", cown);
367367
}

0 commit comments

Comments
 (0)