]> git.ipfire.org Git - thirdparty/gcc.git/blob - gcc/m2/pge-boot/Gwrapc.h
Update copyright years.
[thirdparty/gcc.git] / gcc / m2 / pge-boot / Gwrapc.h
1 /* do not edit automatically generated by mc from wrapc. */
2 /* wrapc.def provides access to more of the C library.
3
4 Copyright (C) 2001-2023 Free Software Foundation, Inc.
5 Contributed by Gaius Mulley <gaius.mulley@southwales.ac.uk>.
6
7 This file is part of GNU Modula-2.
8
9 GNU Modula-2 is free software; you can redistribute it and/or modify
10 it under the terms of the GNU General Public License as published by
11 the Free Software Foundation; either version 3, or (at your option)
12 any later version.
13
14 GNU Modula-2 is distributed in the hope that it will be useful, but
15 WITHOUT ANY WARRANTY; without even the implied warranty of
16 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the GNU
17 General Public License for more details.
18
19 Under Section 7 of GPL version 3, you are granted additional
20 permissions described in the GCC Runtime Library Exception, version
21 3.1, as published by the Free Software Foundation.
22
23 You should have received a copy of the GNU General Public License and
24 a copy of the GCC Runtime Library Exception along with this program;
25 see the files COPYING3 and COPYING.RUNTIME respectively. If not, see
26 <http://www.gnu.org/licenses/>. */
27
28
29 #if !defined (_wrapc_H)
30 # define _wrapc_H
31
32 #include "config.h"
33 #include "system.h"
34 # ifdef __cplusplus
35 extern "C" {
36 # endif
37 # if !defined (PROC_D)
38 # define PROC_D
39 typedef void (*PROC_t) (void);
40 typedef struct { PROC_t proc; } PROC;
41 # endif
42
43 # include "GSYSTEM.h"
44
45 # if defined (_wrapc_C)
46 # define EXTERN
47 # else
48 # define EXTERN extern
49 # endif
50
51
52 /*
53 strtime - returns the C string for the equivalent C asctime
54 function.
55 */
56
57 EXTERN void * wrapc_strtime (void);
58
59 /*
60 filesize - assigns the size of a file, f, into low, high and
61 returns zero if successful.
62 */
63
64 EXTERN int wrapc_filesize (int f, unsigned int *low, unsigned int *high);
65
66 /*
67 fileinode - return the inode associated with file, f.
68 */
69
70 EXTERN int wrapc_fileinode (int f, unsigned int *low, unsigned int *high);
71
72 /*
73 filemtime - returns the mtime of a file, f.
74 */
75
76 EXTERN int wrapc_filemtime (int f);
77
78 /*
79 getrand - returns a random number between 0..n-1
80 */
81
82 EXTERN int wrapc_getrand (int n);
83
84 /*
85 getusername - returns a C string describing the current user.
86 */
87
88 EXTERN void * wrapc_getusername (void);
89
90 /*
91 getnameuidgid - fills in the, uid, and, gid, which represents
92 user, name.
93 */
94
95 EXTERN void wrapc_getnameuidgid (void * name, int *uid, int *gid);
96 EXTERN int wrapc_signbit (double r);
97 EXTERN int wrapc_signbitf (float s);
98 EXTERN int wrapc_signbitl (long double l);
99
100 /*
101 isfinite - provide non builtin alternative to the gcc builtin isfinite.
102 Returns 1 if x is finite and 0 if it is not.
103 */
104
105 EXTERN int wrapc_isfinite (double x);
106
107 /*
108 isfinitef - provide non builtin alternative to the gcc builtin isfinite.
109 Returns 1 if x is finite and 0 if it is not.
110 */
111
112 EXTERN int wrapc_isfinitef (float x);
113
114 /*
115 isfinitel - provide non builtin alternative to the gcc builtin isfinite.
116 Returns 1 if x is finite and 0 if it is not.
117 */
118
119 EXTERN int wrapc_isfinitel (long double x);
120 # ifdef __cplusplus
121 }
122 # endif
123
124 # undef EXTERN
125 #endif