implement "low hanging fruit" from C11
based on Gregor's patch sent to the list. includes: - stdalign.h - removing gets in C11 mode - adding aligned_alloc and adjusting other functions to use it - adding 'x' flag to fopen for exclusive mode
This commit is contained in:
@@ -0,0 +1,15 @@
|
||||
#ifndef _STDALIGN_H
|
||||
#define _STDALIGN_H
|
||||
|
||||
/* this whole header only works in C11 or with compiler extensions */
|
||||
#if __STDC_VERSION__ < 201112L && defined( __GNUC__)
|
||||
#define _Alignas(t) __attribute__((__aligned__(t)))
|
||||
#define _Alignof(t) __alignof__(t)
|
||||
#endif
|
||||
|
||||
#define alignas _Alignas
|
||||
#define alignof _Alignof
|
||||
#define __alignas_is_defined 1
|
||||
#define __alignof_is_defined 1
|
||||
|
||||
#endif
|
||||
@@ -90,7 +90,9 @@ int putc(int, FILE *);
|
||||
int putchar(int);
|
||||
|
||||
char *fgets(char *, int, FILE *);
|
||||
#if __STDC_VERSION__ < 201112L
|
||||
char *gets(char *);
|
||||
#endif
|
||||
|
||||
int fputs(const char *, FILE *);
|
||||
int puts(const char *);
|
||||
|
||||
@@ -38,6 +38,7 @@ void *malloc (size_t);
|
||||
void *calloc (size_t, size_t);
|
||||
void *realloc (void *, size_t);
|
||||
void free (void *);
|
||||
void *aligned_alloc(size_t alignment, size_t size);
|
||||
|
||||
void abort (void);
|
||||
int atexit (void (*) (void));
|
||||
|
||||
Reference in New Issue
Block a user