{"inner block not inside outer block", 0, 0};
struct complaint blockvector_complaint =
- {"block at 0x%x out of order", 0, 0};
+ {"block at 0x%lx out of order", 0, 0};
\f
/* maintain the lists of symbols and blocks */
> BLOCK_START(BLOCKVECTOR_BLOCK (blockvector, i)))
{
complain (&blockvector_complaint,
- BLOCK_START(BLOCKVECTOR_BLOCK (blockvector, i)));
+ (unsigned long) BLOCK_START(BLOCKVECTOR_BLOCK (blockvector, i)));
}
}
}
directives which specify a file name ending in .C.
So if the filename of this subfile ends in .C, then change the language
- of any pending subfiles from C to C++. .cc is also accepted, even
- though I don't think cfront allows it. */
+ of any pending subfiles from C to C++. We also accept any other C++
+ suffixes accepted by deduce_language_from_filename (in particular,
+ some people use .cxx with cfront). */
if (subfile->name)
{
- char *p;
struct subfile *s;
- p = strrchr (subfile->name, '.');
- if (p != NULL
- && (p[1] == 'C' && p[2] == '\0'
- || p[1] == 'c' && p[2] == 'c' && p[3] == '\0'))
+ if (deduce_language_from_filename (subfile->name) == language_cplus)
for (s = subfiles; s != NULL; s = s->next)
if (s->language == language_c)
s->language = language_cplus;
struct objfile *objfile;
int section;
{
- register struct symtab *symtab;
+ register struct symtab *symtab = NULL;
register struct blockvector *blockvector;
register struct subfile *subfile;
register struct context_stack *cstk;
for (subfile = subfiles; subfile; subfile = nextsub)
{
- int linetablesize;
+ int linetablesize = 0;
/* If we have blocks of symbols, make a symtab.
Otherwise, just ignore this file and any line number info in it. */
symtab = NULL;