• fengwang's avatar
    For the 60th anniversary of Chinese people��s Anti-Japan war victory. · 169f9d09
    fengwang authored
    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.
    
    
    git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@101688 138bc75d-0d04-0410-961f-82ee72b054a4
    169f9d09
primary.c 45.9 KB