libstdcpp.cpp 673 B

1234567891011121314151617181920212223242526272829303132333435
  1. #include <asm/port_io.h>
  2. #include <assert.h>
  3. #include <kernel/log.hpp>
  4. #include <kernel/process.hpp>
  5. #include <stdio.h>
  6. #include <types/types.h>
  7. void operator delete(void*)
  8. {
  9. assert(false);
  10. }
  11. void operator delete(void*, unsigned int)
  12. {
  13. assert(false);
  14. }
  15. extern "C" void NORETURN __stack_chk_fail(void)
  16. {
  17. assert(false);
  18. }
  19. extern "C" void NORETURN __cxa_pure_virtual(void)
  20. {
  21. assert(false);
  22. }
  23. void NORETURN
  24. __assert_fail(const char* statement, const char* file, int line, const char* func)
  25. {
  26. char buf[256];
  27. snprintf(buf, sizeof(buf), "Kernel assertion failed: (%s), %s:%d, %s\n",
  28. statement, file, line, func);
  29. kmsg(buf);
  30. freeze();
  31. }