Snap for 6405781 from 8cc21e2906ed803de4c90eb58e52a150d4f15404 to sdk-release
Change-Id: If904c3ecb2c3dcbb05d9fb693b1fd84ca8931163
diff --git a/FIXES b/FIXES
index 4342917..e96cf33 100644
--- a/FIXES
+++ b/FIXES
@@ -25,6 +25,10 @@
This file lists all bug fixes, changes, etc., made since the AWK book
was sent to the printers in August, 1987.
+April 5, 2020:
+ Use <stdnoreturn.h> and noreturn instead of GCC attributes.
+ Thanks to GitHub user awkfan77. Closes PR #77.
+
February 28, 2020:
More cleanups from Christos Zoulas: notably backslash continuation
inside strings removes the newline and a fix for RS = "^a".
diff --git a/METADATA b/METADATA
index 9b0d5db..8e26074 100644
--- a/METADATA
+++ b/METADATA
@@ -5,11 +5,11 @@
type: GIT
value: "https://github.com/onetrueawk/awk.git"
}
- version: "2017c2e6eaa6a0d5a3e1ad2c9c891e82411dca83"
+ version: "c3d8f9c50011b7e8e19449b0712e700c0aeb8543"
license_type: NOTICE
last_upgrade_date {
year: 2020
- month: 2
- day: 28
+ month: 4
+ day: 6
}
}
diff --git a/awk.h b/awk.h
index 6865438..4e01325 100644
--- a/awk.h
+++ b/awk.h
@@ -25,6 +25,7 @@
#include <assert.h>
#include <stdint.h>
#include <stdbool.h>
+#include <stdnoreturn.h>
typedef double Awkfloat;
diff --git a/main.c b/main.c
index 643ff7a..ce0a412 100644
--- a/main.c
+++ b/main.c
@@ -22,7 +22,7 @@
THIS SOFTWARE.
****************************************************************/
-const char *version = "version 20200228";
+const char *version = "version 20200405";
#define DEBUG
#include <stdio.h>
@@ -52,7 +52,7 @@
bool safe = false; /* true => "safe" mode */
-static __attribute__((__noreturn__)) void fpecatch(int n
+static noreturn void fpecatch(int n
#ifdef SA_SIGINFO
, siginfo_t *si, void *uc
#endif
diff --git a/proto.h b/proto.h
index 5426ba3..71e3cd9 100644
--- a/proto.h
+++ b/proto.h
@@ -46,7 +46,7 @@
extern int hexstr(const uschar **);
extern int quoted(const uschar **);
extern char *cclenter(const char *);
-extern void overflo(const char *) __attribute__((__noreturn__));
+extern noreturn void overflo(const char *);
extern void cfoll(fa *, Node *);
extern int first(Node *);
extern void follow(Node *);
@@ -137,8 +137,8 @@
extern void bcheck2(int, int, int);
extern void SYNTAX(const char *, ...)
__attribute__((__format__(__printf__, 1, 2)));
-extern void FATAL(const char *, ...)
- __attribute__((__format__(__printf__, 1, 2), __noreturn__));
+extern noreturn void FATAL(const char *, ...)
+ __attribute__((__format__(__printf__, 1, 2)));
extern void WARNING(const char *, ...)
__attribute__((__format__(__printf__, 1, 2)));
extern void error(void);