Back to home page

EIC code displayed by LXR

 
 

    


File indexing completed on 2025-02-21 10:05:30

0001 /*
0002  *  qp_convert.h  --
0003  *  Types and routines related to type promotion and conversion
0004  *
0005  *  Original: 25-Nov-1994 13:59
0006  *
0007  *  Author:   Maarten Ballintijn <Maarten.Ballintijn@cern.ch>
0008  *
0009  *  $Id$
0010  *
0011  *  $Log$
0012  *  Revision 1.3  1996/04/23 18:38:12  maartenb
0013  *  - Add RCS keywords
0014  *
0015  *
0016  */
0017 
0018 #ifndef CERN_CONVERT
0019 #define CERN_CONVERT
0020 
0021 
0022 typedef enum _conv_type_ {  /* forward declaration */
0023     NOCONV,
0024     B_2_U, B_2_LU, B_2_I, B_2_LI, B_2_F, B_2_LF,
0025     U_2_B, U_2_LU, U_2_I, U_2_LI, U_2_F, U_2_LF,
0026     LU_2_B, LU_2_U, LU_2_I, LU_2_LI, LU_2_F, LU_2_LF,
0027     I_2_B, I_2_U, I_2_LU, I_2_LI, I_2_F, I_2_LF,
0028     LI_2_B, LI_2_U, LI_2_LU, LI_2_I, LI_2_F, LI_2_LF,
0029     F_2_B, F_2_U, F_2_LU, F_2_I, F_2_LI, F_2_LF,
0030     LF_2_B, LF_2_U, LF_2_LU, LF_2_I, LF_2_LI, LF_2_F,
0031     C_LAST
0032 } ConvType;
0033 
0034 
0035 #include    "qp_tree.h"
0036 
0037 
0038 #define IS_NUMERIC( d ) \
0039         ( (d) >= D_UINT && (d) <= D_DOUBLE )
0040 
0041 
0042 char *
0043 convtype_to_str( const ConvType c );
0044 
0045 void
0046 resolve_type_promotion( pTree *tree1, pTree *tree2,
0047             DataType *result, int * r );
0048 
0049 ConvType
0050 convert_type( DataType old, DataType new );
0051 
0052 #endif  /*  CERN_CONVERT    */