-const DeclAttr* SymGetAttribute (const SymEntry* Sym, DeclAttrType AttrType)
+int SymIsOutputFunc (const SymEntry* Sym)
+/* Return true if this is a function that must be output */
+{
+ /* Symbol must be a function which is defined and either extern or
+ * static and referenced.
+ */
+ return IsTypeFunc (Sym->Type) &&
+ SymIsDef (Sym) &&
+ (Sym->Flags & (SC_REF | SC_EXTERN));
+}
+
+
+
+const DeclAttr* SymGetAttr (const SymEntry* Sym, DeclAttrType AttrType)
/* Return an attribute for this symbol or NULL if the attribute does not exist */
{
/* Beware: We may not even have a collection */
-void SymUseAttributes (SymEntry* Sym, struct Declaration* D)
+void SymUseAttr (SymEntry* Sym, struct Declaration* D)
/* Use the attributes from the declaration for this symbol */
{
/* We cannot specify attributes twice */