summaryrefslogtreecommitdiff
path: root/ld/deffile.h
diff options
context:
space:
mode:
authorMartin Storsjö <martin@martin.st>2022-09-06 18:39:07 +0300
committerMartin Storsjö <martin@martin.st>2022-09-12 11:07:35 +0300
commit825a844fdcfd4532cddde14d7bb38f1f981fa9fe (patch)
tree7a0e6ab9ef7c9bc1fbac6a8abbadef4c28453cce /ld/deffile.h
parenta33a94cf432e449461b7ddcc22b6f5a886cd3315 (diff)
downloadbinutils-gdb-825a844fdcfd4532cddde14d7bb38f1f981fa9fe.tar.gz
ld: pe: Apply review suggestions on the existing exports/imports arrays
Use a separate explicit max_exports/imports field, instead of deducing it from the number of allocated elements. Use a named constant for the incremental growth of the array. Use bool instead of int for boolean values. Remove an unnecessary if statement/scope in the def_file_free function. Add more verbose comments about parameters, and about insertion into an array of structs. Generally use unsigned integers for all array indices and sizes. The num_exports/imports fields are kept as is as signed integers, since changing them to unsigned would require a disproportionate amount of changes ti pe-dll.c to avoid comparisons between signed and unsigned. Simply use xrealloc instead of a check and xmalloc/xrealloc; xrealloc can take NULL as the first parameter (and does a similar check internally). (This wasn't requested in review though, but noticed while working on the code.)
Diffstat (limited to 'ld/deffile.h')
-rw-r--r--ld/deffile.h6
1 files changed, 4 insertions, 2 deletions
diff --git a/ld/deffile.h b/ld/deffile.h
index 89ffe9f972e..9eb08ad83fb 100644
--- a/ld/deffile.h
+++ b/ld/deffile.h
@@ -84,6 +84,7 @@ typedef struct def_file {
/* From the EXPORTS commands. */
int num_exports;
+ unsigned int max_exports;
def_file_export *exports;
/* Used by imports for module names. */
@@ -91,6 +92,7 @@ typedef struct def_file {
/* From the IMPORTS commands. */
int num_imports;
+ unsigned int max_imports;
def_file_import *imports;
/* From the VERSION command, -1 if not specified. */
@@ -112,10 +114,10 @@ extern def_file *def_file_parse (const char *, def_file *);
extern void def_file_free (def_file *);
extern def_file_export *def_file_add_export (def_file *, const char *,
const char *, int,
- const char *, int *);
+ const char *, bool *);
extern def_file_import *def_file_add_import (def_file *, const char *,
const char *, int, const char *,
- const char *, int *);
+ const char *, bool *);
extern int def_file_add_import_from (def_file *fdef,
int num_imports,
const char *name,