scheduler: entrypoint "returns" int
diff --git a/sdk/core/scheduler/main.cc b/sdk/core/scheduler/main.cc
index 132103b..ae09922 100644
--- a/sdk/core/scheduler/main.cc
+++ b/sdk/core/scheduler/main.cc
@@ -193,7 +193,7 @@
return &(reinterpret_cast<Thread *>(threadSpaces))[threadId - 1];
}
- [[cheri::interrupt_state(disabled)]] void __cheri_compartment("sched")
+ [[cheri::interrupt_state(disabled)]] int __cheri_compartment("sched")
scheduler_entry(const ThreadLoaderInfo *info)
{
Debug::Invariant(Capability{info}.length() ==
@@ -215,6 +215,8 @@
InterruptController::master_init();
Timer::interrupt_setup();
+
+ return 0;
}
static void __dead2 sched_panic(size_t mcause, size_t mepc, size_t mtval)