source: translator/Parser/LinkageSpec.h @ 91b216b4

ADTaaron-thesisarm-ehast-experimentalcleanup-dtorsctordeferred_resndemanglerenumforall-pointer-decaygc_noraiijacob/cs343-translationjenkins-sandboxmemorynew-astnew-ast-unique-exprnew-envno_listpersistent-indexerpthread-emulationqualifiedEnumresolv-newstringwith_gc
Last change on this file since 91b216b4 was 51b7345, checked in by Peter A. Buhr <pabuhr@…>, 10 years ago

initial commit

  • Property mode set to 100644
File size: 708 bytes
Line 
1/*
2 * This file is part of the Cforall project
3 *
4 * $Id: LinkageSpec.h,v 1.3 2003/01/29 14:55:08 rcbilson Exp $
5 *
6 */
7
8#ifndef LINKAGESPEC_H
9#define LINKAGESPEC_H
10
11#include <string>
12
13struct LinkageSpec
14{
15  enum Type
16  {
17    Intrinsic,          // C built-in defined in prelude
18    Cforall,            // ordinary
19    C,                  // not overloadable, not mangled
20    AutoGen,            // built by translator (struct assignment)
21    Compiler            // gcc internal
22  };
23 
24  static Type fromString( const std::string& );
25  static std::string toString( Type );
26 
27  static bool isDecoratable( Type );
28  static bool isGeneratable( Type );
29  static bool isOverloadable( Type );
30  static bool isBuiltin( Type );
31};
32
33#endif /* #ifndef LINKAGESPEC_H */
Note: See TracBrowser for help on using the repository browser.