Incorrect code generated on SuperSparc under Linux

seanl@literati.org seanl@literati.org
Sun Sep 27 21:04:00 GMT 1998


This function is returning name rather than v when I compile it with
egcs-1.1a or egcs-1.0.3.  Works fine with gcc-2.7.2.3.  If assembler
output would help, I can get that.  Right now I'm working on compiling
the latest snapshot so I can test with that.

static inline struct var *new_str_var(char *name, char *val) {
  struct var *v = (struct var *)malloc(sizeof(struct var));
  assert(name);
  v->name = name; v->type = string_t; v->value.s = val; 
  v->left = v->right = NULL;
  return v;
};

-- 
Sean R. Lynch <seanl@literati.org>    http://www.literati.org/~seanl/
Finger for PGP key.  9D D1 AE ED FE C4 4D 70  37 0B 36 C7 8B 25 3F BE



More information about the Gcc-bugs mailing list