Clean changes introduced by 47abdbd

* Replace the save/load_buffer_state by a dynarray approach:
  - Filename and libname are added to a dynarray when first encountered
  - Load repeatedly the files in the dynarray until no new undefined
    symbol are encountered
* Replace snprintf by sprintf in libname_to_filename
* Use tcc_fileextension in filename_to_libname
* Introduce a tcc_strcpy_part fonction to copy only a subset of a
  string
* Move new_undef_syms declaration from tcc.h to tccelf.c
This commit is contained in:
Thomas Preud'homme
2010-04-20 15:49:34 +02:00
parent 809f489662
commit 3ad3168125
3 changed files with 86 additions and 89 deletions

21
tccpp.c
View File

@ -378,27 +378,6 @@ static int tcc_peekc_slow(BufferedFile *bf)
}
}
BufferedFile *tcc_save_buffer_state(int *offset)
{
BufferedFile *state;
state = tcc_malloc(sizeof(BufferedFile));
memcpy(state, file, sizeof(BufferedFile));
*offset = lseek(file->fd, 0, SEEK_CUR);
return state;
}
void tcc_load_buffer_state(BufferedFile *buf_state, int offset)
{
memcpy(file, buf_state, sizeof(BufferedFile));
lseek(file->fd, offset, SEEK_SET);
}
void tcc_free_buffer_state(BufferedFile *buf_state)
{
tcc_free(buf_state);
}
/* return the current character, handling end of block if necessary
(but not stray) */
ST_FUNC int handle_eob(void)