/* Set to 1 iff ENTRY_POINT contains a valid value. */
unsigned entry_point_p : 1;
+
+ /* Set to 1 iff this object was initialized. */
+ unsigned initialized : 1;
};
/* Sections in an objfile. The section offsets are stored in the
name, and the second is the demangled name or just a zero byte
if the name doesn't demangle. */
struct htab *demangled_names_hash;
+
+ /* The per-objfile information about the entry point, the scope (file/func)
+ containing the entry point, and the scope of the user's main() func. */
+
+ struct entry_info ei;
+
+ /* The name and language of any "main" found in this objfile. The
+ name can be NULL, which means that the information was not
+ recorded. */
+
+ const char *name_of_main;
+ enum language language_of_main;
};
/* Master structure for keeping track of each file from which
const struct sym_fns *sf;
- /* The per-objfile information about the entry point, the scope (file/func)
- containing the entry point, and the scope of the user's main() func. */
-
- struct entry_info ei;
-
/* Per objfile data-pointers required by other GDB modules. */
REGISTRY_FIELDS;
const char *objfile_name (const struct objfile *objfile);
+/* Set the objfile's notion of the "main" name and language. */
+
+extern void set_objfile_main_name (struct objfile *objfile,
+ const char *name, enum language lang);
+
#endif /* !defined (OBJFILES_H) */