]>
Commit | Line | Data |
---|---|---|
4d7614e9 JM |
1 | 1998-12-08 Jason Merrill <jason@yorick.cygnus.com> |
2 | ||
3 | * decl.c (grokdeclarator): Allow field with same name as class | |
4 | in extern "C". | |
5 | ||
6 | * decl.c (lookup_name_real): Don't limit field lookup to types. | |
7 | * class.c (check_member_decl_is_same_in_complete_scope): No error | |
8 | if icv and x are the same. | |
9 | * lex.c (do_identifier): Tweak error message. | |
10 | ||
ea585788 MM |
11 | 1998-12-10 Mark Mitchell <mark@markmitchell.com> |
12 | ||
13 | * decl.c (start_enum): Use push_obstacks, not | |
14 | end_temporary_allocation. | |
15 | (finish_enum): Call pop_obstacks. | |
16 | ||
513e9d13 MM |
17 | 1998-12-10 Mark Mitchell <mark@markmitchell.com> |
18 | ||
19 | * class.c (instantiate_type): Return error_mark_node rather than | |
20 | junk. | |
21 | ||
104bf76a MM |
22 | 1998-12-09 Mark Mitchell <mark@markmitchell.com> |
23 | ||
24 | * cp-tree.h (most_specialized_instantiation): New function. | |
25 | (print_candidates): Likewise. | |
26 | * class.c (validate_lhs): Remove. | |
27 | (resolve_address_of_overloaded_function): New function, split out | |
28 | and then substantially reworked, from ... | |
29 | (instantiate_type): Use it. Simplify. | |
30 | * cvt.c (convert_to_reference): Complain when caller has indicated | |
31 | that's the right thing to do. Don't crash if instantiate_type | |
32 | fails. | |
33 | * pt.c: Substitute `parameters' for `paramters' throughout. | |
34 | (print_candidates): Don't make it static. | |
35 | (most_specialized_instantiation): Split out from ... | |
36 | (most_specialized): Here. | |
37 | ||
dfb0fb1d DB |
38 | Wed Dec 9 15:33:01 1998 Dave Brolley <brolley@cygnus.com> |
39 | ||
40 | * lex.c (lang_init_options): Initialize cpplib. | |
41 | * decl2.c (parse_options,cpp_initialized): Removed. | |
42 | (lang_decode_option): Move initialization of cpplib to | |
43 | lang_init_options. | |
44 | ||
33964bf4 MM |
45 | 1998-12-09 Mark Mitchell <mark@markmitchell.com> |
46 | ||
47 | * decl.c (grokdeclarator): Update the name of the TEMPLATE_DECL, as | |
48 | well as the TYPE_DECL, when a typedef name is assigned to a | |
49 | previously anonymous type. | |
50 | ||
e6cfb550 AM |
51 | 1998-12-08 Andrew MacLeod <amacleod@cygnus.com> |
52 | ||
53 | * cp/except.c (call_eh_info): use __start_cp_handler instead of | |
54 | __cp_eh_info for getting the eh info pointer. Add table_index to | |
55 | field list. | |
56 | (push_eh_cleanup): Don't increment 'handlers' data field. | |
57 | (process_start_catch_block): Don't set the 'caught' field. | |
58 | ||
59 | * cp/exception.cc (CP_EH_INFO): New macro for getting the | |
60 | exception info pointer within library routines. | |
61 | (__cp_eh_info): Use CP_EH_INFO. | |
62 | (__start_cp_handler): Get exception info pointer, set caught field, | |
63 | and increment the handlers field. Avoids this being done by handlers. | |
64 | (__uncatch_exception, __check_eh_spec): Use CP_EH_INFO macro. | |
65 | (uncaught_exception): Use CP_EH_INFO macro. | |
66 | ||
f454109f JL |
67 | Tue Dec 8 10:48:21 1998 Jeffrey A Law (law@cygnus.com) |
68 | ||
69 | * Make-lang.in (cxxmain.o): Depend on $(DEMANGLE_H), not demangle.h | |
70 | ||
069f7cf2 MS |
71 | Mon Dec 7 17:56:06 1998 Mike Stump <mrs@wrs.com> |
72 | ||
73 | * lex.c (check_newline): Add support for \ as `natural' | |
74 | characters in file names in #line to be consistent with #include | |
75 | handling. We support escape prcessing in the # 1 "..." version of | |
76 | the command. See also support in cp/lex.c. | |
77 | ||
3a5ac29d ZW |
78 | 1998-12-07 Zack Weinberg <zack@rabi.phys.columbia.edu> |
79 | ||
80 | * cp/decl2.c: s/data/opts/ when initializing cpp_reader | |
81 | structure. | |
82 | ||
2642b9bf JM |
83 | 1998-12-07 Jason Merrill <jason@yorick.cygnus.com> |
84 | ||
85 | * decl.c (build_typename_type): Set DECL_ARTIFICIAL. | |
86 | ||
87 | * error.c (dump_simple_decl): Also print namespace context. | |
88 | (dump_function_decl): Likewise. | |
89 | ||
90 | * decl2.c (ambiguous_decl): Don't print old value if it's | |
91 | error_mark_node. | |
92 | ||
93 | * decl.c (lookup_name_real): Fix handling of local types shadowed | |
94 | by a non-type decl. Remove obsolete code. | |
95 | * cp-tree.h (DECL_FUNCTION_SCOPE_P): New macro. | |
96 | ||
97 | * lang-options.h: Add -fpermissive. | |
98 | * decl2.c: Likewise. | |
99 | * cp-tree.h: Add flag_permissive. | |
100 | * decl.c (init_decl_processing): If neither -fpermissive or -pedantic | |
101 | were specified, set flag_pedantic_errors. | |
102 | * call.c (build_over_call): Turn dropped qualifier messages | |
103 | back into pedwarns. | |
104 | * cvt.c (convert_to_reference): Likewise. | |
105 | * typeck.c (convert_for_assignment): Likewise. | |
106 | ||
ee996e9e JM |
107 | 1998-12-05 Jason Merrill <jason@yorick.cygnus.com> |
108 | ||
109 | * decl2.c (coerce_new_type): Use same_type_p. | |
110 | (coerce_delete_type): Likewise. | |
111 | ||
112 | * call.c (check_dtor_name): Return 1, not error_mark_node. | |
113 | ||
f3400fe2 JM |
114 | 1998-12-04 Jason Merrill <jason@yorick.cygnus.com> |
115 | ||
053a61cb JM |
116 | * lex.c (handle_cp_pragma): Disable #pragma interface/implementation |
117 | if MULTIPLE_SYMBOL_SPACES. | |
118 | ||
f3400fe2 JM |
119 | * pt.c (check_template_shadow): New fn. |
120 | * decl2.c (grokfield): Use it. | |
121 | * decl.c (pushdecl): Likewise. | |
122 | (pushdecl_class_level): Likewise. | |
123 | (start_method): Likewise. | |
124 | (xref_tag): Don't try to use 't' if we're defining. | |
125 | ||
126 | * call.c (check_dtor_name): Just return an error_mark_node. | |
127 | * pt.c (lookup_template_class): Complain about using non-template here. | |
128 | * parse.y (apparent_template_type): Not here. | |
129 | ||
130 | * pt.c (check_explicit_specialization): Complain about specialization | |
131 | with C linkage. | |
132 | ||
133 | * lang-options.h: Add -f{no-,}implicit-inline-templates. | |
134 | ||
135 | * pt.c (convert_nontype_argument): Don't assume that any integer | |
136 | argument is intended to be a constant-expression. | |
137 | ||
2036a15c MM |
138 | 1998-12-03 Mark Mitchell <mark@markmitchell.com> |
139 | ||
140 | * class.c (handle_using_decl): Fix comment. Don't lookup | |
141 | constructors in base classes. | |
142 | (validate_lhs): Fix typo in comment. | |
143 | * search.c (lookup_field_1): Don't return a USING_DECL. | |
144 | ||
145 | * cp-tree.h (DECL_ACCESS): Improve documentation. | |
146 | ||
147 | * decl.c (expand_static_init): Don't set the initialization-done | |
148 | flag until the initialization is done. | |
149 | ||
066b4a1c MM |
150 | 1998-12-02 Mark Mitchell <mark@markmitchell.com> |
151 | ||
152 | * decl2.c (validate_nonmember_using_decl): Complain about using | |
153 | declarations for class members. | |
154 | ||
9f3d9e46 JM |
155 | 1998-11-29 Jason Merrill <jason@yorick.cygnus.com> |
156 | ||
7e2067ca JM |
157 | * typeck2.c (process_init_constructor): Use same_type_p. |
158 | ||
159 | * decl.c (check_tag_decl): Don't warn about null decl inside a | |
160 | class. | |
161 | ||
9f3d9e46 JM |
162 | * pt.c (unify, case OFFSET_TYPE): Pass down 'strict' rather than |
163 | UNIFY_ALLOW_NONE. | |
164 | (convert_nontype_argument): Use TYPE_PTRMEMFUNC_FN_TYPE. | |
165 | (resolve_overloaded_unification): Strip baselinks. | |
166 | ||
9d483bc4 KG |
167 | Fri Nov 27 13:07:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu> |
168 | ||
169 | * g++spec.c: Don't prototype xmalloc. | |
170 | ||
08b24bda JM |
171 | 1998-11-25 Jason Merrill <jason@yorick.cygnus.com> |
172 | ||
173 | * except.c (expand_throw): Use TYPE_PTR_P to check for pointers. | |
174 | ||
175 | * decl.c (check_tag_decl): Do complain about null friend decl at | |
176 | file scope. | |
177 | ||
32201ce4 AS |
178 | 1998-11-25 Andreas Schwab <schwab@issan.cs.uni-dortmund.de> |
179 | ||
180 | * lex.c (make_lang_type): Clear the whole struct lang_type, not | |
181 | only the first multiple of sizeof (int). | |
182 | ||
83f660b7 JM |
183 | 1998-11-24 Jason Merrill <jason@yorick.cygnus.com> |
184 | ||
84e6233f JM |
185 | * decl.c (start_decl): An explicit specialization of a static data |
186 | member is only a definition if it has an initializer. | |
187 | ||
c37dc68e JM |
188 | * except.c (expand_throw): Use cp_finish_decl for the throw temp. |
189 | * cvt.c (build_up_reference): Pass DIRECT_BIND down into | |
190 | cp_finish_decl. | |
191 | * init.c (expand_default_init): Check for DIRECT_BIND instead of | |
192 | DECL_ARTIFICIAL. | |
193 | ||
194 | * call.c (build_over_call): Use build_decl. | |
195 | ||
196 | * except.c (expand_throw): Just use convert, not | |
197 | build_reinterpret_cast. | |
198 | ||
83f660b7 JM |
199 | * lex.c (handle_generic_pragma): Use token_buffer. |
200 | ||
201 | * decl.c (check_tag_decl): Don't complain about null friend decl. | |
202 | ||
203 | 1998-11-24 Dave Pitts <dpitts@cozx.com> | |
204 | ||
205 | * Make-lang.in (DEMANGLER_PROG): Move the output argumnts to the | |
206 | first position. | |
207 | * lex.c (check_newline): Use ISALPHA. | |
208 | (readescape): Use ISGRAPH. | |
209 | (yyerror): Use ISGRAPH. | |
210 | ||
211 | 1998-11-24 Nathan Sidwell <nathan@acm.org> | |
212 | ||
213 | * search.c (get_abstract_virtuals): Do not use initial | |
214 | CLASSTYPE_ABSTRACT_VIRTUALS. | |
215 | * typeck2.c (abstract_virtuals_error): Show location of abstract | |
216 | declaration. | |
217 | * call.c (build_new_method_call): Use | |
218 | CLASSTYPE_ABSTRACT_VIRTUAL, rather than recalculate. | |
219 | * class.c (finish_struct_bits): Don't bother working out whether | |
220 | get_abstract_virtuals will do anything, just do it. | |
221 | ||
333a9f0a JM |
222 | 1998-11-24 Graham <grahams@rcp.co.uk> |
223 | ||
224 | * typeck.c (build_component_ref): Remove unused statement. | |
225 | ||
37b6eb34 JM |
226 | 1998-11-24 Jason Merrill <jason@yorick.cygnus.com> |
227 | ||
333a9f0a JM |
228 | * class.c (add_method): Catch invalid overloads. |
229 | ||
37b6eb34 JM |
230 | * class.c (add_method): Build up OVERLOADs properly for conversion ops. |
231 | * search.c (lookup_conversions): Handle getting real OVERLOADs. | |
232 | (add_conversions): Likewise. Revert last change. | |
233 | * call.c (add_conv_candidate): Pass totype to add_candidate instead | |
234 | of fn. Don't add a new candidate if the last one was for the same | |
235 | type. | |
236 | (print_z_candidates): Handle getting a type as a function. | |
237 | (joust): If we got two conversion candidates to the same type, | |
238 | just pick one. | |
239 | (build_object_call): Lose 'templates'. | |
240 | (build_user_type_conversion_1): Handle getting real OVERLOADs. | |
241 | ||
e6267549 JM |
242 | 1998-11-23 Jason Merrill <jason@yorick.cygnus.com> |
243 | ||
244 | * typeck2.c (process_init_constructor): If there are elements | |
245 | that don't have initializers and they need to have constructors | |
246 | run, supply them with initializers. | |
247 | ||
248 | * class.c (finish_struct_1): A class with a 0-width bitfield is | |
249 | still empty. | |
250 | ||
6bdb985f MM |
251 | 1998-11-23 Mark Mitchell <mark@markmitchell.com> |
252 | ||
253 | * pt.c (instantiate_class_template): Don't try to figure out what | |
254 | specialization to use for a partial instantiation. Correct | |
255 | typos in a couple of comments. Avoid calling uses_template_parms | |
256 | multiple times. | |
257 | ||
388022e0 BK |
258 | 1998-11-23 Benjamin Kosnik <bkoz@cygnus.com> |
259 | ||
260 | * method.c (process_overload_item): Add call to | |
261 | build_mangled_C9x_name for intTI_type_nodes. | |
262 | (build_mangled_C9x_name): Add prototype, define. | |
263 | * decl.c (init_decl_processing): Add names for | |
264 | TImode_type_node. | |
265 | ||
72a93143 JM |
266 | 1998-11-23 Jason Merrill <jason@yorick.cygnus.com> |
267 | ||
57cfc5dd JM |
268 | * parse.y (named_class_head): Update CLASSTYPE_DECLARED_CLASS. |
269 | ||
72a93143 JM |
270 | * class.c (finish_struct_1): Set things up for 0-width bitfields |
271 | like we do for others. | |
272 | ||
273 | * decl.c (check_tag_decl): New fn. | |
274 | (shadow_tag): Split out from here. | |
275 | * decl2.c (grok_x_components): Call it. | |
276 | ||
094fe153 JM |
277 | 1998-11-22 Jason Merrill <jason@yorick.cygnus.com> |
278 | ||
ff0cf464 JM |
279 | * decl.c: Lose warn_about_return_type. |
280 | (grokdeclarator): Always complain about implicit int, except for | |
281 | `main () { ... }'. | |
282 | ||
094fe153 JM |
283 | * decl.c (tag_name): New fn. |
284 | (xref_tag): Complain about using typedef-name after class-key. | |
285 | ||
286 | * init.c (expand_vec_init): Also keep going if from_array. | |
287 | ||
288 | * tree.c (is_overloaded_fn): Also handle the output of | |
289 | build_offset_ref. | |
290 | ||
291 | * decl.c (grokdeclarator): Use constructor_name when comparing | |
292 | field name against enclosing class. | |
293 | * class.c (finish_struct_anon): Likewise. | |
294 | ||
536333d4 MM |
295 | 1998-11-22 Mark Mitchell <mark@markmitchell.com> |
296 | ||
297 | * decl.c (poplevel): Remove code to handle KEEP == 2. | |
298 | (finish_function): Don't confuse BLOCK-order when | |
299 | processing a destructor. | |
300 | ||
42f989ff JM |
301 | 1998-11-21 Jason Merrill <jason@yorick.cygnus.com> |
302 | ||
303 | * decl.c (require_complete_types_for_parms): Call layout_decl | |
304 | after we've completed the type. | |
305 | ||
75fbcb7d ML |
306 |