TYPE java.util.logging.LogManager  # Long lived.
TYPE java.security.Provider        # Long lived.

# There is only one ClassLoader instance on iOS.
TYPE java.lang.ClassLoader

# Breaks several false cycles.
FIELD java.lang.Throwable.suppressedExceptions

FIELD java.io.ObjectOutputStream.currentPutField

TYPE java.net.InetAddress.isReachable.$
FIELD java.net.NetworkInterface.children

FIELD java.util.HashSet.map
FIELD java.util.TreeSet.m

FIELD java.util.concurrent.ConcurrentHashMap.CollectionView.map
FIELD java.util.concurrent.ConcurrentSkipListSet.m
FIELD java.util.concurrent.ForkJoinWorkerThread.pool
FIELD java.util.concurrent.Phaser.QNode.phaser
FIELD java.util.concurrent.ThreadPoolExecutor.workers
FIELD java.util.concurrent.ThreadPoolExecutor.workQueue

FIELD java.util.logging.Logger.children

FIELD java.util.stream.AbstractTask.leftChild
FIELD java.util.stream.AbstractTask.rightChild
# Tasks remove themself from completionMap upon completion.
FIELD java.util.stream.ForEachOps.ForEachOrderedTask.completionMap
# Spliterators use a chaining pattern which causes plenty of false cycles.
FIELD java.util.stream.StreamSpliterators.DelegatingSpliterator.s
FIELD java.util.stream.StreamSpliterators.SliceSpliterator.s
FIELD java.util.stream.StreamSpliterators.UnorderedSliceSpliterator.s
FIELD java.util.stream.Streams.ConcatSpliterator.aSpliterator
FIELD java.util.stream.Streams.ConcatSpliterator.bSpliterator

FIELD android.os.AsyncTask.mFuture
FIELD android.os.AsyncTask.mWorker
FIELD android.os.AsyncTask.SerialExecutor.mActive
FIELD android.os.AsyncTask.SerialExecutor.mTasks

# These thread fields are cleared when the thread finishes, regardless of any exceptions.
FIELD java.lang.Thread.interruptActions
FIELD java.lang.Thread.uncaughtExceptionHandler

# libcore.reflect false positives.
FIELD libcore.reflect.ParameterizedTypeImpl.args
FIELD libcore.reflect.TypeVariableImpl.bounds
FIELD libcore.reflect.TypeVariableImpl.declOfVarUser
FIELD libcore.reflect.TypeVariableImpl.genericDeclaration
FIELD libcore.reflect.WildcardTypeImpl.extendsBound
FIELD libcore.reflect.WildcardTypeImpl.superBound

# These types are adapters of each other. If the cycle was created then a stack
# overflow would be a larger problem then the memory leak.
FIELD org.xml.sax.helpers.ParserAdapter.contentHandler org.xml.sax.helpers.XMLReaderAdapter
FIELD org.xml.sax.helpers.ParserAdapter.parser org.xml.sax.helpers.XMLReaderAdapter
FIELD org.xml.sax.helpers.XMLReaderAdapter.AttributesAdapter.attributes org.xml.sax.helpers.ParserAdapter.AttributeListAdapter

FIELD org.apache.harmony.xml.dom.InnerNodeImpl.children

# Types that aren't actually in jre_emul.
TYPE sun.misc.URLClassPath

# TODO(kstanger,tball): Resolve these cycles.
NAMESPACE org.xml
