move test_trace.py so as not to conflict with future tests for the trace module
diff --git a/Python/symtable.c b/Python/symtable.c
index 55c9f47..37bdf2a 100644
--- a/Python/symtable.c
+++ b/Python/symtable.c
@@ -432,7 +432,14 @@
         return PySet_Add(free, name) >= 0;
     }
     if (flags & DEF_BOUND) {
-        SET_SCOPE(scopes, name, LOCAL);
+        if (ste->ste_type == ClassBlock &&
+            !(flags & DEF_PARAM) &&
+            bound && PySet_Contains(bound, name)) {
+            SET_SCOPE(scopes, name, LOCAL_ONLY);
+        }
+        else {
+            SET_SCOPE(scopes, name, LOCAL);
+        }
         if (PySet_Add(local, name) < 0)
             return 0;
         if (PySet_Discard(global, name) < 0)
@@ -489,7 +496,7 @@
         long scope;
         assert(PyLong_Check(v));
         scope = PyLong_AS_LONG(v);
-        if (scope != LOCAL)
+        if (scope != LOCAL && scope != LOCAL_ONLY)
             continue;
         if (!PySet_Contains(free, name))
             continue;