Changeset be945ac


Ignore:
Timestamp:
Jun 2, 2016, 11:51:07 AM (8 years ago)
Author:
Rob Schluntz <rschlunt@…>
Branches:
ADT, aaron-thesis, arm-eh, ast-experimental, cleanup-dtors, ctor, deferred_resn, demangler, enum, forall-pointer-decay, gc_noraii, jacob/cs343-translation, jenkins-sandbox, master, memory, new-ast, new-ast-unique-expr, new-env, no_list, persistent-indexer, pthread-emulation, qualifiedEnum, resolv-new, with_gc
Children:
2edd5502
Parents:
f1b1e4c (diff), 4df85197 (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.
Message:

Merge branch 'master' into ctor

Conflicts:

src/SymTab/Validate.cc

Files:
2 added
5 edited

Legend:

Unmodified
Added
Removed
  • src/GenPoly/GenPoly.cc

    rf1b1e4c rbe945ac  
    6464                        return false;
    6565                }
    66                
     66
    6767                /// Replaces a TypeInstType by its referrent in the environment, if applicable
    6868                Type* replaceTypeInst( Type* type, const TypeSubstitution* env ) {
     
    7878        Type *isPolyType( Type *type, const TypeSubstitution *env ) {
    7979                type = replaceTypeInst( type, env );
    80                
     80
    8181                if ( TypeInstType *typeInst = dynamic_cast< TypeInstType * >( type ) ) {
    8282                        return type;
     
    9191        Type *isPolyType( Type *type, const TyVarMap &tyVars, const TypeSubstitution *env ) {
    9292                type = replaceTypeInst( type, env );
    93                
     93
    9494                if ( TypeInstType *typeInst = dynamic_cast< TypeInstType * >( type ) ) {
    9595                        if ( tyVars.find( typeInst->get_name() ) != tyVars.end() ) {
     
    106106        Type *isPolyPtr( Type *type, const TypeSubstitution *env ) {
    107107                type = replaceTypeInst( type, env );
    108                
     108
    109109                if ( PointerType *ptr = dynamic_cast< PointerType *>( type ) ) {
    110110                        return isPolyType( ptr->get_base(), env );
     
    115115        Type *isPolyPtr( Type *type, const TyVarMap &tyVars, const TypeSubstitution *env ) {
    116116                type = replaceTypeInst( type, env );
    117                
     117
    118118                if ( PointerType *ptr = dynamic_cast< PointerType *>( type ) ) {
    119119                        return isPolyType( ptr->get_base(), tyVars, env );
     
    129129                while ( true ) {
    130130                        type = replaceTypeInst( type, env );
    131                
     131
    132132                        if ( PointerType *ptr = dynamic_cast< PointerType *>( type ) ) {
    133133                                type = ptr->get_base();
     
    146146                while ( true ) {
    147147                        type = replaceTypeInst( type, env );
    148                
     148
    149149                        if ( PointerType *ptr = dynamic_cast< PointerType *>( type ) ) {
    150150                                type = ptr->get_base();
  • src/SymTab/Validate.cc

    rf1b1e4c rbe945ac  
    291291
    292292        namespace {
    293                 template< typename DWTIterator, typename DWTList >
    294                 void fixFunctionList( DWTIterator begin, DWTIterator end, FunctionType *func, DWTList & dwts ) {
     293                template< typename DWTList >
     294                void fixFunctionList( DWTList & dwts, FunctionType * func ) {
    295295                        // the only case in which "void" is valid is where it is the only one in the list; then it should be removed
    296296                        // entirely other fix ups are handled by the FixFunction class
     297                        typedef typename DWTList::iterator DWTIterator;
     298                        DWTIterator begin( dwts.begin() ), end( dwts.end() );
    297299                        if ( begin == end ) return;
    298300                        FixFunction fixer;
     
    321323        void Pass1::visit( FunctionType *func ) {
    322324                // Fix up parameters and return types
    323                 fixFunctionList( func->get_parameters().begin(), func->get_parameters().end(), func, func->get_parameters() );
    324                 fixFunctionList( func->get_returnVals().begin(), func->get_returnVals().end(), func, func->get_returnVals() );
     325                fixFunctionList( func->get_parameters(), func );
     326                fixFunctionList( func->get_returnVals(), func );
    325327                Visitor::visit( func );
    326328        }
  • src/examples/runTests.sh

    rf1b1e4c rbe945ac  
    3636make clean > /dev/null 2>&1
    3737
     38ret_val=0
     39
    3840for test in $tests; do
    3941        echo -n "    $test" | tee -a $logfile
     
    4143        # build, skipping to next test on error
    4244        if ! make -j 8 $test > tests/$test.make.txt 2>&1; then
     45                ret_val=1
    4346                echo -e "\tFAILED with build error:" | tee -a $logfile
    4447                cat tests/$test.make.txt | tee -a $logfile
     
    5053        ./$test < tests/$test.in.txt > tests/$test.run.txt 2>&1
    5154        if ! diff tests/$test.out.txt tests/$test.run.txt > tests/$test.diff.txt; then
     55                ret_val=1
    5256                echo -e "\tFAILED with output mismatch:" | tee -a $logfile
    5357                cat tests/$test.diff.txt | tee -a $logfile
     
    5862        echo -e "\tPASSED" | tee -a $logfile
    5963done
     64
     65exit $((ret_val))
  • src/libcfa/Makefile.am

    rf1b1e4c rbe945ac  
    1111## Created On       : Sun May 31 08:54:01 2015
    1212## Last Modified By : Peter A. Buhr
    13 ## Last Modified On : Tue Apr 19 22:30:17 2016
    14 ## Update Count     : 124
     13## Last Modified On : Tue May 31 13:24:15 2016
     14## Update Count     : 141
    1515###############################################################################
    1616
     
    5353CC = ${abs_top_srcdir}/src/driver/cfa
    5454
    55 # extension-less header files are overridden by default make rules => explicitly override rule
    56 % : %.c
    57         true
     55headers = limits stdlib math iostream fstream iterator rational
     56.SECONDARY : ${headers}                                 # stop implicit '.o' rules from removing extensionless headers
    5857
    59 .c.o : ${abs_top_srcdir}/src/driver/cfa-cpp
    60         ${CC} ${CFLAGS} -c -o $@ $<
     58libcfa_a_SOURCES = libcfa-prelude.c ${headers:=.c}
    6159
    62 libs = limits stdlib math iostream fstream iterator rational
    63 libcfa_a_SOURCES = libcfa-prelude.c ${libs:=.c}
    64 
    65 cheaders = # expat
    66 cfaheaders = # limits
    67 include_HEADERS = ${cheaders:=.h} ${libs} ${cfaheaders}
     60include_HEADERS = ${headers}
    6861
    6962CLEANFILES = libcfa-prelude.c
  • src/libcfa/Makefile.in

    rf1b1e4c rbe945ac  
    214214MAINTAINERCLEANFILES = ${addprefix ${libdir}/,${cfalib_DATA}} \
    215215        ${addprefix ${libdir}/,${lib_LIBRARIES}} ${includedir}/*
    216 libs = limits stdlib math iostream fstream iterator rational
    217 libcfa_a_SOURCES = libcfa-prelude.c ${libs:=.c}
    218 cheaders = # expat
    219 cfaheaders = # limits
    220 include_HEADERS = ${cheaders:=.h} ${libs} ${cfaheaders}
     216headers = limits stdlib math iostream fstream iterator rational
     217libcfa_a_SOURCES = libcfa-prelude.c ${headers:=.c}
     218include_HEADERS = ${headers}
    221219CLEANFILES = libcfa-prelude.c
    222220all: all-am
     
    303301@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/rational.Po@am__quote@
    304302@AMDEP_TRUE@@am__include@ @am__quote@./$(DEPDIR)/stdlib.Po@am__quote@
     303
     304.c.o:
     305@am__fastdepCC_TRUE@    $(COMPILE) -MT $@ -MD -MP -MF $(DEPDIR)/$*.Tpo -c -o $@ $<
     306@am__fastdepCC_TRUE@    $(am__mv) $(DEPDIR)/$*.Tpo $(DEPDIR)/$*.Po
     307@AMDEP_TRUE@@am__fastdepCC_FALSE@       source='$<' object='$@' libtool=no @AMDEPBACKSLASH@
     308@AMDEP_TRUE@@am__fastdepCC_FALSE@       DEPDIR=$(DEPDIR) $(CCDEPMODE) $(depcomp) @AMDEPBACKSLASH@
     309@am__fastdepCC_FALSE@   $(COMPILE) -c $<
    305310
    306311.c.obj:
     
    582587libcfa-prelude.o : libcfa-prelude.c
    583588        @BACKEND_CC@ -c -o $@ $<
    584 
    585 # extension-less header files are overridden by default make rules => explicitly override rule
    586 % : %.c
    587         true
    588 
    589 .c.o : ${abs_top_srcdir}/src/driver/cfa-cpp
    590         ${CC} ${CFLAGS} -c -o $@ $<
     589.SECONDARY : ${headers}                                 # stop implicit '.o' rules from removing extensionless headers
    591590
    592591# Tell versions [3.59,3.63) of GNU make to not export all variables.
Note: See TracChangeset for help on using the changeset viewer.