Changes in src/AST/LinkageSpec.cpp [260dad7:87701b6]
- File:
-
- 1 edited
-
src/AST/LinkageSpec.cpp (modified) (1 diff)
Legend:
- Unmodified
- Added
- Removed
-
src/AST/LinkageSpec.cpp
r260dad7 r87701b6 27 27 namespace Linkage { 28 28 29 Spec update( CodeLocation loc, Spec spec, const std::string * cmd ) { 30 assert( cmd ); 31 std::unique_ptr<const std::string> guard( cmd ); // allocated by lexer 32 if ( *cmd == "\"Cforall\"" ) { 33 spec.is_mangled = true; 34 return spec; 35 } else if ( *cmd == "\"C\"" ) { 36 spec.is_mangled = false; 37 return spec; 38 } else { 39 SemanticError( loc, "Invalid linkage specifier " + *cmd ); 29 Spec update( CodeLocation loc, Spec spec, const std::string * cmd ) { 30 assert( cmd ); 31 std::unique_ptr<const std::string> guard( cmd ); // allocated by lexer 32 if ( *cmd == "\"Cforall\"" ) { 33 spec.is_mangled = true; 34 return spec; 35 } else if ( *cmd == "\"C\"" ) { 36 spec.is_mangled = false; 37 return spec; 38 } else { 39 SemanticError( loc, "Invalid linkage specifier " + *cmd ); 40 } 40 41 } 41 }42 42 43 std::string name( Spec spec ) { 44 switch ( spec.val ) { 45 case Intrinsic.val: return "intrinsic"; 46 case C.val: return "C"; 47 case Cforall.val: return "Cforall"; 48 case AutoGen.val: return "autogenerated cfa"; 49 case Compiler.val: return "compiler built-in"; 50 case BuiltinCFA.val: return "cfa built-in"; 51 case BuiltinC.val: return "c built-in"; 52 default: return "<unnamed linkage spec>"; 43 44 std::string name( Spec spec ) { 45 switch ( spec.val ) { 46 case Intrinsic.val: return "intrinsic"; 47 case C.val: return "C"; 48 case Cforall.val: return "Cforall"; 49 case AutoGen.val: return "autogenerated cfa"; 50 case Compiler.val: return "compiler built-in"; 51 case BuiltinCFA.val: return "cfa built-in"; 52 case BuiltinC.val: return "c built-in"; 53 default: return "<unnamed linkage spec>"; 54 } 53 55 } 54 }55 56 56 57 }
Note:
See TracChangeset
for help on using the changeset viewer.