| Summary: | sys-libs/glibc: unistd.h uses intptr_t without including stdint.h | ||
|---|---|---|---|
| Product: | Gentoo Linux | Reporter: | Michael Trinque <mike.gentoo-bugs> |
| Component: | [OLD] Core system | Assignee: | Gentoo Toolchain Maintainers <toolchain> |
| Status: | RESOLVED INVALID | ||
| Severity: | major | CC: | alonbl, amd64, mike.gentoo-bugs |
| Priority: | Normal | ||
| Version: | unspecified | ||
| Hardware: | All | ||
| OS: | Linux | ||
| Whiteboard: | |||
| Package list: | Runtime testing required: | --- | |
| Bug Depends on: | |||
| Bug Blocks: | 531268 | ||
|
Description
Michael Trinque
2015-05-17 21:11:47 UTC
better to create a test case detached from this dieharder. when is exactly (conditional) the intptr_t used? write a simple main.c which defines some macros, #include <unitstd.h> to reproduce. I have narrowed it down to the following test case:
# main.c
#include <stdio.h>
#define __USE_MISC 1
#include <unistd.h>
int main() {
return 0;
}
# compilation
% gcc -std=c99 -o main main.c
In file included from main.c:3:0:
/usr/include/unistd.h:1043:20: error: unknown type name ‘intptr_t’
extern void *sbrk (intptr_t __delta) __THROW;
Compilation succeeds without -std=c99 (In reply to Michael Trinque from comment #2) your use case is invalid. applications must *never* define __USE_xxx directly. |