From: Ian Edwards (ian_at_concerto.demon.co.uk)
Date: Thu Apr 04 2002 - 12:43:21 BST
On 03-Apr-02 Satish Balay wrote: > 1. It can't find the main routine (typing in MAIN__ does bring up the > main code) > > 2. Cliking on variables - which are uppercase (in the source) doesn't > work. The same variable - if it is in lowercase - does show the > value. > > In the features category for fortran - it would be nice - if clicking > on a subroutine/function works (i.e taking it to the implementation of > the routine) - for both the cases when the subroutine is implemented > in fortran or in C. Hello Satish, the attached patch should fix 1 and 2. I am still looking at the function problem. Apply the patch by changing directory to the top-level UPS source directory then : patch -c -p -s < ups_fortran.pat Regards, Ian. -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- Ian Edwards <ian_at_concerto.demon.co.uk> 04-Apr-02 12:43:21 Early Music Record Labels - http://www.recordlabels.org/ 'ups' debugger for C/C++/f77 - http://www.concerto.demon.co.uk/UPS/ -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- -- ---------------------------------------------------------------------- PATCH FOR UPS Generated Thu Apr 4 10:23:39 BST 2002 on FreeBSD 4.3-RELEASE In ups-3.37-dev Apply with : patch -c -p -s < this_file ---------------------------------------------------------------------- *** ./ups/target.c.ups Mon Jan 7 16:54:53 2002 --- ./ups/target.c Thu Apr 4 10:15:25 2002 *************** *** 522,530 **** set_current_target(xp); } if ((f = xp_get_mainfunc(xp)) == NULL) { ! res = find_func_by_name("main", &f, &f1, TRUE); ! if (res != 0 || IS_FORTRAN(f->fu_language)) { ! find_func_by_name("MAIN", &f, &f1, TRUE); } xp_set_mainfunc(xp, f); --- 522,532 ---- set_current_target(xp); } if ((f = xp_get_mainfunc(xp)) == NULL) { ! res = find_func_by_name("MAIN__", &f, &f1, TRUE); ! if (res == -1) ! res = find_func_by_name("MAIN", &f, &f1, TRUE); ! if (res != 0 || !IS_FORTRAN(f->fu_language)) { ! find_func_by_name("main", &f, &f1, TRUE); } xp_set_mainfunc(xp, f); *** ./ups/ups.c.ups Mon Mar 18 16:49:31 2002 --- ./ups/ups.c Thu Apr 4 10:14:54 2002 *************** *** 1082,1088 **** errf_ofunc_t oldf; oldf = errf_set_ofunc(null_ofunc); ! res = find_func_by_name("MAIN", &f, &f1, TRUE); errf_set_ofunc(oldf); if (res != 0 || !IS_FORTRAN(f->fu_language)) { --- 1082,1090 ---- errf_ofunc_t oldf; oldf = errf_set_ofunc(null_ofunc); ! res = find_func_by_name("MAIN__", &f, &f1, TRUE); ! if (res == -1) ! res = find_func_by_name("MAIN", &f, &f1, TRUE); errf_set_ofunc(oldf); if (res != 0 || !IS_FORTRAN(f->fu_language)) { *** ./ups/ao_symscan.c.ups Fri Mar 29 15:02:07 2002 --- ./ups/ao_symscan.c Thu Apr 4 10:21:56 2002 *************** *** 128,134 **** if (strcmp(suf, "c") == 0) return LANG_C; ! if (strcmp(suf, "f") == 0) return LANG_F77; if (strcmp(suf, "f90") == 0) --- 128,134 ---- if (strcmp(suf, "c") == 0) return LANG_C; ! if (strcmp(suf, "f") == 0 || strcmp(suf, "F") == 0) return LANG_F77; if (strcmp(suf, "f90") == 0) End of MIME message
This archive was generated by hypermail 2.1.4 : Thu May 23 2002 - 15:54:09 BST