was used (or 0 if that isn't known) and TYPE is the type that was
invalid. */
void (*incomplete_type_error) (tree value, tree type);
+
+ /* Nonzero if types that are identical are to be hashed so that only
+ one copy is kept. If a language requires unique types for each
+ user-specified type, such as Ada, this should be set to TRUE. */
+ bool hash_types;
};
/* Language hooks related to decls and the symbol table. */
/* Returns the chain of decls so far in the current scope level. */
tree (*getdecls) (void);
- /* Returns a chain of TYPE_DECLs for built-in types. */
- tree (*builtin_type_decls) (void);
-
/* Returns true when we should warn for an unused global DECL.
We will already have checked that it has static binding. */
bool (*warn_unused_global) (tree);
uninitialized based on DECL_INITIAL. */
bool (*decl_uninit) (tree);
+ /* Update lang specific fields after duplicating function body. */
+ void (*update_decl_after_saving) (tree, void *);
+
/* Pointers to machine-independent attribute tables, for front ends
using attribs.c. If one is NULL, it is ignored. Respectively, a
table of attributes specific to the language, a table of