Commit 7c94858e authored by Philip Prindeville's avatar Philip Prindeville Committed by Rafael J. Wysocki
Browse files

ACPICA: Fix GCC 12 dangling-pointer warning

ACPICA commit aea0a5cfce262ce2ab16fd96d87c12cf5e756380

We're storing a persistent pointer to an ephemeral local variable
which technically is a dangling pointer and the compiler is correct.
However, since we never indirect the pointer, this is a safe
operation and we can suppress the warning.

Also, some C run-times (like MUSL) aren't including <stdint.h>
indirectly so we must include it explicitly or we won't have the
type definition for uintptr_t.

Fixes issue #867.

Link: https://github.com/acpica/acpica/commit/aea0a5cf


Signed-off-by: default avatarPhilip Prindeville <philipp@redfish-solutions.com>
Signed-off-by: default avatarBob Moore <robert.moore@intel.com>
Signed-off-by: default avatarRafael J. Wysocki <rafael.j.wysocki@intel.com>
parent 06c2afb8
Loading
Loading
Loading
Loading
+5 −0
Original line number Diff line number Diff line
@@ -37,7 +37,12 @@ void acpi_ut_init_stack_ptr_trace(void)
{
	acpi_size current_sp;

#pragma GCC diagnostic push
#if defined(__GNUC__) && __GNUC__ >= 12
#pragma GCC diagnostic ignored "-Wdangling-pointer="
#endif
	acpi_gbl_entry_stack_pointer = &current_sp;
#pragma GCC diagnostic pop
}

/*******************************************************************************
+1 −0
Original line number Diff line number Diff line
@@ -182,6 +182,7 @@
#ifdef ACPI_USE_STANDARD_HEADERS
#include <stddef.h>
#include <unistd.h>
#include <stdint.h>

#define ACPI_OFFSET(d, f)   offsetof(d, f)
#endif