BuildSystem/Kernel: Enable -Wextra and -Werror in kernel

Only needed to fix some unused variable bugs
This commit is contained in:
Bananymous 2023-11-30 13:41:14 +02:00
parent c1cac43f28
commit 9b841cb823
5 changed files with 9 additions and 5 deletions

View File

@ -148,7 +148,7 @@ target_compile_definitions(kernel PUBLIC __arch=${BANAN_ARCH})
target_compile_options(kernel PUBLIC -O2 -g)
target_compile_options(kernel PUBLIC $<$<COMPILE_LANGUAGE:CXX>:-Wno-literal-suffix -fno-rtti -fno-exceptions>)
target_compile_options(kernel PUBLIC -fmacro-prefix-map=${CMAKE_CURRENT_SOURCE_DIR}=.)
target_compile_options(kernel PUBLIC -fstack-protector -ffreestanding -Wall -Werror=return-type -Wstack-usage=1024 -fno-omit-frame-pointer -mgeneral-regs-only)
target_compile_options(kernel PUBLIC -fstack-protector -ffreestanding -Wall -Wextra -Werror -Wstack-usage=1024 -fno-omit-frame-pointer -mgeneral-regs-only)
# This might not work with other toolchains
target_compile_options(kernel PUBLIC $<$<COMPILE_LANGUAGE:CXX>:-Wno-invalid-offsetof>)

View File

@ -233,6 +233,7 @@ namespace Kernel
virtual BAN::ErrorOr<BAN::UniqPtr<MemoryRegion>> clone(PageTable& new_page_table) override
{
(void)new_page_table;
return BAN::Error::from_errno(ENOTSUP);
}
@ -275,4 +276,4 @@ namespace Kernel
return BAN::UniqPtr<MemoryRegion>(BAN::move(region));
}
}
}

View File

@ -197,7 +197,7 @@ namespace Kernel
LockGuard _(m_lock);
size_t result = first_data_page;
TRY(for_each_indirect_paddr_allocating(m_data_pages, [&] (paddr_t paddr, bool allocated) {
TRY(for_each_indirect_paddr_allocating(m_data_pages, [&] (paddr_t, bool allocated) {
if (allocated)
return BAN::Iteration::Break;
result++;

View File

@ -194,7 +194,7 @@ namespace Kernel
return true;
}
BAN::ErrorOr<BAN::UniqPtr<MemoryRegion>> FileBackedRegion::clone(PageTable& new_page_table)
BAN::ErrorOr<BAN::UniqPtr<MemoryRegion>> FileBackedRegion::clone(PageTable&)
{
ASSERT_NOT_REACHED();
}

View File

@ -289,8 +289,11 @@ static constexpr bool is_power_of_two(size_t value)
return (value & (value - 1)) == 0;
}
void* kmalloc(size_t size, size_t align, bool force_indentity_map)
void* kmalloc(size_t size, size_t align, bool force_identity_map)
{
// currently kmalloc is always identity mapped
(void)force_identity_map;
const kmalloc_info& info = s_kmalloc_info;
ASSERT(is_power_of_two(align));