Version: SMASH-1.5
deprecate_c_functions.h
Go to the documentation of this file.
1 /*
2  *
3  * Copyright (c) 2015-2018
4  * SMASH Team
5  *
6  * GNU General Public License (GPLv3 or later)
7  *
8  */
9 
10 #ifndef SRC_INCLUDE_DEPRECATE_C_FUNCTIONS_H_
11 #define SRC_INCLUDE_DEPRECATE_C_FUNCTIONS_H_
12 
19 #include <cctype>
20 #include <clocale>
21 #include <cmath>
22 #include <csetjmp>
23 #include <csignal>
24 #include <cstdio>
25 #include <cstdlib>
26 #include <cstring>
27 #include <ctime>
28 #include <cwctype>
29 
30 #include "forwarddeclarations.h"
31 #include "macros.h"
32 
33 namespace smash {
34 
52 #define SMASH_DEPRECATE_NONSTD(fun__) \
53  template <typename... Ts> \
54  SMASH_DEPRECATED("Please add the std:: namespace for this function.") \
55  auto fun__(Ts&&... args)->decltype(std::fun__(args...)) { \
56  return std::fun__(args...); \
57  }
77 SMASH_DEPRECATE_NONSTD(clearerr)
79 SMASH_DEPRECATE_NONSTD(copysign)
83 SMASH_DEPRECATE_NONSTD(difftime)
108 SMASH_DEPRECATE_NONSTD(fpclassify)
109 SMASH_DEPRECATE_NONSTD(fprintf)
116 SMASH_DEPRECATE_NONSTD(freopen)
120 SMASH_DEPRECATE_NONSTD(fsetpos)
123 SMASH_DEPRECATE_NONSTD(fwprintf)
125 SMASH_DEPRECATE_NONSTD(fwscanf)
127 SMASH_DEPRECATE_NONSTD(getchar)
130 SMASH_DEPRECATE_NONSTD(getwchar)
134 SMASH_DEPRECATE_NONSTD(isalnum)
135 SMASH_DEPRECATE_NONSTD(isalpha)
136 SMASH_DEPRECATE_NONSTD(iscntrl)
137 SMASH_DEPRECATE_NONSTD(isdigit)
138 SMASH_DEPRECATE_NONSTD(isfinite)
139 SMASH_DEPRECATE_NONSTD(isgraph)
140 SMASH_DEPRECATE_NONSTD(isgreater)
141 SMASH_DEPRECATE_NONSTD(isgreaterequal)
144 SMASH_DEPRECATE_NONSTD(islessequal)
145 SMASH_DEPRECATE_NONSTD(islessgreater)
146 SMASH_DEPRECATE_NONSTD(islower)
148 SMASH_DEPRECATE_NONSTD(isnormal)
149 SMASH_DEPRECATE_NONSTD(isprint)
150 SMASH_DEPRECATE_NONSTD(ispunct)
151 SMASH_DEPRECATE_NONSTD(isspace)
152 SMASH_DEPRECATE_NONSTD(isunordered)
153 SMASH_DEPRECATE_NONSTD(isupper)
154 SMASH_DEPRECATE_NONSTD(iswalnum)
155 SMASH_DEPRECATE_NONSTD(iswalpha)
156 SMASH_DEPRECATE_NONSTD(iswcntrl)
157 SMASH_DEPRECATE_NONSTD(iswctype)
158 SMASH_DEPRECATE_NONSTD(iswdigit)
159 SMASH_DEPRECATE_NONSTD(iswgraph)
160 SMASH_DEPRECATE_NONSTD(iswlower)
161 SMASH_DEPRECATE_NONSTD(iswprint)
162 SMASH_DEPRECATE_NONSTD(iswpunct)
163 SMASH_DEPRECATE_NONSTD(iswspace)
164 SMASH_DEPRECATE_NONSTD(iswupper)
165 SMASH_DEPRECATE_NONSTD(iswxdigit)
166 SMASH_DEPRECATE_NONSTD(isxdigit)
172 SMASH_DEPRECATE_NONSTD(llround)
173 SMASH_DEPRECATE_NONSTD(localeconv)
174 SMASH_DEPRECATE_NONSTD(localtime)
180 SMASH_DEPRECATE_NONSTD(longjmp)
186 SMASH_DEPRECATE_NONSTD(mbrtowc)
187 SMASH_DEPRECATE_NONSTD(mbsinit)
188 SMASH_DEPRECATE_NONSTD(mbsrtowcs)
189 SMASH_DEPRECATE_NONSTD(mbstowcs)
194 SMASH_DEPRECATE_NONSTD(memmove)
201 SMASH_DEPRECATE_NONSTD(nearbyint)
202 SMASH_DEPRECATE_NONSTD(nextafter)
203 SMASH_DEPRECATE_NONSTD(nexttoward)
208 SMASH_DEPRECATE_NONSTD(putchar)
211 SMASH_DEPRECATE_NONSTD(putwchar)
215 SMASH_DEPRECATE_NONSTD(realloc)
216 SMASH_DEPRECATE_NONSTD(remainder)
223 SMASH_DEPRECATE_NONSTD(scalbln)
227 SMASH_DEPRECATE_NONSTD(setlocale)
228 SMASH_DEPRECATE_NONSTD(setvbuf)
230 SMASH_DEPRECATE_NONSTD(signbit)
233 SMASH_DEPRECATE_NONSTD(sprintf)
240 SMASH_DEPRECATE_NONSTD(strcoll)
242 SMASH_DEPRECATE_NONSTD(strcspn)
243 SMASH_DEPRECATE_NONSTD(strerror)
244 SMASH_DEPRECATE_NONSTD(strftime)
246 SMASH_DEPRECATE_NONSTD(strncat)
247 SMASH_DEPRECATE_NONSTD(strncmp)
248 SMASH_DEPRECATE_NONSTD(strncpy)
249 SMASH_DEPRECATE_NONSTD(strpbrk)
250 SMASH_DEPRECATE_NONSTD(strrchr)
256 SMASH_DEPRECATE_NONSTD(strtoul)
257 SMASH_DEPRECATE_NONSTD(strxfrm)
258 SMASH_DEPRECATE_NONSTD(swprintf)
259 SMASH_DEPRECATE_NONSTD(swscanf)
265 SMASH_DEPRECATE_NONSTD(tmpfile)
267 SMASH_DEPRECATE_NONSTD(tolower)
268 SMASH_DEPRECATE_NONSTD(toupper)
269 SMASH_DEPRECATE_NONSTD(towctrans)
270 SMASH_DEPRECATE_NONSTD(towlower)
271 SMASH_DEPRECATE_NONSTD(towupper)
274 SMASH_DEPRECATE_NONSTD(ungetwc)
275 SMASH_DEPRECATE_NONSTD(vfprintf)
276 SMASH_DEPRECATE_NONSTD(vfwprintf)
277 SMASH_DEPRECATE_NONSTD(vprintf)
278 SMASH_DEPRECATE_NONSTD(vsprintf)
279 SMASH_DEPRECATE_NONSTD(vswprintf)
280 SMASH_DEPRECATE_NONSTD(vwprintf)
281 SMASH_DEPRECATE_NONSTD(wcrtomb)
285 SMASH_DEPRECATE_NONSTD(wcscoll)
287 SMASH_DEPRECATE_NONSTD(wcscspn)
288 SMASH_DEPRECATE_NONSTD(wcsftime)
290 SMASH_DEPRECATE_NONSTD(wcsncat)
291 SMASH_DEPRECATE_NONSTD(wcsncmp)
292 SMASH_DEPRECATE_NONSTD(wcsncpy)
293 SMASH_DEPRECATE_NONSTD(wcspbrk)
294 SMASH_DEPRECATE_NONSTD(wcsrchr)
295 SMASH_DEPRECATE_NONSTD(wcsrtombs)
301 SMASH_DEPRECATE_NONSTD(wcstombs)
302 SMASH_DEPRECATE_NONSTD(wcstoul)
303 SMASH_DEPRECATE_NONSTD(wcsxfrm)
306 SMASH_DEPRECATE_NONSTD(wctrans)
308 SMASH_DEPRECATE_NONSTD(wmemchr)
309 SMASH_DEPRECATE_NONSTD(wmemcmp)
310 SMASH_DEPRECATE_NONSTD(wmemcpy)
311 SMASH_DEPRECATE_NONSTD(wmemmove)
312 SMASH_DEPRECATE_NONSTD(wmemset)
313 SMASH_DEPRECATE_NONSTD(wprintf)
315 #undef SMASH_DEPRECATE_NONSTD
316 
317 } // namespace smash
318 
319 #endif // SRC_INCLUDE_DEPRECATE_C_FUNCTIONS_H_
FilePtr fopen(const bf::path &filename, const std::string &mode)
Open a file with given mode.
Definition: file.cc:14
#define SMASH_DEPRECATE_NONSTD(fun__)
This macro is used to define functions that are in the C library and in the std namespace.
Definition: action.h:24