- Timestamp:
- Feb 9, 2022, 10:59:11 PM (4 years ago)
- Branches:
- ADT, ast-experimental, enum, forall-pointer-decay, master, pthread-emulation, qualifiedEnum
- Children:
- 6a823241
- Parents:
- 12b5e94a (diff), a986807 (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:
-
- 5 edited
Legend:
- Unmodified
- Added
- Removed
-
src/AST/Pass.hpp
r12b5e94a r454b4e0 265 265 result1<ast::Stmt> call_accept_as_compound(const ast::Stmt *); 266 266 267 template<typename it_t, template <class...> class container_t>268 static inline void take_all_delta( it_t it, container_t<ast::ptr<ast::Decl>> * decls, bool * mutated = nullptr ) {269 if(empty(decls)) return;270 271 std::transform(decls->begin(), decls->end(), it, [](ast::ptr<ast::Decl>&& decl) -> auto {272 auto loc = decl->location;273 auto stmt = new DeclStmt( loc, decl.release() );274 return { {stmt}, -1, false };275 });276 decls->clear();277 if(mutated) *mutated = true;278 }279 280 267 // Container of statements 281 268 template< template <class...> class container_t > -
src/AST/Pass.impl.hpp
r12b5e94a r454b4e0 160 160 161 161 template< typename core_t > 162 ast::Pass< core_t >::result1<ast::Expr> ast::Pass< core_t >::call_accept( const ast::Expr * expr ) {162 typename ast::Pass< core_t >::template result1<ast::Expr> ast::Pass< core_t >::call_accept( const ast::Expr * expr ) { 163 163 __pedantic_pass_assert( __visit_children() ); 164 164 __pedantic_pass_assert( expr ); … … 174 174 175 175 template< typename core_t > 176 ast::Pass< core_t >::result1<ast::Stmt> ast::Pass< core_t >::call_accept( const ast::Stmt * stmt ) {176 typename ast::Pass< core_t >::template result1<ast::Stmt> ast::Pass< core_t >::call_accept( const ast::Stmt * stmt ) { 177 177 __pedantic_pass_assert( __visit_children() ); 178 178 __pedantic_pass_assert( stmt ); … … 183 183 184 184 template< typename core_t > 185 ast::Pass< core_t >::result1<ast::Stmt> ast::Pass< core_t >::call_accept_as_compound( const ast::Stmt * stmt ) {185 typename ast::Pass< core_t >::template result1<ast::Stmt> ast::Pass< core_t >::call_accept_as_compound( const ast::Stmt * stmt ) { 186 186 __pedantic_pass_assert( __visit_children() ); 187 187 __pedantic_pass_assert( stmt ); … … 258 258 template< typename core_t > 259 259 template< template <class...> class container_t > 260 ast::Pass< core_t >::resultNstmt<container_t> ast::Pass< core_t >::call_accept( const container_t< ptr<Stmt> > & statements ) {260 typename ast::Pass< core_t >::template resultNstmt<container_t> ast::Pass< core_t >::call_accept( const container_t< ptr<Stmt> > & statements ) { 261 261 __pedantic_pass_assert( __visit_children() ); 262 262 if( statements.empty() ) return {}; … … 346 346 template< typename core_t > 347 347 template< template <class...> class container_t, typename node_t > 348 ast::Pass< core_t >::resultN<container_t, node_t> ast::Pass< core_t >::call_accept( const container_t< ast::ptr<node_t> > & container ) {348 typename ast::Pass< core_t >::template resultN<container_t, node_t> ast::Pass< core_t >::call_accept( const container_t< ast::ptr<node_t> > & container ) { 349 349 __pedantic_pass_assert( __visit_children() ); 350 350 if( container.empty() ) return {}; -
src/Common/CodeLocation.h
r12b5e94a r454b4e0 26 26 CodeLocation() = default; 27 27 28 28 29 /// Create a new CodeLocation with the given values. 29 30 CodeLocation( const char* filename, int lineno ) … … 33 34 34 35 CodeLocation( const CodeLocation& rhs ) = default; 36 CodeLocation( CodeLocation&& rhs ) = default; 37 CodeLocation& operator=( const CodeLocation & ) = default; 38 CodeLocation& operator=( CodeLocation && ) = default; 35 39 36 40 bool isSet () const { -
src/ControlStruct/MLEMutator.cc
r12b5e94a r454b4e0 66 66 67 67 // break labels have to come after the statement they break out of, so mutate a statement, then if they inform us 68 // through the breakLabel field tha they need a place to jump to on a break statement, add the break label to the68 // through the breakLabel field that they need a place to jump to on a break statement, add the break label to the 69 69 // body of statements 70 70 void MultiLevelExitMutator::fixBlock( std::list< Statement * > &kids, bool caseClause ) { -
src/Makefile.am
r12b5e94a r454b4e0 59 59 60 60 $(srcdir)/AST/Type.hpp : BasicTypes-gen.cc 61 ${AM_V_GEN}${CXXCOMPILE} $< -o BasicTypes-gen -Wall -Wextra 61 ${AM_V_GEN}${CXXCOMPILE} $< -o BasicTypes-gen -Wall -Wextra -Werror=return-type 62 62 @./BasicTypes-gen 63 63 @rm BasicTypes-gen … … 71 71 EXTRA_DIST = include/cassert include/optional BasicTypes-gen.cc 72 72 73 AM_CXXFLAGS = @HOST_FLAGS@ -Wno-deprecated -Wall -Wextra - DDEBUG_ALL -I./Parser -I$(srcdir)/Parser -I$(srcdir)/include -DYY_NO_INPUT -O3 -g -std=c++14 $(TCMALLOCFLAG)73 AM_CXXFLAGS = @HOST_FLAGS@ -Wno-deprecated -Wall -Wextra -Werror=return-type -DDEBUG_ALL -I./Parser -I$(srcdir)/Parser -I$(srcdir)/include -DYY_NO_INPUT -O3 -g -std=c++14 $(TCMALLOCFLAG) 74 74 AM_LDFLAGS = @HOST_FLAGS@ -Xlinker -export-dynamic 75 75 ARFLAGS = cr
Note:
See TracChangeset
for help on using the changeset viewer.