summaryrefslogtreecommitdiffstats
path: root/cpukit/include/rtems/rtl/rtl-unresolved.h
diff options
context:
space:
mode:
Diffstat (limited to 'cpukit/include/rtems/rtl/rtl-unresolved.h')
-rw-r--r--cpukit/include/rtems/rtl/rtl-unresolved.h13
1 files changed, 8 insertions, 5 deletions
diff --git a/cpukit/include/rtems/rtl/rtl-unresolved.h b/cpukit/include/rtems/rtl/rtl-unresolved.h
index a425384370..efc9ce220f 100644
--- a/cpukit/include/rtems/rtl/rtl-unresolved.h
+++ b/cpukit/include/rtems/rtl/rtl-unresolved.h
@@ -53,6 +53,7 @@
#define _RTEMS_RTL_UNRESOLVED_H_
#include <rtems.h>
+#include <rtems/chain.h>
#include "rtl-obj-fwd.h"
#ifdef __cplusplus
@@ -79,6 +80,8 @@ typedef enum rtems_rtl_unresolved_rtype
* Unresolved external symbol flags.
*/
#define RTEMS_RTL_UNRESOLV_SYM_SEARCH_ARCHIVE (1 << 0) /**< Search the archive. */
+#define RTEMS_RTL_UNRESOLV_SYM_HAS_ERROR (1 << 1) /**< The symbol load
+ * has an error. */
/**
* Unresolved externals symbols. The symbols are reference counted and separate
@@ -93,7 +96,7 @@ typedef struct rtems_rtl_unresolv_symbol
uint16_t refs; /**< The number of references to this name. */
uint16_t flags; /**< Flags to manage the symbol. */
uint16_t length; /**< The length of this name. */
- const char name[10]; /**< The symbol name. */
+ const char name[]; /**< The symbol name. */
} rtems_rtl_unresolv_symbol;
/**
@@ -117,7 +120,7 @@ typedef struct rtems_rtl_unresolv_rec
rtems_rtl_unresolved_rtype type;
union
{
- rtems_rtl_unresolv_symbol name; /**< The symnbol, or */
+ rtems_rtl_unresolv_symbol name; /**< The symbol, or */
rtems_rtl_unresolv_reloc reloc; /**< the relocation record. */
} rec;
} rtems_rtl_unresolv_rec;
@@ -127,9 +130,9 @@ typedef struct rtems_rtl_unresolv_rec
*/
typedef struct rtems_rtl_unresolv_block
{
- rtems_chain_node link; /**< Blocks are chained. */
- uint32_t recs; /**< The number of records in the block. */
- rtems_rtl_unresolv_rec rec; /**< The records. More follow. */
+ rtems_chain_node link; /**< Blocks are chained. */
+ uint32_t recs; /**< The number of records in the block. */
+ rtems_rtl_unresolv_rec rec[]; /**< The records. More follow. */
} rtems_rtl_unresolv_block;
/**