#
# ChangeLog for src/ControlStruct/MultiLevelExit.cpp
#
# Generated by Trac 1.2.1
# Mar 6, 2025, 12:08:51 AM

Wed, 09 Oct 2024 21:07:59 GMT Andrew Beach <ajbeach@…> [16ba4897]
	* src/AST/Node.hpp (modified)
	* src/AST/Pass.impl.hpp (modified)
	* src/Common/ErrorObjects.hpp (modified)
	* src/Common/SemanticError.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/InitTweak/FixInit.cpp (modified)
	* src/Parser/DeclarationNode.cpp (modified)
	* src/Parser/DeclarationNode.hpp (modified)
	* src/ResolvExpr/CandidateFinder.cpp (modified)
	* src/Validate/CheckAssertions.cpp (modified)
	* src/Validate/ReplaceTypedef.cpp (modified)

	Replaced SemanticErrorException::isEmpty with ...::throwIfNonEmpty. ...


Thu, 18 Jul 2024 16:52:39 GMT Andrew Beach <ajbeach@…> [c248b39]
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* tests/ctrl-flow/.expect/break-misc.txt (added)
	* tests/ctrl-flow/break-misc.cfa (added)
	* tests/exceptions/.expect/try-ctrl-flow.txt (modified)

	Unlabelled breaks were not targetting the correct enclosing control ...


Tue, 16 Jul 2024 21:28:10 GMT Andrew Beach <ajbeach@…> [88bc876]
	* src/AST/Print.cpp (modified)
	* src/CodeGen/CodeGenerator.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* tests/ctrl-flow/.expect/loop_else.txt (modified)
	* tests/ctrl-flow/loop_else.cfa (modified)

	Breaks (and some other control flow) in a loop else clause now work. ...


Wed, 20 Dec 2023 17:04:33 GMT Andrew Beach <ajbeach@…> [0a6d2045]
	* src/ControlStruct/ExceptTranslate.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* tests/exceptions/.expect/try-ctrl-flow.txt (modified)
	* tests/exceptions/.expect/try-leave-catch.txt (added)
	* tests/exceptions/try-ctrl-flow.cfa (modified)
	* tests/exceptions/try-leave-catch.cfa (added)

	You can how use local control flow out of 'catch' clauses. Added a ...


Fri, 15 Dec 2023 02:05:55 GMT Peter A. Buhr <pabuhr@…> [ca9d65e]
	* src/CodeGen/FixMain.cc (modified)
	* src/CodeGen/FixNames.cc (modified)
	* src/Concurrency/Corun.cpp (modified)
	* src/Concurrency/Keywords.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/GenPoly/Box.cpp (modified)
	* src/InitTweak/FixInit.cpp (modified)
	* src/Parser/DeclarationNode.cc (modified)
	* src/Parser/ExpressionNode.cc (modified)
	* src/Parser/TypeData.cc (modified)
	* src/ResolvExpr/Resolver.cc (modified)
	* src/Validate/ReplaceTypedef.cpp (modified)
	* tests/.expect/typedefRedef-ERR1.txt (modified)
	* tests/concurrency/.expect/ctor-check.txt (modified)
	* tests/exceptions/.expect/try-ctrl-flow.txt (modified)
	* tests/raii/.expect/dtor-early-exit-ERR1.txt (modified)
	* tests/raii/.expect/dtor-early-exit-ERR2.txt (modified)

	second attempt at simplifying SemanticError messages


Wed, 13 Dec 2023 14:17:13 GMT Peter A. Buhr <pabuhr@…> [b1f2007]
	* src/AST/Expr.cpp (modified)
	* src/AST/LinkageSpec.cpp (modified)
	* src/AST/TypeSubstitution.hpp (modified)
	* src/Common/SemanticError.cc (modified)
	* src/Common/SemanticError.h (modified)
	* src/ControlStruct/FixLabels.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/Parser/ParseNode.h (modified)
	* src/Parser/TypeData.cc (modified)
	* src/Parser/parser.yy (modified)
	* src/ResolvExpr/CurrentObject.cc (modified)
	* src/Validate/FixQualifiedTypes.cpp (modified)
	* src/Validate/ForallPointerDecay.cpp (modified)
	* src/Validate/ReplaceTypedef.cpp (modified)
	* src/Virtual/ExpandCasts.cc (modified)

	first attempt at simplifying SemanticError and its usage


Thu, 30 Nov 2023 19:04:16 GMT Andrew Beach <ajbeach@…> [83fd57d]
	* src/CodeGen/CodeGenerator.cpp (moved)
	* src/CodeGen/CodeGenerator.hpp (moved)
	* src/CodeGen/GenType.cc (modified)
	* src/CodeGen/Generate.cc (modified)
	* src/CodeGen/module.mk (modified)
	* src/Concurrency/Keywords.cpp (moved)
	* src/Concurrency/Waitfor.cpp (moved)
	* src/Concurrency/module.mk (modified)
	* src/ControlStruct/ExceptDecl.cpp (moved)
	* src/ControlStruct/ExceptTranslate.cpp (moved)
	* src/ControlStruct/LabelGenerator.cpp (moved)
	* src/ControlStruct/LabelGenerator.hpp (moved)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/module.mk (modified)
	* src/GenPoly/Box.cpp (moved)
	* src/GenPoly/InstantiateGeneric.cpp (moved)
	* src/GenPoly/Lvalue.cpp (moved)
	* src/GenPoly/Specialize.cpp (moved)
	* src/GenPoly/module.mk (modified)
	* src/InitTweak/FixInit.cpp (moved)
	* src/InitTweak/module.mk (modified)
	* src/MakeLibCfa.cpp (moved)
	* src/Makefile.am (modified)
	* src/Tuples/TupleExpansion.cpp (modified)
	* src/Validate/FindSpecialDecls.cpp (moved)
	* src/Validate/FixReturnTypes.cpp (modified)
	* src/Validate/module.mk (modified)

	Removed 'New' suffixes, they are no longer needed for disambiguation.


Fri, 08 Sep 2023 21:15:41 GMT Andrew Beach <ajbeach@…> [553f032f]
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* tests/exceptions/.expect/finally-error.txt (deleted)
	* tests/exceptions/.expect/try-ctrl-flow.txt (added)
	* tests/exceptions/try-ctrl-flow.cfa (moved)

	Insert additional checks so that impossible, or just unimplemented, ...


Wed, 06 Sep 2023 16:15:17 GMT Andrew Beach <ajbeach@…> [4a40fca7]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	Clean-up in MultiLevelExit. Primary purpose is to remove some uneeded ...


Wed, 21 Sep 2022 14:52:51 GMT Thierry Delisle <tdelisle@…> [0bd46fd]
	* src/CodeGen/CodeGenerator.cc (modified)
	* src/ControlStruct/LabelGeneratorNew.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/GenPoly/ScrubTyVars.cc (modified)
	* src/Parser/lex.ll (modified)
	* src/Parser/parser.yy (modified)
	* src/ResolvExpr/AlternativeFinder.cc (modified)
	* src/ResolvExpr/Unify.cc (modified)
	* src/Validate/ReplaceTypedef.cpp (modified)

	Fixed several warnings


Mon, 18 Jul 2022 21:13:33 GMT Andrew Beach <ajbeach@…> [0577df2]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	Various pieces of clean-up in MultiLevelExit.


Thu, 12 May 2022 19:10:58 GMT caparsons <caparson@…> [e5628db]
	* benchmark/process-mutilate.py (modified)
	* benchmark/readyQ/bench.go (modified)
	* benchmark/readyQ/churn.cpp (modified)
	* benchmark/readyQ/cycle.cpp (modified)
	* benchmark/readyQ/rq_bench.hpp (modified)
	* benchmark/readyQ/transfer.cfa (modified)
	* benchmark/readyQ/transfer.cpp (modified)
	* benchmark/readyQ/transfer.go (modified)
	* benchmark/readyQ/transfer.rs (modified)
	* benchmark/readyQ/yield.cpp (modified)
	* benchmark/rmit.py (modified)
	* libcfa/src/concurrency/io.cfa (modified)
	* libcfa/src/concurrency/ready_subqueue.hfa (modified)
	* libcfa/src/parseargs.cfa (modified)
	* src/AST/Convert.cpp (modified)
	* src/AST/Copy.cpp (modified)
	* src/AST/Decl.cpp (modified)
	* src/AST/Decl.hpp (modified)
	* src/AST/Expr.hpp (modified)
	* src/AST/Label.hpp (modified)
	* src/AST/Node.hpp (modified)
	* src/AST/Pass.proto.hpp (modified)
	* src/AST/Stmt.cpp (modified)
	* src/AST/Stmt.hpp (modified)
	* src/AST/Util.cpp (modified)
	* src/Common/CodeLocationTools.cpp (modified)
	* src/ControlStruct/LabelGeneratorNew.hpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/Parser/parser.yy (modified)
	* src/Validate/Autogen.cpp (modified)
	* tests/include/.expect/includes.nast.txt (modified)
	* tests/include/includes.cfa (modified)

	Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc


Thu, 12 May 2022 19:10:22 GMT caparsons <caparson@…> [f75e25b]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	removed else clause from loop after inserting it in compund stmt


Thu, 12 May 2022 13:30:38 GMT Andrew Beach <ajbeach@…> [491bb81]
	* src/AST/Stmt.hpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	Fixed some whitespace and indentation issues.


Wed, 11 May 2022 15:33:21 GMT Andrew Beach <ajbeach@…> [3f681b1]
	* src/AST/Label.hpp (modified)
	* src/AST/Node.hpp (modified)
	* src/AST/Pass.proto.hpp (modified)
	* src/AST/Util.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	Added the new invariant checks. There seems to be a few unset ...


Wed, 04 May 2022 16:25:15 GMT caparsons <caparson@…> [7ad47df]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	added else stmt to loops


Mon, 28 Mar 2022 14:41:45 GMT Andrew Beach <ajbeach@…> [400b8be]
	* src/AST/Convert.cpp (modified)
	* src/AST/Fwd.hpp (modified)
	* src/AST/Node.cpp (modified)
	* src/AST/Pass.hpp (modified)
	* src/AST/Pass.impl.hpp (modified)
	* src/AST/Print.cpp (modified)
	* src/AST/Stmt.hpp (modified)
	* src/AST/Visitor.hpp (modified)
	* src/Common/CodeLocationTools.cpp (modified)
	* src/Concurrency/KeywordsNew.cpp (modified)
	* src/ControlStruct/ExceptTranslateNew.cpp (modified)
	* src/ControlStruct/LabelGeneratorNew.cpp (modified)
	* src/ControlStruct/LabelGeneratorNew.hpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/InitTweak/InitTweak.cc (modified)
	* src/ResolvExpr/Resolver.cc (modified)

	Added StmtClause and converted the existing nodes that should be
	clauses.


Fri, 11 Feb 2022 17:21:54 GMT Thierry Delisle <tdelisle@…> [891f707]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	Removed move in MLE as it prevents copy-ellision.


Thu, 03 Feb 2022 04:40:28 GMT Peter A. Buhr <pabuhr@…> [2f52b18]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	more cleanup


Thu, 03 Feb 2022 02:25:37 GMT Peter A. Buhr <pabuhr@…> [6180274]
	* src/AST/Stmt.cpp (modified)
	* src/AST/Stmt.hpp (modified)
	* src/CodeGen/CodeGenerator.cc (modified)
	* src/ControlStruct/MLEMutator.cc (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/Parser/StatementNode.cc (modified)
	* src/SynTree/Statement.cc (modified)
	* src/SynTree/Statement.h (modified)

	more cleanup, make more function parameters const, remove more std::


Wed, 02 Feb 2022 01:22:12 GMT Peter A. Buhr <pabuhr@…> [3b0bc16]
	* src/AST/Convert.cpp (modified)
	* src/AST/Fwd.hpp (modified)
	* src/AST/Node.cpp (modified)
	* src/AST/Pass.hpp (modified)
	* src/AST/Pass.impl.hpp (modified)
	* src/AST/Print.cpp (modified)
	* src/AST/Stmt.hpp (modified)
	* src/AST/Visitor.hpp (modified)
	* src/CodeGen/CodeGenerator.cc (modified)
	* src/CodeGen/CodeGenerator.h (modified)
	* src/Common/CodeLocationTools.cpp (modified)
	* src/Common/PassVisitor.h (modified)
	* src/Common/PassVisitor.impl.h (modified)
	* src/ControlStruct/ForExprMutator.cc (modified)
	* src/ControlStruct/ForExprMutator.h (modified)
	* src/ControlStruct/HoistControlDecls.cpp (modified)
	* src/ControlStruct/LabelFixer.cc (modified)
	* src/ControlStruct/MLEMutator.cc (modified)
	* src/ControlStruct/MLEMutator.h (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/Parser/ParseNode.h (modified)
	* src/Parser/StatementNode.cc (modified)
	* src/Parser/parser.yy (modified)
	* src/ResolvExpr/Resolver.cc (modified)
	* src/SynTree/Mutator.h (modified)
	* src/SynTree/Statement.cc (modified)
	* src/SynTree/Statement.h (modified)
	* src/SynTree/SynTree.h (modified)
	* src/SynTree/Visitor.h (modified)

	change class name WhileStmt to WhileDoStmt, add else clause to ...


Tue, 01 Feb 2022 17:06:24 GMT caparsons <caparson@…> [34c32f0]
	* libcfa/src/concurrency/kernel.cfa (modified)
	* libcfa/src/concurrency/kernel/fwd.hfa (modified)
	* src/AST/Stmt.hpp (modified)
	* src/ControlStruct/ExceptTranslateNew.cpp (modified)
	* src/ControlStruct/FixLabels.cpp (modified)
	* src/ControlStruct/FixLabels.hpp (modified)
	* src/ControlStruct/ForExprMutator.h (modified)
	* src/ControlStruct/HoistControlDecls.cpp (modified)
	* src/ControlStruct/HoistControlDecls.hpp (modified)
	* src/ControlStruct/LabelFixer.cc (modified)
	* src/ControlStruct/LabelFixer.h (modified)
	* src/ControlStruct/LabelGenerator.cc (modified)
	* src/ControlStruct/LabelGenerator.h (modified)
	* src/ControlStruct/LabelGeneratorNew.cpp (added)
	* src/ControlStruct/LabelGeneratorNew.hpp (added)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/MultiLevelExit.hpp (modified)
	* src/ControlStruct/module.mk (modified)
	* src/Parser/ParseNode.h (modified)
	* src/Parser/StatementNode.cc (modified)
	* src/Parser/parser.yy (modified)
	* tests/concurrent/preempt.cfa (modified)
	* tools/auto-complete.md (modified)

	Merge branch 'master' of plg.uwaterloo.ca:software/cfa/cfa-cc


Tue, 01 Feb 2022 17:03:50 GMT caparsons <caparson@…> [3e5db5b4]
	* src/ControlStruct/MultiLevelExit.cpp (modified)

	added comments to loop portion of pass


Tue, 01 Feb 2022 03:35:45 GMT Peter A. Buhr <pabuhr@…> [66daee4]
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/MultiLevelExit.hpp (modified)

	formatting


Mon, 08 Nov 2021 16:12:46 GMT Andrew Beach <ajbeach@…> [cb921d4]
	* src/ControlStruct/FixLabels.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/MultiLevelExit.hpp (modified)

	Changed some of the new ast code so they no longer pass around the ...


Mon, 08 Nov 2021 15:51:48 GMT Andrew Beach <ajbeach@…> [de31a1d]
	* src/ControlStruct/FixLabels.cpp (modified)
	* src/ControlStruct/LabelGenerator.cc (modified)
	* src/ControlStruct/LabelGenerator.h (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/MultiLevelExit.hpp (modified)

	Converted the two LabelGenerator singletons into a single pure-static ...


Fri, 05 Nov 2021 23:44:38 GMT Andrew Beach <ajbeach@…> [817bb3c]
	* src/ControlStruct/FixLabels.cpp (modified)
	* src/ControlStruct/MultiLevelExit.cpp (modified)
	* src/ControlStruct/MultiLevelExit.hpp (modified)

	Clean-up in MultiLevelExit, including a small interface change.


Fri, 05 Nov 2021 17:46:46 GMT Andrew Beach <ajbeach@…> [b8ab91a]
	* src/AST/Decl.hpp (modified)
	* src/AST/Stmt.hpp (modified)
	* src/ControlStruct/FixLabels.cpp (added)
	* src/ControlStruct/FixLabels.hpp (added)
	* src/ControlStruct/LabelGenerator.cc (modified)
	* src/ControlStruct/LabelGenerator.h (modified)
	* src/ControlStruct/MultiLevelExit.cpp (added)
	* src/ControlStruct/MultiLevelExit.hpp (added)
	* src/ControlStruct/module.mk (modified)
	* src/main.cc (modified)

	Fix Labels pass translated. This is fix label, mult-level exit and ...