diff options
author | Thomas Koenig <tkoenig@gcc.gnu.org> | 2017-12-03 20:14:05 +0000 |
---|---|---|
committer | Thomas Koenig <tkoenig@gcc.gnu.org> | 2017-12-03 20:14:05 +0000 |
commit | 0ac7425470a37554aa4dd017afb5f90b7328c9b0 (patch) | |
tree | b31908b5003acf7307242caf1ae5698a3d2a3fb9 /libgfortran/Makefile.am | |
parent | af5ad1e2e56a91db15c1f714f5f513ad54a07eeb (diff) |
re PR fortran/36313 ([F03] {MIN,MAX}{LOC,VAL} should accept character arguments)
2017-12-03 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/36313
* check.c (gfc_check_minval_maxval): Use
int_orLreal_or_char_check_f2003 for array argument.
* iresolve.c (gfc_resolve_maxval): Insert number in
function name for character arguments.
(gfc_resolve_minval): Likewise.
* trans-intrinsic.c (gfc_conv_intrinsic_minmaxloc):
Fix comment.
(gfc_conv_intrinsic_minmaxval): Resort arguments and call library
function if dealing with a character function.
2017-12-03 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/36313
* Makefile.am: Add new files for character-valued
maxval and minval.
* Makefile.in: Regenerated.
* gfortran.map: Add new functions.
* m4/iforeach-s2.m4: New file.
* m4/ifunction-s2.m4: New file.
* m4/iparm.m4: Add intitval for minval and maxval.
* m4/maxval0s.m4: New file.
* m4/maxval1s.m4: New file.
* m4/minval0s.m4: New file.
* m4/minval1s.m4: New file.
* generated/maxval0_s1.c: New file.
* generated/maxval0_s4.c: New file.
* generated/maxval1_s1.c: New file.
* generated/maxval1_s4.c: New file.
* generated/minval0_s1.c: New file.
* generated/minval0_s4.c: New file.
* generated/minval1_s1.c: New file.
* generated/minval1_s4.c: New file.
2017-12-03 Thomas Koenig <tkoenig@gcc.gnu.org>
PR fortran/36313
* gfortran.dg/maxval_char_1.f90: New test.
* gfortran.dg/maxval_char_2.f90: New test.
* gfortran.dg/maxval_char_3.f90: New test.
* gfortran.dg/maxval_char_4.f90: New test.
* gfortran.dg/minval_char_1.f90: New test.
* gfortran.dg/minval_char_2.f90: New test.
* gfortran.dg/minval_char_3.f90: New test.
* gfortran.dg/minval_char_4.f90: New test.
From-SVN: r255367
Diffstat (limited to 'libgfortran/Makefile.am')
-rw-r--r-- | libgfortran/Makefile.am | 33 |
1 files changed, 32 insertions, 1 deletions
diff --git a/libgfortran/Makefile.am b/libgfortran/Makefile.am index b88d62b6857..bf9dce40593 100644 --- a/libgfortran/Makefile.am +++ b/libgfortran/Makefile.am @@ -357,6 +357,14 @@ $(srcdir)/generated/maxval_r8.c \ $(srcdir)/generated/maxval_r10.c \ $(srcdir)/generated/maxval_r16.c +i_maxval0s_c=\ +$(srcdir)/generated/maxval0_s1.c \ +$(srcdir)/generated/maxval0_s4.c + +i_maxval1s_c=\ +$(srcdir)/generated/maxval1_s1.c \ +$(srcdir)/generated/maxval1_s4.c + i_minloc0_c= \ $(srcdir)/generated/minloc0_4_i1.c \ $(srcdir)/generated/minloc0_8_i1.c \ @@ -450,6 +458,14 @@ $(srcdir)/generated/minval_r8.c \ $(srcdir)/generated/minval_r10.c \ $(srcdir)/generated/minval_r16.c +i_minval0s_c=\ +$(srcdir)/generated/minval0_s1.c \ +$(srcdir)/generated/minval0_s4.c + +i_minval1s_c=\ +$(srcdir)/generated/minval1_s1.c \ +$(srcdir)/generated/minval1_s4.c + i_norm2_c= \ $(srcdir)/generated/norm2_r4.c \ $(srcdir)/generated/norm2_r8.c \ @@ -748,7 +764,8 @@ gfor_built_src= $(i_all_c) $(i_any_c) $(i_count_c) $(i_maxloc0_c) \ $(i_spread_c) selected_int_kind.inc selected_real_kind.inc kinds.h \ $(i_cshift0_c) kinds.inc c99_protos.inc fpu-target.h fpu-target.inc \ $(i_cshift1a_c) $(i_maxloc0s_c) $(i_minloc0s_c) $(i_maxloc1s_c) \ - $(i_minloc1s_c) $(i_maxloc2s_c) $(i_minloc2s_c) + $(i_minloc1s_c) $(i_maxloc2s_c) $(i_minloc2s_c) $(i_maxvals_c) \ + $(i_maxval0s_c) $(i_minval0s_c) $(i_maxval1s_c) $(i_minval1s_c) # Machine generated specifics gfor_built_specific_src= \ @@ -973,6 +990,8 @@ I_M4_DEPS1=$(I_M4_DEPS) m4/ifunction.m4 I_M4_DEPS2=$(I_M4_DEPS) m4/ifunction_logical.m4 I_M4_DEPS3=$(I_M4_DEPS) m4/iforeach-s.m4 I_M4_DEPS4=$(I_M4_DEPS) m4/ifunction-s.m4 +I_M4_DEPS5=$(I_M4_DEPS) m4/iforeach-s2.m4 +I_M4_DEPS6=$(I_M4_DEPS) m4/ifunction-s2.m4 kinds.h: $(srcdir)/mk-kinds-h.sh $(SHELL) $(srcdir)/mk-kinds-h.sh '$(FCCOMPILE)' > $@ || rm $@ @@ -1039,6 +1058,12 @@ $(i_maxloc2s_c): m4/maxloc2s.m4 $(I_M4_DEPS) $(i_maxval_c): m4/maxval.m4 $(I_M4_DEPS1) $(M4) -Dfile=$@ -I$(srcdir)/m4 maxval.m4 > $@ +$(i_maxval0s_c): m4/maxval0s.m4 $(I_M4_DEPS5) + $(M4) -Dfile=$@ -I$(srcdir)/m4 maxval0s.m4 > $@ + +$(i_maxval1s_c): m4/maxval1s.m4 $(I_M4_DEPS6) + $(M4) -Dfile=$@ -I$(srcdir)/m4 maxval1s.m4 > $@ + $(i_minloc0_c): m4/minloc0.m4 $(I_M4_DEPS0) $(M4) -Dfile=$@ -I$(srcdir)/m4 minloc0.m4 > $@ @@ -1057,6 +1082,12 @@ $(i_minloc2s_c): m4/minloc2s.m4 $(I_M4_DEPS) $(i_minval_c): m4/minval.m4 $(I_M4_DEPS1) $(M4) -Dfile=$@ -I$(srcdir)/m4 minval.m4 > $@ +$(i_minval0s_c): m4/minval0s.m4 $(I_M4_DEPS5) + $(M4) -Dfile=$@ -I$(srcdir)/m4 minval0s.m4 > $@ + +$(i_minval1s_c): m4/minval1s.m4 $(I_M4_DEPS6) + $(M4) -Dfile=$@ -I$(srcdir)/m4 minval1s.m4 > $@ + $(i_product_c): m4/product.m4 $(I_M4_DEPS1) $(M4) -Dfile=$@ -I$(srcdir)/m4 product.m4 > $@ |