expr.c (pop_type_0): Call `concat' rather than building the string manually.
* expr.c (pop_type_0): Call `concat' rather than building the string manually. (pop_type): Add format specifier in call to `error'. * parse.y (patch_method_invocation): Avoid casting away const-ness. From-SVN: r40940
This commit is contained in:
parent
3fdefbcc63
commit
80122075e3
@ -1,3 +1,12 @@
|
||||
2001-03-28 Kaveh R. Ghazi <ghazi@caip.rutgers.edu>
|
||||
|
||||
* expr.c (pop_type_0): Call `concat' rather than building the
|
||||
string manually.
|
||||
(pop_type): Add format specifier in call to `error'.
|
||||
|
||||
* parse.y (patch_method_invocation): Avoid casting away
|
||||
const-ness.
|
||||
|
||||
2001-03-21 Alexandre Petit-Bianco <apbianco@redhat.com>
|
||||
|
||||
* parse.y (qualify_ambiguous_name): Broaden `length'
|
||||
|
@ -355,24 +355,11 @@ pop_type_0 (type, messagep)
|
||||
else if (CLASS_INTERFACE (TYPE_NAME (TREE_TYPE (type))))
|
||||
return object_ptr_type_node;
|
||||
}
|
||||
{
|
||||
const char *str1 = "expected type '";
|
||||
const char *str3 = "' but stack contains '";
|
||||
const char *str5 = "'";
|
||||
int len1 = strlen (str1);
|
||||
int len2 = strlen (lang_printable_name (type, 0));
|
||||
int len3 = strlen (str3);
|
||||
int len4 = strlen (lang_printable_name (t, 0));
|
||||
int len5 = strlen (str5);
|
||||
char *msg = xmalloc (len1 + len2 + len3 + len4 + len5 + 1);
|
||||
*messagep = msg;
|
||||
strcpy (msg, str1); msg += len1;
|
||||
strcpy (msg, lang_printable_name (type, 0)); msg += len2;
|
||||
strcpy (msg, str3); msg += len3;
|
||||
strcpy (msg, lang_printable_name (t, 0)); msg += len4;
|
||||
strcpy (msg, str5);
|
||||
return type;
|
||||
}
|
||||
|
||||
*messagep = concat ("expected type '", lang_printable_name (type, 0),
|
||||
"' but stack contains '", lang_printable_name (t, 0),
|
||||
"'", NULL);
|
||||
return type;
|
||||
}
|
||||
|
||||
/* Pop a type from the type stack.
|
||||
@ -387,7 +374,7 @@ pop_type (type)
|
||||
type = pop_type_0 (type, &message);
|
||||
if (message != NULL)
|
||||
{
|
||||
error (message);
|
||||
error ("%s", message);
|
||||
free (message);
|
||||
}
|
||||
return type;
|
||||
|
@ -9963,12 +9963,15 @@ patch_method_invocation (patch, primary, where, from_super,
|
||||
/* Calls to clone() on array types are permitted as a special-case. */
|
||||
&& !is_array_clone_call)
|
||||
{
|
||||
char *fct_name = (char *) IDENTIFIER_POINTER (DECL_NAME (list));
|
||||
char *access = java_accstring_lookup (get_access_flags_from_decl (list));
|
||||
char *klass = (char *) IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (DECL_CONTEXT (list))));
|
||||
char *refklass = (char *) IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (current_class)));
|
||||
char *what = (char *) (DECL_CONSTRUCTOR_P (list)
|
||||
? "constructor" : "method");
|
||||
const char *fct_name = IDENTIFIER_POINTER (DECL_NAME (list));
|
||||
const char *access =
|
||||
java_accstring_lookup (get_access_flags_from_decl (list));
|
||||
const char *klass =
|
||||
IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (DECL_CONTEXT (list))));
|
||||
const char *refklass =
|
||||
IDENTIFIER_POINTER (DECL_NAME (TYPE_NAME (current_class)));
|
||||
const char *what = (DECL_CONSTRUCTOR_P (list)
|
||||
? "constructor" : "method");
|
||||
/* FIXME: WFL yields the wrong message here but I don't know
|
||||
what else to use. */
|
||||
parse_error_context (wfl,
|
||||
|
Loading…
Reference in New Issue
Block a user