summaryrefslogtreecommitdiff
path: root/gcc
diff options
context:
space:
mode:
authorFeng Wang <fengwang@gcc.gnu.org>2005-07-07 07:54:40 +0000
committerFeng Wang <fengwang@gcc.gnu.org>2005-07-07 07:54:40 +0000
commit378f73afe05d3dbce185f9ab74f0c24e53f4b218 (patch)
tree34841290399c5a9c4f2f059ef7395d3b23360a9c /gcc
parentf5d21c4ca15a9423443ce33efb3c9b8ebcde051e (diff)
downloadgcc-378f73afe05d3dbce185f9ab74f0c24e53f4b218.tar.gz
re PR fortran/16531 ([4.0 only, gfortran] Hollerith Data not supported)
2005-07-07 Feng Wang <fengwang@nudt.edu.cn> PR fortran/16531 PR fortran/15966 PR fortran/18781 * arith.c (gfc_hollerith2int, gfc_hollerith2real, gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical): New functions. (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist. * arith.h (gfc_hollerith2int, gfc_hollerith2real, gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical): Add prototypes. * expr.c (free_expr0): Free memery allocated for Hollerith constant. (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith. (gfc_check_assign): Enable conversion from Hollerith to other. * gfortran.h (bt): Add BT_HOLLERITH. (gfc_expr): Add from_H flag. * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH. (add_conversions): Add conversions from Hollerith constant to other. (do_simplify): Don't simplify if Hollerith constant arguments exist. * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU. * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH. (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH. * primary.c (match_hollerith_constant): New function. (gfc_match_literal_constant): Add match Hollerith before Integer. * simplify.c (gfc_convert_constant): Add conversion from Hollerith to other. * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to convert Hollerith constant to tree. * trans-io.c (gfc_convert_array_to_string): Get array's address and length to set string expr. (set_string): Deal with array assigned Hollerith constant and character array. * gfortran.texi: Document Hollerith constants as extention support. 2005-07-07 Feng Wang <fengwang@nudt.edu.cn> PR fortran/16531 PR fortran/15966 PR fortran/18781 * gfortran.dg/hollerith.f90: New. * gfortran.dg/hollerith2.f90: New. * gfortran.dg/hollerith3.f90: New. * gfortran.dg/hollerith4.f90: New. * gfortran.dg/hollerith_f95.f90: New. * gfortran.dg/hollerith_legacy.f90: New. * gfortran.dg/g77/cpp4.F: New. Port from g77. 2005-07-07 Feng Wang <fengwang@nudt.edu.cn> PR fortran/16531 * io/transfer.c (formatted_transfer): Enable FMT_A on other types to support Hollerith constants. From-SVN: r101687
Diffstat (limited to 'gcc')
-rw-r--r--gcc/fortran/ChangeLog35
1 files changed, 35 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog
index 8a33912fc54..d897396c42b 100644
--- a/gcc/fortran/ChangeLog
+++ b/gcc/fortran/ChangeLog
@@ -1,5 +1,40 @@
2005-07-07 Feng Wang <fengwang@nudt.edu.cn>
+ PR fortran/16531
+ PR fortran/15966
+ PR fortran/18781
+ * arith.c (gfc_hollerith2int, gfc_hollerith2real,
+ gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
+ New functions.
+ (eval_intrinsic): Don't evaluate if Hollerith constant arguments exist.
+ * arith.h (gfc_hollerith2int, gfc_hollerith2real,
+ gfc_hollerith2complex, gfc_hollerith2character, gfc_hollerith2logical):
+ Add prototypes.
+ * expr.c (free_expr0): Free memery allocated for Hollerith constant.
+ (gfc_copy_expr): Allocate and copy string if Expr is from Hollerith.
+ (gfc_check_assign): Enable conversion from Hollerith to other.
+ * gfortran.h (bt): Add BT_HOLLERITH.
+ (gfc_expr): Add from_H flag.
+ * intrinsic.c (gfc_type_letter): Return 'h' for BT_HOLLERITH.
+ (add_conversions): Add conversions from Hollerith constant to other.
+ (do_simplify): Don't simplify if Hollerith constant arguments exist.
+ * io.c (resolve_tag): Enable array in FORMAT tag under GFC_STD_GNU.
+ * misc.c (gfc_basetype_name): Return "HOLLERITH" for BT_HOLLERITH.
+ (gfc_type_name): Print "HOLLERITH" for BT_HOLLERITH.
+ * primary.c (match_hollerith_constant): New function.
+ (gfc_match_literal_constant): Add match Hollerith before Integer.
+ * simplify.c (gfc_convert_constant): Add conversion from Hollerith
+ to other.
+ * trans-const.c (gfc_conv_constant_to_tree): Use VIEW_CONVERT_EXPR to
+ convert Hollerith constant to tree.
+ * trans-io.c (gfc_convert_array_to_string): Get array's address and
+ length to set string expr.
+ (set_string): Deal with array assigned Hollerith constant and character
+ array.
+ * gfortran.texi: Document Hollerith constants as extention support.
+
+2005-07-07 Feng Wang <fengwang@nudt.edu.cn>
+
PR fortran/22327
* trans-array.c (gfc_trans_array_constructor_value): Fix index of data.