#include <stdio.h>
#include <string.h>
+#if defined(_MSC_VER)
+#include <malloc.h>
+#else
#include <alloc.h>
+#endif
#include "aslink.h"
/*)Module lksym.c
* int symeq()
* VOID syminit()
* VOID symmod()
- * addr_t symval()
+ * Addr_T symval()
*
* lksym.c contains no local/static variables.
*/
* int lkerr error flag
*
* functions called:
- * addr_t eval() lkeval.c
+ * Addr_T eval() lkeval.c
* VOID exit() c_library
* int fprintf() c_library
+ * char getSid() lklex.c
* char get() lklex.c
* char getnb() lklex.c
* sym * lkpsym() lksym.c
struct sym *
newsym()
{
- register int c, i, nglob;
+ register unsigned i ;
+ register unsigned nglob ;
+ register int c ;
struct sym *tsp;
struct sym **s;
char id[NCPS];
- getid(id, -1);
+ getSid(id); // old: getid(id, -1);
tsp = lkpsym(id, 1);
c = getnb();get();get();
if (c == 'R') {
return (sp);
}
-/*)Function addr_t symval(tsp)
+/*)Function Addr_T symval(tsp)
*
* sym * tsp pointer to a symbol structure
*
* value to the areax base address.
*
* local variables:
- * addr_t val relocated address value
+ * Addr_T val relocated address value
*
* global variables:
* none
* none
*/
-addr_t
+Addr_T
symval(tsp)
register struct sym *tsp;
{
- register addr_t val;
+ register Addr_T val;
val = tsp->s_addr;
if (tsp->s_axp) {
#if CASE_SENSITIVE
return (strcmp( p1, p2 ) == 0);
#else
- return (strcmpi( p1, p2 ) == 0);
+ return (as_strcmpi( p1, p2 ) == 0);
#endif
}
new(n)
unsigned int n;
{
- register char *p,*q;
- register unsigned int i;
+ register char *p;
- if ((p = (char *) malloc(n)) == NULL) {
+ if ((p = (char *) calloc(n, 1)) == NULL) {
fprintf(stderr, "Out of space!\n");
lkexit(1);
}
- for (i=0,q=p; i<n; i++) {
- *q++ = 0;
- }
return (p);
}