toplev.c (flag_exceptions): Default to 0.
[gcc.git] / gcc / LANGUAGES
1 Right now there is no documentation for the GCC tree -> rtl interfaces
2 (or more generally the interfaces for adding new languages).
3
4 Such documentation would be of great benefit to the project. Until such
5 time as we can formally start documenting the interface this file will
6 serve as a repository for information on these interface and any incompatable
7 changes we've made.
8
9 Jun 7, 1998:
10 Front-ends must now define lang_init_options. It is safe for this
11 function to do nothing. See c-lang.c.
12
13 Apr 21, 1998:
14 Front ends which link with c-common or other files from the C/C++
15 front-ends may need to handle TI types. Look for references to
16 [unsigned]int_DI_type_node in your front end. If you have references
17 to these variables, you'll need up update the front end.
18
19 To update the front end you must mirror all the code which currently
20 deals with intDI_type_node to also handle intTI_type_node.
21
22
23 Apr 7, 1998:
24 The interface between toplev.c and the language front ends for opening the
25 source file has changed:
26
27 o init_lex() has been renamed to init_parse (char *filename) where filename
28 is the name of the source file.
29 o The code in toplev.c which opened the source file should be moved to
30 the new init_parse function.
31 o toplev.c now calls finish_parse() instead of closing the source file
32 using fclose(). This should now be done in finish_parse, if necessary.
33
34 Apr 1, 1998:
35 Front-ends must now define lang_print_xnode. It is safe for this
36 function to do nothing. See c-lang.c.
37
38 Feb 1, 1998:
39
40 GCC used to store structure sizes & offsets to elements as bitsize
41 quantities. This causes problems because a structure can only be
42 (target memsize / 8) bytes long (this may effect arrays too). This
43 is particularly problematical on machines with small address spaces.
44
45 So:
46
47 All trees that represent sizes in bits should have a TREE_TYPE of
48 bitsizetype (rather than sizetype).
49
50 Accordingly, when such values are computed / initialized, care has to
51 be takes to use / compute the proper type.
52
53 When a size in bits is converted into a size in bytes, which is expressed
54 in trees, care should be taken to change the tree's type again to sizetype.
55
56 We've updated C, C++, Fortran & Objective-C to work with the new
57 scheme. Other languages will need to be updated accordingly.
58 Contact amylaar@cygnus.com for additional information.
59
60 ?? 1997:
61
62 In an effort to decrease cache thrashing and useless loads we've changed the
63 third argument to the DEFTREECODE macro to be a single char. This will
64 effect languages that defined their own tree codes (usually in a .def file).
65
66 Old way:
67
68 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", "d", 0)
69
70 New way:
71
72 DEFTREECODE (CLASS_METHOD_DECL, "class_method_decl", 'd', 0)