From 6eec9c34a83fc5c0d93bc485c2ee0252824c2201 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?Matteo=20Gm=C3=BCr?= Date: Sat, 26 Oct 2024 11:57:11 +0000 Subject: Fix missing default constructor. --- arch/x86_64/include/arch/memory/paging/page_entry.hpp | 5 +++++ arch/x86_64/src/memory/paging/page_table.cpp | 3 +-- 2 files changed, 6 insertions(+), 2 deletions(-) (limited to 'arch/x86_64') diff --git a/arch/x86_64/include/arch/memory/paging/page_entry.hpp b/arch/x86_64/include/arch/memory/paging/page_entry.hpp index ba972d6..bfb0184 100644 --- a/arch/x86_64/include/arch/memory/paging/page_entry.hpp +++ b/arch/x86_64/include/arch/memory/paging/page_entry.hpp @@ -34,6 +34,11 @@ namespace teachos::arch::memory::paging 1UL << 63UL, ///< Page is forbidden from executing code (NXE bit in the EFER register has to be set) }; + /** + * @brief Defaulted constructor. + */ + entry() = default; + /** * @brief Creates a new entry object from a 64bit address. Should follow the scheme where bit index 12 - 51 are the * actual address and the other bits are flags. diff --git a/arch/x86_64/src/memory/paging/page_table.cpp b/arch/x86_64/src/memory/paging/page_table.cpp index 4747e0b..c9b4a37 100644 --- a/arch/x86_64/src/memory/paging/page_table.cpp +++ b/arch/x86_64/src/memory/paging/page_table.cpp @@ -85,8 +85,7 @@ namespace teachos::arch::memory::paging // could be incredibly hard to debug later. exception_handling::assert(index < PAGE_TABLE_ENTRY_COUNT, "[Page Table] Index out of bounds"); // TODO: This section seems to return completly invalid entry, debugger doesn't even show a value? Revert once fixed - auto & entry = entries[index]; - return entry; + return entries[index]; } auto page_table::next_table_address(std::size_t table_index) -> std::optional -- cgit v1.2.3