]> gcc.gnu.org Git - gcc.git/blame - gcc/cp/ChangeLog
Makefile.in (DEMANGLE_H): Change location to shared demangle.h.
[gcc.git] / gcc / cp / ChangeLog
CommitLineData
069f7cf2
MS
1Mon Dec 7 17:56:06 1998 Mike Stump <mrs@wrs.com>
2
3 * lex.c (check_newline): Add support for \ as `natural'
4 characters in file names in #line to be consistent with #include
5 handling. We support escape prcessing in the # 1 "..." version of
6 the command. See also support in cp/lex.c.
7
3a5ac29d
ZW
81998-12-07 Zack Weinberg <zack@rabi.phys.columbia.edu>
9
10 * cp/decl2.c: s/data/opts/ when initializing cpp_reader
11 structure.
12
2642b9bf
JM
131998-12-07 Jason Merrill <jason@yorick.cygnus.com>
14
15 * decl.c (build_typename_type): Set DECL_ARTIFICIAL.
16
17 * error.c (dump_simple_decl): Also print namespace context.
18 (dump_function_decl): Likewise.
19
20 * decl2.c (ambiguous_decl): Don't print old value if it's
21 error_mark_node.
22
23 * decl.c (lookup_name_real): Fix handling of local types shadowed
24 by a non-type decl. Remove obsolete code.
25 * cp-tree.h (DECL_FUNCTION_SCOPE_P): New macro.
26
27 * lang-options.h: Add -fpermissive.
28 * decl2.c: Likewise.
29 * cp-tree.h: Add flag_permissive.
30 * decl.c (init_decl_processing): If neither -fpermissive or -pedantic
31 were specified, set flag_pedantic_errors.
32 * call.c (build_over_call): Turn dropped qualifier messages
33 back into pedwarns.
34 * cvt.c (convert_to_reference): Likewise.
35 * typeck.c (convert_for_assignment): Likewise.
36
ee996e9e
JM
371998-12-05 Jason Merrill <jason@yorick.cygnus.com>
38
39 * decl2.c (coerce_new_type): Use same_type_p.
40 (coerce_delete_type): Likewise.
41
42 * call.c (check_dtor_name): Return 1, not error_mark_node.
43
f3400fe2
JM
441998-12-04 Jason Merrill <jason@yorick.cygnus.com>
45
053a61cb
JM
46 * lex.c (handle_cp_pragma): Disable #pragma interface/implementation
47 if MULTIPLE_SYMBOL_SPACES.
48
f3400fe2
JM
49 * pt.c (check_template_shadow): New fn.
50 * decl2.c (grokfield): Use it.
51 * decl.c (pushdecl): Likewise.
52 (pushdecl_class_level): Likewise.
53 (start_method): Likewise.
54 (xref_tag): Don't try to use 't' if we're defining.
55
56 * call.c (check_dtor_name): Just return an error_mark_node.
57 * pt.c (lookup_template_class): Complain about using non-template here.
58 * parse.y (apparent_template_type): Not here.
59
60 * pt.c (check_explicit_specialization): Complain about specialization
61 with C linkage.
62
63 * lang-options.h: Add -f{no-,}implicit-inline-templates.
64
65 * pt.c (convert_nontype_argument): Don't assume that any integer
66 argument is intended to be a constant-expression.
67
2036a15c
MM
681998-12-03 Mark Mitchell <mark@markmitchell.com>
69
70 * class.c (handle_using_decl): Fix comment. Don't lookup
71 constructors in base classes.
72 (validate_lhs): Fix typo in comment.
73 * search.c (lookup_field_1): Don't return a USING_DECL.
74
75 * cp-tree.h (DECL_ACCESS): Improve documentation.
76
77 * decl.c (expand_static_init): Don't set the initialization-done
78 flag until the initialization is done.
79
066b4a1c
MM
801998-12-02 Mark Mitchell <mark@markmitchell.com>
81
82 * decl2.c (validate_nonmember_using_decl): Complain about using
83 declarations for class members.
84
9f3d9e46
JM
851998-11-29 Jason Merrill <jason@yorick.cygnus.com>
86
7e2067ca
JM
87 * typeck2.c (process_init_constructor): Use same_type_p.
88
89 * decl.c (check_tag_decl): Don't warn about null decl inside a
90 class.
91
9f3d9e46
JM
92 * pt.c (unify, case OFFSET_TYPE): Pass down 'strict' rather than
93 UNIFY_ALLOW_NONE.
94 (convert_nontype_argument): Use TYPE_PTRMEMFUNC_FN_TYPE.
95 (resolve_overloaded_unification): Strip baselinks.
96
9d483bc4
KG
97Fri Nov 27 13:07:23 1998 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
98
99 * g++spec.c: Don't prototype xmalloc.
100
08b24bda
JM
1011998-11-25 Jason Merrill <jason@yorick.cygnus.com>
102
103 * except.c (expand_throw): Use TYPE_PTR_P to check for pointers.
104
105 * decl.c (check_tag_decl): Do complain about null friend decl at
106 file scope.
107
32201ce4
AS
1081998-11-25 Andreas Schwab <schwab@issan.cs.uni-dortmund.de>
109
110 * lex.c (make_lang_type): Clear the whole struct lang_type, not
111 only the first multiple of sizeof (int).
112
83f660b7
JM
1131998-11-24 Jason Merrill <jason@yorick.cygnus.com>
114
84e6233f
JM
115 * decl.c (start_decl): An explicit specialization of a static data
116 member is only a definition if it has an initializer.
117
c37dc68e
JM
118 * except.c (expand_throw): Use cp_finish_decl for the throw temp.
119 * cvt.c (build_up_reference): Pass DIRECT_BIND down into
120 cp_finish_decl.
121 * init.c (expand_default_init): Check for DIRECT_BIND instead of
122 DECL_ARTIFICIAL.
123
124 * call.c (build_over_call): Use build_decl.
125
126 * except.c (expand_throw): Just use convert, not
127 build_reinterpret_cast.
128
83f660b7
JM
129 * lex.c (handle_generic_pragma): Use token_buffer.
130
131 * decl.c (check_tag_decl): Don't complain about null friend decl.
132
1331998-11-24 Dave Pitts <dpitts@cozx.com>
134
135 * Make-lang.in (DEMANGLER_PROG): Move the output argumnts to the
136 first position.
137 * lex.c (check_newline): Use ISALPHA.
138 (readescape): Use ISGRAPH.
139 (yyerror): Use ISGRAPH.
140
1411998-11-24 Nathan Sidwell <nathan@acm.org>
142
143 * search.c (get_abstract_virtuals): Do not use initial
144 CLASSTYPE_ABSTRACT_VIRTUALS.
145 * typeck2.c (abstract_virtuals_error): Show location of abstract
146 declaration.
147 * call.c (build_new_method_call): Use
148 CLASSTYPE_ABSTRACT_VIRTUAL, rather than recalculate.
149 * class.c (finish_struct_bits): Don't bother working out whether
150 get_abstract_virtuals will do anything, just do it.
151
333a9f0a
JM
1521998-11-24 Graham <grahams@rcp.co.uk>
153
154 * typeck.c (build_component_ref): Remove unused statement.
155
37b6eb34
JM
1561998-11-24 Jason Merrill <jason@yorick.cygnus.com>
157
333a9f0a
JM
158 * class.c (add_method): Catch invalid overloads.
159
37b6eb34
JM
160 * class.c (add_method): Build up OVERLOADs properly for conversion ops.
161 * search.c (lookup_conversions): Handle getting real OVERLOADs.
162 (add_conversions): Likewise. Revert last change.
163 * call.c (add_conv_candidate): Pass totype to add_candidate instead
164 of fn. Don't add a new candidate if the last one was for the same
165 type.
166 (print_z_candidates): Handle getting a type as a function.
167 (joust): If we got two conversion candidates to the same type,
168 just pick one.
169 (build_object_call): Lose 'templates'.
170 (build_user_type_conversion_1): Handle getting real OVERLOADs.
171
e6267549
JM
1721998-11-23 Jason Merrill <jason@yorick.cygnus.com>
173
174 * typeck2.c (process_init_constructor): If there are elements
175 that don't have initializers and they need to have constructors
176 run, supply them with initializers.
177
178 * class.c (finish_struct_1): A class with a 0-width bitfield is
179 still empty.
180
6bdb985f
MM
1811998-11-23 Mark Mitchell <mark@markmitchell.com>
182
183 * pt.c (instantiate_class_template): Don't try to figure out what
184 specialization to use for a partial instantiation. Correct
185 typos in a couple of comments. Avoid calling uses_template_parms
186 multiple times.
187
388022e0
BK
1881998-11-23 Benjamin Kosnik <bkoz@cygnus.com>
189
190 * method.c (process_overload_item): Add call to
191 build_mangled_C9x_name for intTI_type_nodes.
192 (build_mangled_C9x_name): Add prototype, define.
193 * decl.c (init_decl_processing): Add names for
194 TImode_type_node.
195
72a93143
JM
1961998-11-23 Jason Merrill <jason@yorick.cygnus.com>
197
57cfc5dd
JM
198 * parse.y (named_class_head): Update CLASSTYPE_DECLARED_CLASS.
199
72a93143
JM
200 * class.c (finish_struct_1): Set things up for 0-width bitfields
201 like we do for others.
202
203 * decl.c (check_tag_decl): New fn.
204 (shadow_tag): Split out from here.
205 * decl2.c (grok_x_components): Call it.
206
094fe153
JM
2071998-11-22 Jason Merrill <jason@yorick.cygnus.com>
208
ff0cf464
JM
209 * decl.c: Lose warn_about_return_type.
210 (grokdeclarator): Always complain about implicit int, except for
211 `main () { ... }'.
212
094fe153
JM
213 * decl.c (tag_name): New fn.
214 (xref_tag): Complain about using typedef-name after class-key.
215
216 * init.c (expand_vec_init): Also keep going if from_array.
217
218 * tree.c (is_overloaded_fn): Also handle the output of
219 build_offset_ref.
220
221 * decl.c (grokdeclarator): Use constructor_name when comparing
222 field name against enclosing class.
223 * class.c (finish_struct_anon): Likewise.
224
536333d4
MM
2251998-11-22 Mark Mitchell <mark@markmitchell.com>
226
227 * decl.c (poplevel): Remove code to handle KEEP == 2.
228 (finish_function): Don't confuse BLOCK-order when
229 processing a destructor.
230
42f989ff
JM
2311998-11-21 Jason Merrill <jason@yorick.cygnus.com>
232
233 * decl.c (require_complete_types_for_parms): Call layout_decl
234 after we've completed the type.
235
75fbcb7d
ML
236