Home | History | Annotate | Line # | Download | only in m4
      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