rem: double x = strtod(underscore + 1, &underscore);
add: double x = strtod(underscore + 1, const_cast<char **>(&underscore));
context: do_file(const char *filename, PsresDatabase *psres){  FILE *f;  if (strcmp(filename, "-") == 0) {    f = stdin;    filename = "<stdin>";  } else    f = fopen(filename, "rb");    if (!f) {    // check for PostScript or instance name    Filename fn = psres->filename_value("FontOutline", filename);    char *underscore = strchr(filename, '_');    if (!fn && underscore) {      fn = psres->filename_value	("FontOutline", PermString(filename, underscore - filename));      int i = 0;      while (underscore[0] == '_' && underscore[1]) {	double x = strtod(underscore + 1, &underscore);	set_design(i, x);	i++;      }    }    f = fn.open_read();  }    if (!f)    errh->fatal("%s: %s", filename, strerror(errno));    Type1Reader *reader;  int c = getc(f);  ungetc(c, f);  if (c == EOF)    errh->fatal("%s: empty file", filename);  if (c == 128)    reader = new Type1PFBReader(f);  else    reader = new Type1PFAReader(f);    font = new MyFont(*reader);  delete reader;  if (!font->ok())      errh->fatal("%s: invalid font", filename);  else if (font->nglyphs() == 0)      errh->fatal("%s: font contains no characters", filename);    mmspace = font->create_mmspace(errh);  if (!mmspace)    errh->fatal("%s: not a multiple master font", filename);  font->undo_synthetic();}