In Glibc 2.26+, the ucontext struct was changed from
typedef struct ucontext { ... } ucontext_t
to
typedef struct ucontext_t { ... } ucontext_t
This breaks compilation due to the presence of this line:
typedef ucontext ucontext_t;
in
src/third_party/gperftools-2.2/src/stacktrace_powerpc-linux-inl.h
src/third_party/gperftools-2.5/src/stacktrace_powerpc-linux-inl.h
This was fixed upstream in: https://github.com/gperftools/gperftools/commit/e41bc414048eb4a37743e294bed3f1c63a1fa559
This was reported original by Jim Van Fleet at IBM.