# Patch created by springjp
# Date: Wed Sep 25 22:17:52 EDT 2002
# Repository: pnet
# Comments:
#
#
# Change ilverify.c to print full method signatures for code it could not
# verify.
#
#### End of Preamble ####
#### Patch data follows ####
Index: ChangeLog
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/ChangeLog,v
retrieving revision 1.1717
diff -u -c -r1.1717 ChangeLog
*** ChangeLog 20 Sep 2002 06:05:15 -0000 1.1717
--- ChangeLog 26 Sep 2002 02:17:53 -0000
***************
*** 1,4 ****
--- 1,9 ----
+ 2002-09-25 Jonathan Springer
+
+ * engine/ilverify.c: add full method signatures to ilverify
+ output.
+
2002-09-20 Rhys Weatherley
* cscc/csharp/cs_lvalue.tc: convert "out" parameters into
Index: aclocal.m4
===================================================================
RCS file: /cvsroot/dotgnu-pnet/pnet/engine/ilverify.c,v
retrieving revision 1.25
diff -u -c -r1.25 ilverify.c
*** engine/ilverify.c 4 May 2002 09:47:04 -0000 1.25
--- engine/ilverify.c 26 Sep 2002 02:17:55 -0000
***************
*** 21,26 ****
--- 21,27 ----
#include
#include "engine.h"
#include "il_utils.h"
+ #include "il_types.h"
#ifdef __cplusplus
extern "C" {
***************
*** 163,168 ****
--- 164,184 ----
extern ILCoderClass const _ILNullCoderClass;
extern ILCoder _ILNullCoder;
+ static void printParameter(ILMethod *method, int param) {
+
+ ILType *method_type = ILMethod_Signature(method);
+
+ if (method_type)
+ {
+ ILType *param_type = ILTypeGetParam(method_type,1);
+ char *param_name = ILTypeToName(param_type);
+
+ fputs(param_name,stdout);
+ ILFree(param_name);
+ fputs(" ",stdout);
+ }
+ }
+
/*
* Print a verification error.
*/
***************
*** 170,175 ****
--- 186,194 ----
{
ILClass *classInfo = ILMethod_Owner(method);
const char *namespace = ILClass_Namespace(classInfo);
+ ILParameter *param = NULL;
+ int i = 0;
+
if(namespace)
{
fputs(namespace, stdout);
***************
*** 177,183 ****
--- 196,219 ----
}
fputs(ILClass_Name(classInfo), stdout);
fputs("::", stdout);
+
+ printParameter(method, i++);
fputs(ILMethod_Name(method), stdout);
+
+ fputs("(",stdout);
+ if ( (param = ILMethodNextParam(method,NULL) ) )
+ {
+ printParameter(method, i++);
+ fputs(ILParameterGetName(param),stdout);
+
+ while ( ( param = ILMethodNextParam(method,param) ) )
+ {
+ fputs(", ",stdout);
+ printParameter(method,i++);
+ fputs(ILParameterGetName(param),stdout);
+ }
+ }
+ fputs(")",stdout);
fputs(" - ", stdout);
fputs(msg, stdout);
putc('\n', stdout);
#### End of Patch data ####