- Timestamp:
- Sep 17, 2018, 8:34:19 AM (7 years ago)
- Branches:
- ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, deferred_resn, enum, forall-pointer-decay, jacob/cs343-translation, jenkins-sandbox, master, new-ast, new-ast-unique-expr, no_list, persistent-indexer, pthread-emulation, qualifiedEnum
- Children:
- f9c7d27
- Parents:
- 7ff01ff (diff), 6e9ffd1 (diff)
Note: this is a merge changeset, the changes displayed below correspond to the merge itself.
Use the(diff)
links above to see all the changes relative to each parent. - Location:
- src
- Files:
-
- 2 added
- 7 edited
Legend:
- Unmodified
- Added
- Removed
-
src/CodeTools/module.mk
r7ff01ff r3271166 16 16 17 17 SRC += CodeTools/DeclStats.cc \ 18 CodeTools/ResolvProtoDump.cc \ 18 19 CodeTools/TrackLoc.cc -
src/CompilationState.cc
r7ff01ff r3271166 30 30 parsep = false, 31 31 resolvep = false, 32 resolvprotop = false, 32 33 symtabp = false, 33 34 treep = false, -
src/CompilationState.h
r7ff01ff r3271166 31 31 parsep, 32 32 resolvep, 33 resolvprotop, 33 34 symtabp, 34 35 treep, -
src/Makefile.in
r7ff01ff r3271166 221 221 CodeGen/FixNames.$(OBJEXT) CodeGen/FixMain.$(OBJEXT) \ 222 222 CodeGen/OperatorTable.$(OBJEXT) CodeTools/DeclStats.$(OBJEXT) \ 223 CodeTools/ResolvProtoDump.$(OBJEXT) \ 223 224 CodeTools/TrackLoc.$(OBJEXT) Concurrency/Keywords.$(OBJEXT) \ 224 225 Concurrency/Waitfor.$(OBJEXT) Common/SemanticError.$(OBJEXT) \ … … 520 521 CodeGen/FixNames.cc CodeGen/FixMain.cc \ 521 522 CodeGen/OperatorTable.cc CodeTools/DeclStats.cc \ 522 CodeTools/TrackLoc.cc Concurrency/Keywords.cc \ 523 Concurrency/Waitfor.cc Common/SemanticError.cc \ 524 Common/UniqueName.cc Common/DebugMalloc.cc Common/Assert.cc \ 525 Common/Heap.cc Common/Eval.cc ControlStruct/LabelGenerator.cc \ 523 CodeTools/ResolvProtoDump.cc CodeTools/TrackLoc.cc \ 524 Concurrency/Keywords.cc Concurrency/Waitfor.cc \ 525 Common/SemanticError.cc Common/UniqueName.cc \ 526 Common/DebugMalloc.cc Common/Assert.cc Common/Heap.cc \ 527 Common/Eval.cc ControlStruct/LabelGenerator.cc \ 526 528 ControlStruct/LabelFixer.cc ControlStruct/MLEMutator.cc \ 527 529 ControlStruct/Mutate.cc ControlStruct/ForExprMutator.cc \ … … 999 1001 CodeTools/DeclStats.$(OBJEXT): CodeTools/$(am__dirstamp) \ 1000 1002 CodeTools/$(DEPDIR)/$(am__dirstamp) 1003 CodeTools/ResolvProtoDump.$(OBJEXT): CodeTools/$(am__dirstamp) \ 1004 CodeTools/$(DEPDIR)/$(am__dirstamp) 1001 1005 CodeTools/TrackLoc.$(OBJEXT): CodeTools/$(am__dirstamp) \ 1002 1006 CodeTools/$(DEPDIR)/$(am__dirstamp) … … 1101 1105 @AMDEP_TRUE@@am__include@ @am__quote@CodeGen/$(DEPDIR)/OperatorTable.Po@am__quote@ 1102 1106 @AMDEP_TRUE@@am__include@ @am__quote@CodeTools/$(DEPDIR)/DeclStats.Po@am__quote@ 1107 @AMDEP_TRUE@@am__include@ @am__quote@CodeTools/$(DEPDIR)/ResolvProtoDump.Po@am__quote@ 1103 1108 @AMDEP_TRUE@@am__include@ @am__quote@CodeTools/$(DEPDIR)/TrackLoc.Po@am__quote@ 1104 1109 @AMDEP_TRUE@@am__include@ @am__quote@Common/$(DEPDIR)/Assert.Po@am__quote@ -
src/Parser/LinkageSpec.cc
r7ff01ff r3271166 10 10 // Created On : Sat May 16 13:22:09 2015 11 11 // Last Modified By : Andrew Beach 12 // Last Modified On : Fri Jul 7 11:11:00 201713 // Update Count : 2 512 // Last Modified On : Thr Spt 12 15:59:00 2018 13 // Update Count : 26 14 14 // 15 15 … … 23 23 24 24 namespace LinkageSpec { 25 26 Spec linkageCheck( CodeLocation location, const string * spec ) {27 assert( spec );28 unique_ptr<const string> guard( spec ); // allocated by lexer29 if ( *spec == "\"Cforall\"" ) {30 return Cforall;31 } else if ( *spec == "\"C\"" ) {32 return C;33 } else if ( *spec == "\"BuiltinC\"" ) {34 return BuiltinC;35 } else {36 SemanticError( location, "Invalid linkage specifier " + *spec );37 } // if38 }39 25 40 26 Spec linkageUpdate( CodeLocation location, Spec old_spec, const string * cmd ) { -
src/Parser/LinkageSpec.h
r7ff01ff r3271166 9 9 // Author : Rodolfo G. Esteves 10 10 // Created On : Sat May 16 13:24:28 2015 11 // Last Modified By : Peter A. Buhr12 // Last Modified On : Mon Jul 2 07:46:49201813 // Update Count : 1 611 // Last Modified By : Andrew Beach 12 // Last Modified On : Thr Spt 13 15:59:00 2018 13 // Update Count : 17 14 14 // 15 15 … … 41 41 42 42 43 Spec linkageCheck( CodeLocation location, const std::string * );44 // Returns the Spec with the given name (limited to C, Cforall & BuiltinC)45 43 Spec linkageUpdate( CodeLocation location, Spec old_spec, const std::string * cmd ); 46 44 /* If cmd = "C" returns a Spec that is old_spec with is_mangled = false -
src/main.cc
r7ff01ff r3271166 34 34 #include "CodeGen/Generate.h" // for generate 35 35 #include "CodeTools/DeclStats.h" // for printDeclStats 36 #include "CodeTools/ResolvProtoDump.h" // for dumpAsResolvProto 36 37 #include "CodeTools/TrackLoc.h" // for fillLocations 37 38 #include "Common/CompilerError.h" // for CompilerError … … 271 272 CodeTools::fillLocations( translationUnit ); 272 273 274 if ( resolvprotop ) { 275 CodeTools::dumpAsResolvProto( translationUnit ); 276 return 0; 277 } 278 273 279 PASS( "resolve", ResolvExpr::resolve( translationUnit ) ); 274 280 if ( exprp ) { … … 376 382 377 383 void parse_cmdline( int argc, char * argv[], const char *& filename ) { 378 enum { Ast, Bbox, Bresolver, CtorInitFix, DeclStats, Expr, ExprAlt, Grammar, LibCFA, Linemarks, Nolinemarks, Nopreamble, Parse, PreludeDir, Prototypes, Resolver, Symbol, Tree, TupleExpansion, Validate, };384 enum { Ast, Bbox, Bresolver, CtorInitFix, DeclStats, Expr, ExprAlt, Grammar, LibCFA, Linemarks, Nolinemarks, Nopreamble, Parse, PreludeDir, Prototypes, Resolver, ResolvProto, Symbol, Tree, TupleExpansion, Validate, }; 379 385 380 386 static struct option long_opts[] = { … … 395 401 { "no-prototypes", no_argument, 0, Prototypes }, 396 402 { "resolver", no_argument, 0, Resolver }, 403 { "resolv-proto", no_argument, 0, ResolvProto }, 397 404 { "symbol", no_argument, 0, Symbol }, 398 405 { "tree", no_argument, 0, Tree }, … … 407 414 bool Wsuppress = false, Werror = false; 408 415 int c; 409 while ( (c = getopt_long( argc, argv, "abBcCdefgGlLmnNpqr stTvwW:yzZD:F:", long_opts, &long_index )) != -1 ) {416 while ( (c = getopt_long( argc, argv, "abBcCdefgGlLmnNpqrRstTvwW:yzZD:F:", long_opts, &long_index )) != -1 ) { 410 417 switch ( c ) { 411 418 case Ast: … … 479 486 case 'r': // print resolver steps 480 487 resolvep = true; 488 break; 489 case 'R': // dump resolv-proto instance 490 resolvprotop = true; 481 491 break; 482 492 case Symbol:
Note:
See TracChangeset
for help on using the changeset viewer.