Deleted Added
sdiff udiff text old ( 260011 ) new ( 260074 )
full compact
1/* Subroutines shared by all languages that are variants of C.
2 Copyright (C) 1992, 1993, 1994, 1995, 1996, 1997, 1998, 1999, 2000,
3 2001, 2002, 2003, 2004, 2005 Free Software Foundation, Inc.
4
5This file is part of GCC.
6
7GCC is free software; you can redistribute it and/or modify it under
8the terms of the GNU General Public License as published by the Free

--- 240 unchanged lines hidden (view full) ---

249/* Nonzero means give `double' the same size as `float'. */
250
251int flag_short_double;
252
253/* Nonzero means give `wchar_t' the same size as `short'. */
254
255int flag_short_wchar;
256
257/* Nonzero means allow Microsoft extensions without warnings or errors. */
258int flag_ms_extensions;
259
260/* Nonzero means don't recognize the keyword `asm'. */
261
262int flag_no_asm;
263
264/* Nonzero means to treat bitfields as signed unless they say `unsigned'. */

--- 825 unchanged lines hidden (view full) ---

1090{
1091 if (TREE_CODE (c) == INTEGER_CST)
1092 return int_fits_type_p (c, type);
1093
1094 c = convert (type, c);
1095 return !TREE_OVERFLOW (c);
1096}
1097
1098/* Nonzero if vector types T1 and T2 can be converted to each other
1099 without an explicit cast. */
1100int
1101vector_types_convertible_p (tree t1, tree t2)
1102{
1103 return targetm.vector_opaque_p (t1)
1104 || targetm.vector_opaque_p (t2)
1105 || (tree_int_cst_equal (TYPE_SIZE (t1), TYPE_SIZE (t2))
1106 && (TREE_CODE (TREE_TYPE (t1)) != REAL_TYPE ||
1107 TYPE_PRECISION (t1) == TYPE_PRECISION (t2))
1108 && INTEGRAL_TYPE_P (TREE_TYPE (t1))
1109 == INTEGRAL_TYPE_P (TREE_TYPE (t2)));
1110}
1111
1112/* Convert EXPR to TYPE, warning about conversion problems with constants.
1113 Invoke this function on every expression that is converted implicitly,
1114 i.e. because of language rules and not because of an explicit cast. */
1115
1116tree
1117convert_and_check (tree type, tree expr)

--- 5505 unchanged lines hidden ---