+ unsigned int real : 1;
+
+ /* Set if the file does not exist. */
+ unsigned int missing_file : 1;
+
+ /* Set if reloading an archive or --as-needed lib. */
+ unsigned int reload : 1;
+
+#ifdef ENABLE_PLUGINS
+ /* Set if the file was claimed by a plugin. */
+ unsigned int claimed : 1;
+
+ /* Set if the file was claimed from an archive. */
+ unsigned int claim_archive : 1;
+
+ /* Set if added by the lto plugin add_input_file callback. */
+ unsigned int lto_output : 1;
+#endif /* ENABLE_PLUGINS */
+
+ /* Head of list of pushed flags. */
+ struct lang_input_statement_flags *pushed;
+};
+
+typedef struct lang_input_statement_struct
+{
+ lang_statement_header_type header;
+ /* Name of this file. */
+ const char *filename;
+ /* Name to use for the symbol giving address of text start.
+ Usually the same as filename, but for a file spec'd with
+ -l this is the -l switch itself rather than the filename. */
+ const char *local_sym_name;
+ /* Extra search path. Used to find a file relative to the
+ directory of the current linker script. */
+ const char *extra_search_path;
+
+ bfd *the_bfd;
+
+ ctf_archive_t *the_ctf;
+
+ struct flag_info *section_flag_list;
+
+ /* Next pointer for file_chain statement list. */
+ struct lang_input_statement_struct *next;
+
+ /* Next pointer for input_file_chain statement list. */
+ struct lang_input_statement_struct *next_real_file;