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:
21
tccpp.c
21
tccpp.c
@ -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)
|
||||
|
||||
Reference in New Issue
Block a user