summaryrefslogtreecommitdiff
path: root/lib/Sema/Scope.cpp
diff options
context:
space:
mode:
authorChandler Carruth <chandlerc@gmail.com>2013-10-22 18:07:04 +0000
committerChandler Carruth <chandlerc@gmail.com>2013-10-22 18:07:04 +0000
commitd661d50118716e9695af5a893a2df45e87a6b3c8 (patch)
treefc75aee2c00d8e803e27cf857c239873222ce37a /lib/Sema/Scope.cpp
parent37acb250dbcf580393c9936c1e71552f84220398 (diff)
downloadclang-d661d50118716e9695af5a893a2df45e87a6b3c8.tar.gz
Revert r193073 and the attempt to fix it in r193170.
This patch wasn't reviewed, and isn't correctly preserving the behaviors relied upon by QT. I don't have a direct example of fallout, but it should go through the standard code review process. For example, it should never have removed the QT test case that was added when fixing those users. git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@193174 91177308-0d34-0410-b5e6-96231b3b80d8
Diffstat (limited to 'lib/Sema/Scope.cpp')
-rw-r--r--lib/Sema/Scope.cpp37
1 files changed, 0 insertions, 37 deletions
diff --git a/lib/Sema/Scope.cpp b/lib/Sema/Scope.cpp
index 8c2a8b3773..10f12ce844 100644
--- a/lib/Sema/Scope.cpp
+++ b/lib/Sema/Scope.cpp
@@ -69,40 +69,3 @@ bool Scope::containedInPrototypeScope() const {
}
return false;
}
-
-void Scope::SetFlags(unsigned FlagsToSet) {
- assert((FlagsToSet & ~(BreakScope | ContinueScope)) == 0 ||
- "Unsupported scope flags");
- assert ((Flags & ControlScope) != 0 || "Must be control scope");
- if (FlagsToSet & BreakScope) {
- assert((Flags & BreakScope) == 0 || "Already set");
- BreakParent = this;
- }
- if (FlagsToSet & ContinueScope) {
- assert((Flags & ContinueScope) == 0 || "Already set");
- ContinueParent = this;
- }
- Flags |= FlagsToSet;
-}
-
-void Scope::ClearFlags(unsigned FlagsToClear) {
- assert((FlagsToClear & ~(BreakScope | ContinueScope)) == 0 ||
- "Unsupported scope flags");
- if (FlagsToClear & BreakScope) {
- assert((Flags & ControlScope) != 0 || "Must be control scope");
- assert((Flags & BreakScope) != 0 || "Already cleared");
- // This is a loop or switch scope. Flag BreakScope is removed temporarily
- // when parsing the loop or switch header, to prevent constructs like this:
- // \code
- // while (({ if(a>N) break; a}))
- // \endcode
- BreakParent = 0;
- }
- if (FlagsToClear & ContinueScope) {
- assert ((Flags & ControlScope) != 0 || "Must be control scope");
- assert((Flags & ContinueScope) != 0 || "Already cleared");
- ContinueParent = 0;
- }
- Flags &= ~FlagsToClear;
-}
-