From 1210ee9ba9b9a20346cb90e9e1baa92ee1f240d0 Mon Sep 17 00:00:00 2001 From: Brian Gianforcaro Date: Tue, 21 Dec 2021 16:30:13 -0800 Subject: LibC: Make regs.h work with compilers without concepts This allows the gdb port to compile with our `regs.h`. --- Userland/Libraries/LibC/sys/arch/i386/regs.h | 78 +++++++++++++++------------- 1 file changed, 42 insertions(+), 36 deletions(-) (limited to 'Userland/Libraries/LibC') diff --git a/Userland/Libraries/LibC/sys/arch/i386/regs.h b/Userland/Libraries/LibC/sys/arch/i386/regs.h index 44289a4428..098feb99dc 100644 --- a/Userland/Libraries/LibC/sys/arch/i386/regs.h +++ b/Userland/Libraries/LibC/sys/arch/i386/regs.h @@ -6,48 +6,54 @@ #pragma once -#include +#include + +#if defined(__cplusplus) && defined(__cpp_concepts) +# include +#else +# include +#endif struct [[gnu::packed]] PtraceRegisters { #if ARCH(I386) - u32 eax; - u32 ecx; - u32 edx; - u32 ebx; - u32 esp; - u32 ebp; - u32 esi; - u32 edi; - u32 eip; - u32 eflags; + uint32_t eax; + uint32_t ecx; + uint32_t edx; + uint32_t ebx; + uint32_t esp; + uint32_t ebp; + uint32_t esi; + uint32_t edi; + uint32_t eip; + uint32_t eflags; #else - u64 rax; - u64 rcx; - u64 rdx; - u64 rbx; - u64 rsp; - u64 rbp; - u64 rsi; - u64 rdi; - u64 rip; - u64 r8; - u64 r9; - u64 r10; - u64 r11; - u64 r12; - u64 r13; - u64 r14; - u64 r15; - u64 rflags; + uint64_t rax; + uint64_t rcx; + uint64_t rdx; + uint64_t rbx; + uint64_t rsp; + uint64_t rbp; + uint64_t rsi; + uint64_t rdi; + uint64_t rip; + uint64_t r8; + uint64_t r9; + uint64_t r10; + uint64_t r11; + uint64_t r12; + uint64_t r13; + uint64_t r14; + uint64_t r15; + uint64_t rflags; #endif - u32 cs; - u32 ss; - u32 ds; - u32 es; - u32 fs; - u32 gs; + uint32_t cs; + uint32_t ss; + uint32_t ds; + uint32_t es; + uint32_t fs; + uint32_t gs; -#ifdef __cplusplus +#if defined(__cplusplus) && defined(__cpp_concepts) FlatPtr ip() const { # if ARCH(I386) -- cgit v1.2.3