ada: Fix wrong resolution for hidden discriminant in predicate
[official-gcc.git] / libgfortran / m4 / findloc2s.m4
bloba0f13f8cadb29d6f69e553a1a1e3fe2ea13c0f3a
1 dnl Support macros for findloc.
2 dnl This file is part of the GNU Fortran Runtime Library (libgfortran)
3 dnl Distributed under the GNU GPL with exception.  See COPYING for details.
4 include(iparm.m4)dnl
5 define(header1,`index_type findloc2_'atype_code` ('atype` * const restrict array,
6                            const 'atype_name` * restrict value, GFC_LOGICAL_4 back,
7                            gfc_charlen_type len_array, gfc_charlen_type len_value);
8 export_proto(findloc2_'atype_code`);
10 index_type
11 findloc2_'atype_code` ('atype` * const restrict array, const 'atype_name` * restrict value,
12                       GFC_LOGICAL_4 back,
13                       gfc_charlen_type len_array, gfc_charlen_type len_value)')dnl
14 dnl
15 define(header2,`index_type mfindloc2_'atype_code` ('atype` * const restrict array,
16                          const 'atype_name` * restrict value,
17                          gfc_array_l1 *const restrict mask, GFC_LOGICAL_4 back,
18                          gfc_charlen_type len_array, gfc_charlen_type len_value);
19 export_proto(mfindloc2_'atype_code`);
21 index_type
22 mfindloc2_'atype_code` ('atype` * const restrict array,
23                            const 'atype_name` * restrict value, gfc_array_l1 *const restrict mask,
24                            GFC_LOGICAL_4 back, gfc_charlen_type len_array,
25                            gfc_charlen_type len_value)')dnl
26 dnl
27 define(header3,`index_type sfindloc2_'atype_code` ('atype` * const restrict array,
28                          const 'atype_name` * restrict value,
29                          GFC_LOGICAL_4 *const restrict mask, GFC_LOGICAL_4 back,
30                          gfc_charlen_type len_array, gfc_charlen_type len_value);
31 export_proto(sfindloc2_'atype_code`);
33 index_type
34 sfindloc2_'atype_code` ('atype` * const restrict array,
35                            const 'atype_name` * restrict value, GFC_LOGICAL_4 *const restrict mask,
36                            GFC_LOGICAL_4 back, gfc_charlen_type len_array,
37                            gfc_charlen_type len_value)')dnl
38 dnl
39 define(comparison,ifelse(atype_kind,4,dnl
40 `compare_string_char4 (len_array, src, len_value, value) == 0',dnl
41 `compare_string (len_array, (char *) src, len_value, (char *) value) == 0'))dnl
42 define(len_arg,`len_array, len_value')dnl
43 define(base_mult,`len_array')dnl
44 include(ifindloc2.m4)dnl