@@ -218,39 +218,82 @@ extern messageStream Info;
218
218
// * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * * //
219
219
// Convenience macros to add the file name and line number to the function name
220
220
221
+ // Compiler provided function name string:
222
+ // for gcc-compatible compilers use __PRETTY_FUNCTION__
223
+ // otherwise use the standard __func__
224
+ #ifdef __GNUC__
225
+ #define FUNCTION_NAME __PRETTY_FUNCTION__
226
+ #else
227
+ #define FUNCTION_NAME __func__
228
+ #endif
229
+
230
+
221
231
// - Report an error message using Foam::SeriousError
222
232
// for functionName in file __FILE__ at line __LINE__
223
233
#define SeriousErrorIn (fn ) \
224
234
::Foam::SeriousError ((fn), __FILE__, __LINE__)
225
235
236
+ // - Report an error message using Foam::SeriousError
237
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
238
+ #define SeriousErrorInFunction (fn ) SeriousErrorIn(FUNCTION_NAME)
239
+
240
+
226
241
// - Report an IO error message using Foam::SeriousError
227
242
// for functionName in file __FILE__ at line __LINE__
228
243
// for a particular IOstream
229
244
#define SeriousIOErrorIn (fn, ios ) \
230
245
::Foam::SeriousError ((fn), __FILE__, __LINE__, ios)
231
246
247
+ // - Report an IO error message using Foam::SeriousError
248
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
249
+ // for a particular IOstream
250
+ #define SeriousIOErrorInFunction (ios ) SeriousIOErrorIn(FUNCTION_NAME, ios)
251
+
252
+
232
253
// - Report a warning using Foam::Warning
233
254
// for functionName in file __FILE__ at line __LINE__
234
255
#define WarningIn (fn ) \
235
256
::Foam::Warning ((fn), __FILE__, __LINE__)
236
257
258
+ // - Report a warning using Foam::Warning
259
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
260
+ #define WarningInFunction WarningIn (FUNCTION_NAME)
261
+
262
+
237
263
// - Report an IO warning using Foam::Warning
238
264
// for functionName in file __FILE__ at line __LINE__
239
265
// for a particular IOstream
240
266
#define IOWarningIn (fn, ios ) \
241
267
::Foam::Warning ((fn), __FILE__, __LINE__, (ios))
242
268
269
+ // - Report an IO warning using Foam::Warning
270
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
271
+ // for a particular IOstream
272
+ #define IOWarningInFunction (ios ) IOWarningIn(FUNCTION_NAME, ios)
273
+
274
+
243
275
// - Report a information message using Foam::Info
244
276
// for functionName in file __FILE__ at line __LINE__
245
277
#define InfoIn (fn ) \
246
278
::Foam::Info ((fn), __FILE__, __LINE__)
247
279
280
+ // - Report a information message using Foam::Info
281
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
282
+ #define InfoInFunction InfoIn (FUNCTION_NAME)
283
+
284
+
248
285
// - Report an IO information message using Foam::Info
249
286
// for functionName in file __FILE__ at line __LINE__
250
287
// for a particular IOstream
251
288
#define IOInfoIn (fn, ios ) \
252
289
::Foam::Info ((fn), __FILE__, __LINE__, (ios))
253
290
291
+ // - Report an IO information message using Foam::Info
292
+ // for FUNCTION_NAME in file __FILE__ at line __LINE__
293
+ // for a particular IOstream
294
+ #define IOInfoInFunction (ios ) IOInfoIn(FUNCTION_NAME, ios)
295
+
296
+
254
297
// - Report a variable name and value
255
298
// using Foam::Pout in file __FILE__ at line __LINE__
256
299
#define Debug (var ) \
0 commit comments