diff options
Diffstat (limited to 'dev-ada/gprbuild/files/gprbuild-22.0.0-2020.patch')
-rw-r--r-- | dev-ada/gprbuild/files/gprbuild-22.0.0-2020.patch | 47 |
1 files changed, 0 insertions, 47 deletions
diff --git a/dev-ada/gprbuild/files/gprbuild-22.0.0-2020.patch b/dev-ada/gprbuild/files/gprbuild-22.0.0-2020.patch deleted file mode 100644 index ba5c2f858de7..000000000000 --- a/dev-ada/gprbuild/files/gprbuild-22.0.0-2020.patch +++ /dev/null @@ -1,47 +0,0 @@ ---- a/gpr/src/gpr_imports.c 2022-02-27 10:10:34.053638209 +0100 -+++ b/gpr/src/gpr_imports.c 2022-02-27 10:12:03.898276758 +0100 -@@ -114,6 +114,44 @@ - const char *__gnat_default_libgcc_subdir = "lib"; - #endif - -+#include <sys/types.h> -+#include <sys/stat.h> -+#include <limits.h> -+#include <unistd.h> -+ -+ extern long long __gnat_file_time(char* name) -+ { -+ long long result; -+ -+ if (name == NULL) { -+ return LLONG_MIN; -+ } -+ /* Number of seconds between <Jan 1st 1970> and <Jan 1st 2150>. */ -+ static const long long ada_epoch_offset = (136 * 365 + 44 * 366) * 86400LL; -+ struct stat sb; -+ if (stat(name, &sb) != 0) { -+ return LLONG_MIN; -+ } -+ -+ // return (sb.st_mtim.tv_sec - ada_epoch_offset) * 1E9 -+ // + sb.st_mtim.tv_nsec; -+ // with check overflow below -+ -+ if (__builtin_ssubll_overflow(sb.st_mtim.tv_sec, ada_epoch_offset, &result)) { -+ return LLONG_MIN; -+ } -+ -+ if (__builtin_smulll_overflow(result, 1E9, &result)) { -+ return LLONG_MIN; -+ } -+ -+ if (__builtin_saddll_overflow(result, sb.st_mtim.tv_nsec, &result)) { -+ return LLONG_MIN; -+ } -+ -+ return result; -+ } -+ - #ifdef __cplusplus - } - #endif |