findloc0s.m4 revision 1.1 1 1.1 mrg dnl Support macros for findloc.
2 1.1 mrg dnl This file is part of the GNU Fortran Runtime Library (libgfortran)
3 1.1 mrg dnl Distributed under the GNU GPL with exception. See COPYING for details.
4 1.1 mrg include(iparm.m4)dnl
5 1.1 mrg define(header1,`extern void findloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
6 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
7 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value);
8 1.1 mrg
9 1.1 mrg export_proto(findloc0_'atype_code`);
10 1.1 mrg
11 1.1 mrg void
12 1.1 mrg findloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
13 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
14 1.1 mrg GFC_LOGICAL_4 back, gfc_charlen_type len_array, gfc_charlen_type len_value)')dnl
15 1.1 mrg dnl
16 1.1 mrg define(header2,`extern void mfindloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
17 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
18 1.1 mrg gfc_array_l1 *const restrict, GFC_LOGICAL_4 back, gfc_charlen_type len_array,
19 1.1 mrg gfc_charlen_type len_value);
20 1.1 mrg export_proto(mfindloc0_'atype_code`);
21 1.1 mrg
22 1.1 mrg void
23 1.1 mrg mfindloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
24 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
25 1.1 mrg gfc_array_l1 *const restrict mask, GFC_LOGICAL_4 back,
26 1.1 mrg gfc_charlen_type len_array, gfc_charlen_type len_value)')
27 1.1 mrg dnl
28 1.1 mrg define(header3,`extern void sfindloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
29 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
30 1.1 mrg GFC_LOGICAL_4 *, GFC_LOGICAL_4 back, gfc_charlen_type len_array,
31 1.1 mrg gfc_charlen_type len_value);
32 1.1 mrg export_proto(sfindloc0_'atype_code`);
33 1.1 mrg
34 1.1 mrg void
35 1.1 mrg sfindloc0_'atype_code` (gfc_array_index_type * const restrict retarray,
36 1.1 mrg 'atype` * const restrict array, 'atype_name` *value,
37 1.1 mrg GFC_LOGICAL_4 * mask, GFC_LOGICAL_4 back, gfc_charlen_type len_array,
38 1.1 mrg gfc_charlen_type len_value)')dnl
39 1.1 mrg dnl
40 1.1 mrg define(comparison,ifelse(atype_kind,4,dnl
41 1.1 mrg `compare_string_char4 (len_array, base, len_value, value) == 0',dnl
42 1.1 mrg `compare_string (len_array, (char *) base, len_value, (char *) value) == 0'))dnl
43 1.1 mrg define(len_arg,`, len_array, len_value')dnl
44 1.1 mrg define(base_mult,`len_array')dnl
45 1.1 mrg include(ifindloc0.m4)dnl
46 1.1 mrg
47 1.1 mrg
48 1.1 mrg
49