summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rwxr-xr-xant11
-rw-r--r--docs/examples/actors/producers.scala16
-rw-r--r--docs/examples/jolib/Ref.scala4
-rw-r--r--docs/examples/jolib/parallelOr.scala14
-rw-r--r--docs/examples/monads/callccInterpreter.scala6
-rw-r--r--docs/examples/monads/directInterpreter.scala4
-rw-r--r--docs/examples/monads/simpleInterpreter.scala4
-rw-r--r--docs/examples/monads/stateInterpreter.scala4
-rw-r--r--docs/examples/parsing/ArithmeticParser.scala14
-rw-r--r--docs/examples/parsing/ArithmeticParsers.scala10
-rw-r--r--docs/examples/parsing/JSON.scala14
-rw-r--r--docs/examples/parsing/ListParser.scala2
-rw-r--r--docs/examples/parsing/ListParsers.scala4
-rw-r--r--docs/examples/parsing/MiniML.scala6
-rw-r--r--docs/examples/parsing/lambda/Main.scala4
-rw-r--r--docs/examples/parsing/lambda/TestParser.scala18
-rw-r--r--docs/examples/parsing/lambda/TestSyntax.scala28
-rw-r--r--docs/examples/pilib/elasticBuffer.scala2
-rw-r--r--docs/examples/pilib/handover.scala6
-rw-r--r--docs/examples/pilib/mobilePhoneProtocol.scala10
-rw-r--r--docs/examples/pilib/piNat.scala2
-rw-r--r--docs/examples/pilib/rwlock.scala4
-rw-r--r--docs/examples/pilib/scheduler.scala2
-rw-r--r--docs/examples/pilib/semaphore.scala2
-rw-r--r--docs/examples/pilib/twoPlaceBuffer.scala2
-rw-r--r--docs/examples/plugintemplate/src/plugintemplate/TemplatePlugin.scala2
-rw-r--r--docs/examples/plugintemplate/src/plugintemplate/standalone/Main.scala2
-rw-r--r--docs/examples/tcpoly/collection/HOSeq.scala46
-rw-r--r--docs/examples/tcpoly/monads/Monads.scala14
-rw-r--r--docs/examples/typeinf.scala6
-rw-r--r--docs/examples/xml/phonebook/embeddedBook.scala8
-rw-r--r--docs/examples/xml/phonebook/phonebook.scala14
-rw-r--r--docs/examples/xml/phonebook/phonebook1.scala8
-rw-r--r--docs/examples/xml/phonebook/phonebook2.scala10
-rw-r--r--docs/examples/xml/phonebook/phonebook3.scala32
-rw-r--r--docs/examples/xml/phonebook/verboseBook.scala12
-rw-r--r--project/build/AdditionalResources.scala16
-rw-r--r--project/build/BasicLayer.scala52
-rw-r--r--project/build/BuildInfoEnvironment.scala4
-rw-r--r--project/build/Comparator.scala10
-rw-r--r--project/build/Compilation.scala2
-rw-r--r--project/build/CompilationStep.scala2
-rw-r--r--project/build/ForkSBT.scala8
-rw-r--r--project/build/Packer.scala18
-rwxr-xr-xproject/build/Partest.scala72
-rw-r--r--project/build/PathConfig.scala4
-rw-r--r--project/build/SVN.scala8
-rw-r--r--project/build/ScalaBuildProject.scala4
-rw-r--r--project/build/ScalaSBTBuilder.scala66
-rw-r--r--project/build/ScalaTools.scala2
-rw-r--r--project/build/Scaladoc.scala2
-rw-r--r--test/attic/files/cli/test2/Main.scala2
-rw-r--r--test/benchmarks/src/scala/collection/mutable/hashtable-bench.scala16
-rw-r--r--test/benchmarks/src/scala/collection/parallel/Benchmarking.scala38
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/Bench.scala46
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Arrays.scala10
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/IntAccess.scala14
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/ObjectAccess.scala14
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/UnknownManif.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala8
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala100
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTableSets.scala34
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTables.scala42
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Combine.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Construct.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/IntInit.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/MultipleCombine.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/ParallelHashTries.scala26
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Coder.scala72
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Loader.scala24
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/AggregateLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CopyToArray.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Corresponds.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountHeavy.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountLight.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountList.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DiffHalf.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DropMany.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ExistsLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FilterLight.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FindLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FlatMapLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallHeavy.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallQuickStop.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallStop80k.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachHeavy.scala10
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/GroupBy.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IndexWhere.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IntersectHalf.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/LastIndexWhere.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MapLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MatrixMultiplication.scala22
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MinLight.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PadToDouble.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartialMapLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartitionLight.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PatchHalf.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PlusPlus.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceHeavy.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceLight.scala10
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceList.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceNew.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReducePrime.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/RemoveDuplicates.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Resettable.scala32
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Reverse.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReverseMap.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SameElementsLong.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanLight.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanMedium.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SegmentLength.scala4
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SequentialOps.scala142
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceFew.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMany.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMedium.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SpanLight.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SplitHalf.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SumLight.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeMany.scala2
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeWhileLight.scala6
-rw-r--r--test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_range/RangeBenches.scala54
-rw-r--r--test/benchmarks/src/scala/util/HashSpeedTest.scala30
-rw-r--r--test/checker-tests/fail10.scala4
-rw-r--r--test/checker-tests/fail12.scala6
-rw-r--r--test/checker-tests/fail2.scala4
-rw-r--r--test/checker-tests/fail6.scala12
-rw-r--r--test/checker-tests/fail7.scala4
-rwxr-xr-xtest/disabled-windows/script/utf8.scala4
-rw-r--r--test/disabled/coder/Coder.scala74
-rw-r--r--test/disabled/coder/dict.txt58111
-rw-r--r--test/disabled/jvm/JavaInteraction.scala2
-rw-r--r--test/disabled/pos/spec-List.scala36
-rw-r--r--test/disabled/pos/t1737/A.java (renamed from test/files/pos/t1737/A.java)0
-rw-r--r--test/disabled/pos/t1737/B.java (renamed from test/files/pos/t1737/B.java)0
-rw-r--r--test/disabled/pos/t1737/c.scala (renamed from test/files/pos/t1737/c.scala)0
-rw-r--r--test/disabled/presentation/ide-bug-1000450/src/Ranges.scala2
-rw-r--r--test/disabled/presentation/ide-bug-1000545/src/CompletionFails.scala10
-rw-r--r--test/disabled/presentation/simple-tests/src/Tester.scala18
-rw-r--r--test/disabled/run/applet-prop.scala12
-rw-r--r--test/disabled/run/coder2/Coder2.scala72
-rw-r--r--test/disabled/run/javap.scala2
-rw-r--r--test/disabled/run/lisp.scala4
-rw-r--r--test/disabled/run/script-positions.scala20
-rw-r--r--test/disabled/run/t4279.scala2
-rw-r--r--test/disabled/scalacheck/HashTrieSplit.scala2
-rwxr-xr-xtest/disabled/script/t1017.scala4
-rw-r--r--test/files/buildmanager/freshnames/A.scala4
-rw-r--r--test/files/buildmanager/infer/A.scala2
-rw-r--r--test/files/buildmanager/overloaded_1/A.scala2
-rw-r--r--test/files/buildmanager/t2559/D.scala2
-rw-r--r--test/files/buildmanager/t2562/A.scala2
-rw-r--r--test/files/buildmanager/t2562/B.scala2
-rw-r--r--test/files/buildmanager/t2562/t2562.changes/A2.scala2
-rw-r--r--test/files/buildmanager/t3133/A.java6
-rw-r--r--test/files/continuations-neg/function0.scala8
-rw-r--r--test/files/continuations-neg/function2.scala8
-rw-r--r--test/files/continuations-neg/function3.scala8
-rw-r--r--test/files/continuations-neg/infer0.scala6
-rw-r--r--test/files/continuations-neg/infer2.check2
-rw-r--r--test/files/continuations-neg/infer2.scala12
-rw-r--r--test/files/continuations-neg/lazy.scala14
-rw-r--r--test/files/continuations-neg/t2285.scala4
-rw-r--r--test/files/continuations-neg/t2949.scala2
-rw-r--r--test/files/continuations-neg/t3628.scala2
-rw-r--r--test/files/continuations-neg/trycatch2.scala2
-rwxr-xr-xtest/files/continuations-run/basics.scala6
-rw-r--r--test/files/continuations-run/function1.scala8
-rw-r--r--test/files/continuations-run/function4.scala8
-rw-r--r--test/files/continuations-run/function5.scala8
-rw-r--r--test/files/continuations-run/function6.scala10
-rw-r--r--test/files/continuations-run/ifelse0.scala6
-rw-r--r--test/files/continuations-run/ifelse1.scala6
-rw-r--r--test/files/continuations-run/ifelse2.scala6
-rw-r--r--test/files/continuations-run/ifelse3.scala10
-rw-r--r--test/files/continuations-run/infer1.scala10
-rw-r--r--test/files/continuations-run/match0.scala6
-rw-r--r--test/files/continuations-run/match1.scala6
-rw-r--r--test/files/continuations-run/match2.scala8
-rw-r--r--test/files/continuations-run/t3199.scala40
-rw-r--r--test/files/continuations-run/t3199b.scala6
-rw-r--r--test/files/continuations-run/t3223.scala6
-rw-r--r--test/files/continuations-run/t3225.scala6
-rw-r--r--test/files/continuations-run/trycatch0.scala4
-rw-r--r--test/files/continuations-run/trycatch1.scala2
-rw-r--r--test/files/continuations-run/while0.scala6
-rw-r--r--test/files/continuations-run/while1.scala6
-rw-r--r--test/files/continuations-run/while2.scala6
-rw-r--r--test/files/detach-run/actor/actor.scala2
-rw-r--r--test/files/jvm/actor-sync-send-timeout.scala4
-rw-r--r--test/files/jvm/actor-uncaught-exception.scala54
-rw-r--r--test/files/jvm/actor-uncaught-exception2.scala54
-rw-r--r--test/files/jvm/backendBugUnapply.scala8
-rw-r--r--test/files/jvm/console.scala2
-rw-r--r--test/files/jvm/deprecation/Test_1.scala2
-rw-r--r--test/files/jvm/future-termination.scala26
-rw-r--r--test/files/jvm/inner.scala2
-rw-r--r--test/files/jvm/interpreter.check6
-rw-r--r--test/files/jvm/interpreter.scala8
-rw-r--r--test/files/jvm/methvsfield.java6
-rw-r--r--test/files/jvm/natives.scala6
-rw-r--r--test/files/jvm/protectedacc.scala16
-rw-r--r--test/files/jvm/serialization.scala28
-rw-r--r--test/files/jvm/t1461.scala2
-rw-r--r--test/files/jvm/t1464/MyTrait.scala2
-rw-r--r--test/files/jvm/t1600.scala24
-rw-r--r--test/files/jvm/t2570/Test.scala2
-rw-r--r--test/files/jvm/t3003/Test_1.scala2
-rw-r--r--test/files/jvm/t560bis.scala4
-rw-r--r--test/files/jvm/throws-annot.scala10
-rw-r--r--test/files/jvm/typerep.scala2
-rw-r--r--test/files/jvm/unittest_io_Jvm.check2
-rw-r--r--test/files/jvm/unittest_io_Jvm.scala2
-rw-r--r--test/files/jvm/unittest_xml.scala8
-rw-r--r--test/files/jvm/varargs/JavaClass.java2
-rw-r--r--test/files/jvm/varargs/VaClass.scala4
-rw-r--r--test/files/jvm/xml01.scala48
-rw-r--r--test/files/jvm/xml02.scala10
-rw-r--r--test/files/jvm/xmlattr.scala6
-rw-r--r--test/files/jvm/xmlmore.scala2
-rw-r--r--test/files/jvm/xmlpull.scala4
-rw-r--r--test/files/jvm/xmlstuff.scala42
-rw-r--r--test/files/neg/abstract-class-2.scala4
-rw-r--r--test/files/neg/abstract-inaccessible.scala2
-rw-r--r--test/files/neg/accesses.scala2
-rw-r--r--test/files/neg/array-not-seq.scala4
-rw-r--r--test/files/neg/check-dead.scala12
-rw-r--r--test/files/neg/checksensible.scala24
-rw-r--r--test/files/neg/choices.scala2
-rw-r--r--test/files/neg/exhausting.scala8
-rw-r--r--test/files/neg/forward.scala8
-rw-r--r--test/files/neg/found-req-variance.scala14
-rw-r--r--test/files/neg/gadts1.check2
-rw-r--r--test/files/neg/gadts1.scala4
-rw-r--r--test/files/neg/implicits.scala8
-rw-r--r--test/files/neg/java-access-neg/J.java4
-rw-r--r--test/files/neg/java-access-neg/S2.scala8
-rw-r--r--test/files/neg/lazy-override.scala2
-rw-r--r--test/files/neg/lazyvals.scala4
-rw-r--r--test/files/neg/lubs.scala2
-rw-r--r--test/files/neg/migration28.scala6
-rw-r--r--test/files/neg/null-unsoundness.scala2
-rw-r--r--test/files/neg/object-not-a-value.scala2
-rw-r--r--test/files/neg/overload-msg.scala2
-rw-r--r--test/files/neg/overloaded-implicit.scala8
-rw-r--r--test/files/neg/override-object-no.scala2
-rw-r--r--test/files/neg/pat_unreachable.scala2
-rw-r--r--test/files/neg/patmat-type-check.scala12
-rw-r--r--test/files/neg/patmatexhaust.scala22
-rw-r--r--test/files/neg/patternalts.scala2
-rw-r--r--test/files/neg/protected-constructors.scala2
-rw-r--r--test/files/neg/saito.scala4
-rw-r--r--test/files/neg/sensitive.scala6
-rw-r--r--test/files/neg/spec-overrides.scala2
-rw-r--r--test/files/neg/structural.scala28
-rw-r--r--test/files/neg/switch.scala16
-rw-r--r--test/files/neg/t0117.scala2
-rw-r--r--test/files/neg/t0152.scala2
-rw-r--r--test/files/neg/t0218.check2
-rw-r--r--test/files/neg/t0218.scala4
-rw-r--r--test/files/neg/t0503.scala2
-rw-r--r--test/files/neg/t0764.scala2
-rw-r--r--test/files/neg/t0816.scala2
-rw-r--r--test/files/neg/t1011.scala2
-rw-r--r--test/files/neg/t1112.scala6
-rw-r--r--test/files/neg/t112706A.check2
-rw-r--r--test/files/neg/t112706A.scala2
-rw-r--r--test/files/neg/t1183.scala4
-rw-r--r--test/files/neg/t1477.scala2
-rw-r--r--test/files/neg/t1523.scala4
-rw-r--r--test/files/neg/t1623.scala4
-rw-r--r--test/files/neg/t1705.scala2
-rw-r--r--test/files/neg/t1878.scala8
-rw-r--r--test/files/neg/t2148.scala4
-rw-r--r--test/files/neg/t2421b.scala2
-rw-r--r--test/files/neg/t2441.scala4
-rw-r--r--test/files/neg/t2641.scala6
-rw-r--r--test/files/neg/t2870.check2
-rw-r--r--test/files/neg/t2870.scala6
-rw-r--r--test/files/neg/t2910.scala4
-rw-r--r--test/files/neg/t2918.check6
-rw-r--r--test/files/neg/t2918.scala2
-rw-r--r--test/files/neg/t3015.check4
-rw-r--r--test/files/neg/t3015.scala2
-rw-r--r--test/files/neg/t3118.scala4
-rw-r--r--test/files/neg/t3224.scala18
-rw-r--r--test/files/neg/t3399.scala4
-rw-r--r--test/files/neg/t3453.scala6
-rw-r--r--test/files/neg/t3507.scala2
-rw-r--r--test/files/neg/t3683b.scala2
-rw-r--r--test/files/neg/t3714-neg.scala2
-rw-r--r--test/files/neg/t3736.scala4
-rw-r--r--test/files/neg/t3757/B.scala2
-rw-r--r--test/files/neg/t3776.check2
-rw-r--r--test/files/neg/t3776.scala2
-rw-r--r--test/files/neg/t3816.scala6
-rw-r--r--test/files/neg/t3987.scala2
-rw-r--r--test/files/neg/t4079/t4079_1.scala6
-rw-r--r--test/files/neg/t4174.scala2
-rw-r--r--test/files/neg/t4196.scala4
-rw-r--r--test/files/neg/t4217.check2
-rw-r--r--test/files/neg/t4217.scala2
-rw-r--r--test/files/neg/t4221.scala2
-rw-r--r--test/files/neg/t4417.scala4
-rw-r--r--test/files/neg/t4431.scala2
-rw-r--r--test/files/neg/t4457_1.scala2
-rw-r--r--test/files/neg/t4457_2.scala2
-rw-r--r--test/files/neg/t4851/J.java6
-rw-r--r--test/files/neg/t4851/J2.java4
-rw-r--r--test/files/neg/t4851/S.scala4
-rw-r--r--test/files/neg/t4877.scala2
-rw-r--r--test/files/neg/t5120.scala2
-rw-r--r--test/files/neg/t520.scala2
-rw-r--r--test/files/neg/t558.scala2
-rw-r--r--test/files/neg/t563.scala2
-rw-r--r--test/files/neg/t576.scala8
-rw-r--r--test/files/neg/t588.scala8
-rw-r--r--test/files/neg/t591.scala22
-rw-r--r--test/files/neg/t608.scala2
-rw-r--r--test/files/neg/t692.check2
-rw-r--r--test/files/neg/t692.scala6
-rw-r--r--test/files/neg/t693.check2
-rw-r--r--test/files/neg/t693.scala2
-rw-r--r--test/files/neg/t715.scala2
-rw-r--r--test/files/neg/t783.scala2
-rw-r--r--test/files/neg/t798.scala2
-rw-r--r--test/files/neg/t836.scala2
-rw-r--r--test/files/neg/t856.scala2
-rw-r--r--test/files/neg/t876.scala6
-rw-r--r--test/files/neg/t877.scala2
-rw-r--r--test/files/neg/t944.scala6
-rw-r--r--test/files/neg/tailrec.scala16
-rw-r--r--test/files/neg/tcpoly_infer_ticket1162.scala4
-rw-r--r--test/files/neg/tcpoly_ticket2101.scala8
-rw-r--r--test/files/neg/tcpoly_typealias.scala6
-rw-r--r--test/files/neg/tcpoly_variance_enforce.scala16
-rw-r--r--test/files/neg/type-diagnostics.scala4
-rw-r--r--test/files/neg/unit-returns-value.scala2
-rw-r--r--test/files/neg/varargs.scala12
-rw-r--r--test/files/neg/variances.check4
-rw-r--r--test/files/neg/variances.scala14
-rw-r--r--test/files/neg/viewtest.scala6
-rw-r--r--test/files/pos/List1.scala2
-rw-r--r--test/files/pos/MailBox.scala4
-rw-r--r--test/files/pos/Transactions.scala18
-rw-r--r--test/files/pos/array-interfaces.scala2
-rw-r--r--test/files/pos/arrays2.scala4
-rw-r--r--test/files/pos/builders.scala10
-rw-r--r--test/files/pos/caseclass-productN.scala8
-rw-r--r--test/files/pos/channels.scala6
-rw-r--r--test/files/pos/clsrefine.scala4
-rw-r--r--test/files/pos/collectGenericCC.scala6
-rw-r--r--test/files/pos/context.scala6
-rw-r--r--test/files/pos/cyclics-pos.scala14
-rw-r--r--test/files/pos/depmet_implicit_chaining_zw.scala2
-rw-r--r--test/files/pos/depmet_implicit_norm_ret.scala18
-rw-r--r--test/files/pos/depmet_implicit_oopsla_session.scala12
-rw-r--r--test/files/pos/depmet_implicit_oopsla_session_2.scala8
-rw-r--r--test/files/pos/depmet_implicit_oopsla_session_simpler.scala4
-rw-r--r--test/files/pos/depmet_implicit_oopsla_zipwith.scala6
-rw-r--r--test/files/pos/depmet_implicit_tpbetareduce.scala4
-rw-r--r--test/files/pos/elidable-tparams.scala2
-rw-r--r--test/files/pos/gadt-gilles.scala2
-rw-r--r--test/files/pos/gadts2.scala4
-rw-r--r--test/files/pos/generic-sigs.scala4
-rw-r--r--test/files/pos/gosh.scala16
-rw-r--r--test/files/pos/gui.scala8
-rw-r--r--test/files/pos/hk-infer.scala2
-rw-r--r--test/files/pos/hkarray.scala2
-rw-r--r--test/files/pos/hkrange.scala2
-rw-r--r--test/files/pos/imp2-pos.scala2
-rw-r--r--test/files/pos/implicit-infix-ops.scala6
-rw-r--r--test/files/pos/implicits.scala34
-rw-r--r--test/files/pos/imports-pos.scala4
-rw-r--r--test/files/pos/infer2-pos.scala2
-rw-r--r--test/files/pos/inferbroadtype.scala2
-rw-r--r--test/files/pos/inliner2.scala8
-rw-r--r--test/files/pos/java-access-pos/J.java4
-rw-r--r--test/files/pos/java-access-pos/S1.scala10
-rw-r--r--test/files/pos/javaReadsSigs/fromjava.java8
-rw-r--r--test/files/pos/lambdalift.scala2
-rw-r--r--test/files/pos/listpattern.scala2
-rw-r--r--test/files/pos/looping-jsig.scala8
-rw-r--r--test/files/pos/michel6.scala2
-rw-r--r--test/files/pos/needstypeearly.scala4
-rw-r--r--test/files/pos/nothing_manifest_disambig.scala6
-rw-r--r--test/files/pos/nullary.scala4
-rw-r--r--test/files/pos/nullary_poly.scala4
-rw-r--r--test/files/pos/override-object-yes.scala4
-rw-r--r--test/files/pos/partialfun.scala2
-rw-r--r--test/files/pos/pat_gilles.scala2
-rw-r--r--test/files/pos/propagate.scala2
-rw-r--r--test/files/pos/return_thistype.scala6
-rw-r--r--test/files/pos/scala-singleton.scala14
-rw-r--r--test/files/pos/scoping1.scala2
-rw-r--r--test/files/pos/selftails.scala6
-rw-r--r--test/files/pos/seq-ordering.scala2
-rw-r--r--test/files/pos/signatures/Test.java2
-rw-r--r--test/files/pos/signatures/sig.scala2
-rw-r--r--test/files/pos/spec-Function1.scala4
-rw-r--r--test/files/pos/spec-arrays.scala30
-rw-r--r--test/files/pos/spec-asseenfrom.scala2
-rw-r--r--test/files/pos/spec-cyclic.scala8
-rw-r--r--test/files/pos/spec-funs.scala2
-rw-r--r--test/files/pos/spec-params.scala6
-rw-r--r--test/files/pos/spec-sealed.scala4
-rw-r--r--test/files/pos/spec-short.scala6
-rw-r--r--test/files/pos/spec-t3497.scala2
-rw-r--r--test/files/pos/spec-tailcall.scala4
-rw-r--r--test/files/pos/spec-traits.scala10
-rw-r--r--test/files/pos/spec-vector.scala2
-rw-r--r--test/files/pos/spec.scala10
-rw-r--r--test/files/pos/strings.scala2
-rw-r--r--test/files/pos/sudoku.scala10
-rw-r--r--test/files/pos/super/Super_1.java2
-rw-r--r--test/files/pos/t0031.scala2
-rw-r--r--test/files/pos/t0066.scala2
-rw-r--r--test/files/pos/t0069.scala2
-rw-r--r--test/files/pos/t0227.scala2
-rw-r--r--test/files/pos/t0288/Foo.scala2
-rw-r--r--test/files/pos/t0288/Outer.java2
-rw-r--r--test/files/pos/t0305.scala2
-rw-r--r--test/files/pos/t0438.scala4
-rw-r--r--test/files/pos/t0453.scala2
-rw-r--r--test/files/pos/t0599.scala2
-rw-r--r--test/files/pos/t0625.scala2
-rw-r--r--test/files/pos/t0646.scala4
-rw-r--r--test/files/pos/t0770.scala2
-rw-r--r--test/files/pos/t0774/unrelated.scala4
-rw-r--r--test/files/pos/t0786.scala12
-rw-r--r--test/files/pos/t1000.scala2
-rw-r--r--test/files/pos/t1035.scala12
-rw-r--r--test/files/pos/t1048.scala4
-rw-r--r--test/files/pos/t1059.scala2
-rw-r--r--test/files/pos/t1071.scala2
-rw-r--r--test/files/pos/t1090.scala2
-rw-r--r--test/files/pos/t1107/O.scala4
-rw-r--r--test/files/pos/t1107/T.scala2
-rw-r--r--test/files/pos/t1123.scala2
-rw-r--r--test/files/pos/t1164.scala28
-rw-r--r--test/files/pos/t1168.scala2
-rw-r--r--test/files/pos/t1210a.scala4
-rw-r--r--test/files/pos/t122.scala2
-rw-r--r--test/files/pos/t1236.scala2
-rw-r--r--test/files/pos/t1237.scala6
-rw-r--r--test/files/pos/t1254/t1254.java2
-rw-r--r--test/files/pos/t1263/test.scala2
-rw-r--r--test/files/pos/t1272.scala4
-rw-r--r--test/files/pos/t1292.scala2
-rw-r--r--test/files/pos/t1318.scala2
-rw-r--r--test/files/pos/t1385.scala2
-rw-r--r--test/files/pos/t1480.scala4
-rwxr-xr-xtest/files/pos/t1545.scala4
-rw-r--r--test/files/pos/t1560.scala8
-rw-r--r--test/files/pos/t1565.scala2
-rw-r--r--test/files/pos/t1591b.scala6
-rw-r--r--test/files/pos/t1711/Seq.scala2
-rw-r--r--test/files/pos/t1722-A.scala4
-rwxr-xr-xtest/files/pos/t1722/Test.scala2
-rwxr-xr-xtest/files/pos/t1722/Top.scala4
-rw-r--r--test/files/pos/t1745/J.java6
-rwxr-xr-xtest/files/pos/t1756.scala12
-rw-r--r--test/files/pos/t1761.scala2
-rw-r--r--test/files/pos/t1798.scala2
-rw-r--r--test/files/pos/t1840/J.java4
-rw-r--r--test/files/pos/t1974.scala6
-rw-r--r--test/files/pos/t2023.scala4
-rw-r--r--test/files/pos/t2060.scala2
-rw-r--r--test/files/pos/t2081.scala2
-rw-r--r--test/files/pos/t2082.scala16
-rw-r--r--test/files/pos/t2130-2.scala2
-rw-r--r--test/files/pos/t2133.scala2
-rw-r--r--test/files/pos/t2168.scala4
-rw-r--r--test/files/pos/t2171.scala2
-rw-r--r--test/files/pos/t2261.scala2
-rw-r--r--test/files/pos/t2281.scala4
-rw-r--r--test/files/pos/t2305.scala4
-rw-r--r--test/files/pos/t2310.scala12
-rw-r--r--test/files/pos/t2399.scala6
-rw-r--r--test/files/pos/t2413/TestScalac.scala2
-rw-r--r--test/files/pos/t2421.scala6
-rw-r--r--test/files/pos/t2421_delitedsl.scala10
-rw-r--r--test/files/pos/t2421b_pos.scala2
-rwxr-xr-xtest/files/pos/t2429.scala4
-rw-r--r--test/files/pos/t2444.scala6
-rw-r--r--test/files/pos/t2464/ScalaOne_1.scala2
-rw-r--r--test/files/pos/t247.scala2
-rwxr-xr-xtest/files/pos/t2504.scala2
-rwxr-xr-xtest/files/pos/t2545.scala4
-rw-r--r--test/files/pos/t2569/Child.scala6
-rw-r--r--test/files/pos/t2569/Parent.java6
-rw-r--r--test/files/pos/t262.scala4
-rw-r--r--test/files/pos/t2665.scala2
-rw-r--r--test/files/pos/t2669.scala2
-rw-r--r--test/files/pos/t2691.scala2
-rw-r--r--test/files/pos/t2726/SQLBuilder_1.scala4
-rw-r--r--test/files/pos/t2910.scala6
-rwxr-xr-xtest/files/pos/t2913.scala6
-rw-r--r--test/files/pos/t2939.scala4
-rw-r--r--test/files/pos/t2940/Error.scala4
-rw-r--r--test/files/pos/t2994a.scala4
-rw-r--r--test/files/pos/t3020.scala2
-rw-r--r--test/files/pos/t3079.scala4
-rw-r--r--test/files/pos/t3106.scala2
-rw-r--r--test/files/pos/t3136.scala2
-rw-r--r--test/files/pos/t3174b.scala6
-rw-r--r--test/files/pos/t3175-pos.scala6
-rw-r--r--test/files/pos/t3177.scala14
-rw-r--r--test/files/pos/t3234.scala2
-rw-r--r--test/files/pos/t3274.scala6
-rw-r--r--test/files/pos/t3312.scala2
-rw-r--r--test/files/pos/t3349/AbstractTupleSet.java2
-rw-r--r--test/files/pos/t3411.scala2
-rw-r--r--test/files/pos/t3429/A.scala4
-rw-r--r--test/files/pos/t3430.scala2
-rw-r--r--test/files/pos/t3440.scala2
-rw-r--r--test/files/pos/t3521/DoubleValue.java2
-rw-r--r--test/files/pos/t3528.scala2
-rw-r--r--test/files/pos/t3568.scala2
-rw-r--r--test/files/pos/t3578.scala2
-rw-r--r--test/files/pos/t3582.scala2
-rw-r--r--test/files/pos/t3636.scala4
-rw-r--r--test/files/pos/t3670.scala2
-rw-r--r--test/files/pos/t3671.scala2
-rw-r--r--test/files/pos/t3731.scala2
-rw-r--r--test/files/pos/t3837.scala4
-rw-r--r--test/files/pos/t3856.scala2
-rw-r--r--test/files/pos/t3864/tuples_1.scala16
-rw-r--r--test/files/pos/t3866.scala2
-rw-r--r--test/files/pos/t3898.scala2
-rw-r--r--test/files/pos/t3927.scala2
-rw-r--r--test/files/pos/t3938/Parent.java2
-rw-r--r--test/files/pos/t3938/UseParent.scala2
-rw-r--r--test/files/pos/t3972.scala2
-rw-r--r--test/files/pos/t4020.scala6
-rw-r--r--test/files/pos/t4202.scala2
-rw-r--r--test/files/pos/t4220.scala2
-rw-r--r--test/files/pos/t4243.scala10
-rw-r--r--test/files/pos/t4266.scala12
-rw-r--r--test/files/pos/t4269.scala6
-rw-r--r--test/files/pos/t4275.scala2
-rw-r--r--test/files/pos/t430-feb09.scala4
-rw-r--r--test/files/pos/t4432.scala4
-rw-r--r--test/files/pos/t4457_1.scala2
-rw-r--r--test/files/pos/t4501.scala2
-rw-r--r--test/files/pos/t460.scala6
-rw-r--r--test/files/pos/t4603/S.scala2
-rw-r--r--test/files/pos/t4716.scala2
-rw-r--r--test/files/pos/t4840.scala2
-rw-r--r--test/files/pos/t4853.scala2
-rw-r--r--test/files/pos/t5127.scala2
-rw-r--r--test/files/pos/t516.scala4
-rw-r--r--test/files/pos/t573.scala10
-rw-r--r--test/files/pos/t577.scala10
-rw-r--r--test/files/pos/t599.scala2
-rw-r--r--test/files/pos/t602.scala2
-rw-r--r--test/files/pos/t613.scala4
-rw-r--r--test/files/pos/t616.scala2
-rw-r--r--test/files/pos/t651.scala4
-rw-r--r--test/files/pos/t675.scala6
-rw-r--r--test/files/pos/t690.scala2
-rw-r--r--test/files/pos/t711.scala2
-rw-r--r--test/files/pos/t715/meredith_1.scala16
-rw-r--r--test/files/pos/t757.scala4
-rw-r--r--test/files/pos/t758.scala10
-rw-r--r--test/files/pos/t767.scala2
-rw-r--r--test/files/pos/t788.scala2
-rw-r--r--test/files/pos/t802.scala8
-rw-r--r--test/files/pos/t807.scala2
-rw-r--r--test/files/pos/t927.scala2
-rw-r--r--test/files/pos/t946.scala2
-rw-r--r--test/files/pos/tcpoly_boundedmonad.scala18
-rw-r--r--test/files/pos/tcpoly_bounds1.scala4
-rw-r--r--test/files/pos/tcpoly_checkkinds_mix.scala6
-rw-r--r--test/files/pos/tcpoly_gm.scala6
-rw-r--r--test/files/pos/tcpoly_higherorder_bound_method.scala2
-rw-r--r--test/files/pos/tcpoly_infer_explicit_tuple_wrapper.scala4
-rw-r--r--test/files/pos/tcpoly_late_method_params.scala2
-rw-r--r--test/files/pos/tcpoly_method.scala2
-rw-r--r--test/files/pos/tcpoly_overloaded.scala14
-rw-r--r--test/files/pos/tcpoly_poly.scala2
-rw-r--r--test/files/pos/tcpoly_return_overriding.scala2
-rw-r--r--test/files/pos/tcpoly_seq.scala44
-rw-r--r--test/files/pos/tcpoly_seq_typealias.scala40
-rw-r--r--test/files/pos/ted.scala2
-rw-r--r--test/files/pos/test5.scala4
-rw-r--r--test/files/pos/test5refine.scala4
-rw-r--r--test/files/pos/testCoercionThis.scala6
-rw-r--r--test/files/pos/thistypes.scala2
-rw-r--r--test/files/pos/ticket0137.scala6
-rw-r--r--test/files/pos/traits.scala4
-rw-r--r--test/files/pos/typealias_dubious.scala10
-rw-r--r--test/files/pos/typealiases.scala14
-rw-r--r--test/files/pos/unapplyNeedsMemberType.scala2
-rw-r--r--test/files/pos/unapplySeq.scala2
-rw-r--r--test/files/pos/unapplyVal.scala4
-rw-r--r--test/files/pos/virtpatmat_castbinder.scala2
-rw-r--r--test/files/pos/virtpatmat_exist1.scala2
-rw-r--r--test/files/pos/virtpatmat_exist2.scala10
-rw-r--r--test/files/pos/virtpatmat_exist3.scala4
-rw-r--r--test/files/pos/virtpatmat_gadt_array.scala10
-rw-r--r--test/files/positions/Anon.scala2
-rw-r--r--test/files/positions/Enclosing1.scala2
-rw-r--r--test/files/positions/ExcludedPrefix1.scala16
-rw-r--r--test/files/positions/Overlap3.scala2
-rw-r--r--test/files/positions/Scaladoc2.scala4
-rw-r--r--test/files/positions/Scaladoc3.scala2
-rw-r--r--test/files/positions/Scaladoc4.scala2
-rw-r--r--test/files/positions/Scaladoc6.scala2
-rw-r--r--test/files/presentation/akka/src/com/eaio/uuid/UUIDGen.java10
-rw-r--r--test/files/presentation/akka/src/pi.scala2
-rw-r--r--test/files/presentation/callcc-interpreter/src/CallccInterpreter.scala4
-rw-r--r--test/files/presentation/ide-bug-1000475/src/Foo.scala2
-rw-r--r--test/files/presentation/ide-bug-1000531/src/CrashOnLoad.scala4
-rw-r--r--test/files/presentation/implicit-member/src/ImplicitMember.scala4
-rw-r--r--test/files/presentation/ping-pong/src/PingPong.scala14
-rw-r--r--test/files/presentation/random/src/Random.scala16
-rw-r--r--test/files/presentation/timeofday/src/timeofday.scala10
-rw-r--r--test/files/res/t597/Test.scala2
-rw-r--r--test/files/res/t722/Parser.scala2
-rw-r--r--test/files/res/t735/ScalaExpressions.scala2
-rw-r--r--test/files/res/t743/BracesXXX.scala2
-rw-r--r--test/files/res/t743/ParserXXX.scala6
-rw-r--r--test/files/res/t785/ScalaNewTyper.scala2
-rw-r--r--test/files/res/t831/NewScalaParserXXX.scala18
-rw-r--r--test/files/run/Course-2002-02.scala8
-rw-r--r--test/files/run/Course-2002-05.scala2
-rw-r--r--test/files/run/Course-2002-08.scala2
-rw-r--r--test/files/run/OrderingTest.scala8
-rw-r--r--test/files/run/ReplacementMatching.scala10
-rw-r--r--test/files/run/ReverseSeqView.scala4
-rw-r--r--test/files/run/UnrolledBuffer.scala44
-rw-r--r--test/files/run/absoverride.scala10
-rw-r--r--test/files/run/arrayclone.scala24
-rw-r--r--test/files/run/arraycopy.scala2
-rw-r--r--test/files/run/arrayview.scala2
-rw-r--r--test/files/run/bigDecimalCache.scala4
-rw-r--r--test/files/run/bigDecimalTest.scala2
-rw-r--r--test/files/run/boolexprs.scala2
-rw-r--r--test/files/run/bugs.scala2
-rw-r--r--test/files/run/caseClassEquality.scala12
-rw-r--r--test/files/run/castsingleton.scala2
-rw-r--r--test/files/run/checked.scala6
-rw-r--r--test/files/run/classof.scala4
-rw-r--r--test/files/run/code.scala2
-rw-r--r--test/files/run/collections-toSelf.scala2
-rw-r--r--test/files/run/collections.scala4
-rw-r--r--test/files/run/colltest1.scala8
-rw-r--r--test/files/run/comparable-comparator.scala8
-rw-r--r--test/files/run/concat-two-strings.scala2
-rw-r--r--test/files/run/constrained-types.check4
-rw-r--r--test/files/run/constrained-types.scala4
-rw-r--r--test/files/run/ctor-order.scala2
-rw-r--r--test/files/run/distinct.scala2
-rw-r--r--test/files/run/elidable-noflags.scala2
-rw-r--r--test/files/run/elidable.scala2
-rw-r--r--test/files/run/emptypf.scala4
-rw-r--r--test/files/run/equality.scala10
-rw-r--r--test/files/run/exceptions-2.scala42
-rw-r--r--test/files/run/existentials.scala4
-rw-r--r--test/files/run/finally.scala12
-rw-r--r--test/files/run/flat-flat-flat.scala2
-rw-r--r--test/files/run/forvaleq.scala30
-rw-r--r--test/files/run/gadts.scala4
-rw-r--r--test/files/run/getClassTest.scala10
-rw-r--r--test/files/run/global-showdef.scala8
-rw-r--r--test/files/run/groupby.scala6
-rw-r--r--test/files/run/hashCodeBoxesRunTime.scala12
-rw-r--r--test/files/run/hashhash.scala2
-rw-r--r--test/files/run/indexedSeq.scala4
-rw-r--r--test/files/run/infix.scala2
-rw-r--r--test/files/run/inliner-infer.scala6
-rw-r--r--test/files/run/inner-obj-auto.scala440
-rw-r--r--test/files/run/io-position.scala8
-rw-r--r--test/files/run/iq.scala24
-rw-r--r--test/files/run/is-valid-num.scala2
-rw-r--r--test/files/run/issue192.scala32
-rw-r--r--test/files/run/iterator3444.scala12
-rw-r--r--test/files/run/iterators.scala6
-rw-r--r--test/files/run/java-erasure.scala2
-rw-r--r--test/files/run/json.scala16
-rw-r--r--test/files/run/kmpSliceSearch.scala8
-rw-r--r--test/files/run/lazy-exprs.scala16
-rw-r--r--test/files/run/lazy-locals.scala10
-rw-r--r--test/files/run/lazy-override-run.scala4
-rw-r--r--test/files/run/lazy-traits.scala74
-rw-r--r--test/files/run/lift-and-unlift.scala10
-rw-r--r--test/files/run/lists-run.scala8
-rw-r--r--test/files/run/manifests.scala46
-rw-r--r--test/files/run/mapConserve.scala6
-rw-r--r--test/files/run/mapValues.scala2
-rw-r--r--test/files/run/map_java_conversions.scala24
-rw-r--r--test/files/run/matchbytes.scala2
-rw-r--r--test/files/run/matchintasany.scala2
-rw-r--r--test/files/run/matchnull.scala2
-rw-r--r--test/files/run/misc.scala2
-rw-r--r--test/files/run/missingparams.scala4
-rw-r--r--test/files/run/mock.scala6
-rw-r--r--test/files/run/nodebuffer-array.scala4
-rw-r--r--test/files/run/null-and-intersect.scala6
-rw-r--r--test/files/run/null-hash.scala2
-rw-r--r--test/files/run/number-parsing.scala4
-rw-r--r--test/files/run/numbereq.scala14
-rw-r--r--test/files/run/origins.scala2
-rw-r--r--test/files/run/packrat1.scala8
-rw-r--r--test/files/run/packrat2.scala14
-rw-r--r--test/files/run/packrat3.scala12
-rw-r--r--test/files/run/parmap-ops.scala12
-rw-r--r--test/files/run/patch-boundary.scala4
-rw-r--r--test/files/run/patmat-exprs.scala6
-rw-r--r--test/files/run/patmat-seqs.scala10
-rw-r--r--test/files/run/patmatnew.scala4
-rw-r--r--test/files/run/pc-conversions.scala34
-rw-r--r--test/files/run/pf-catch.scala6
-rw-r--r--test/files/run/primitive-sigs-2.scala2
-rw-r--r--test/files/run/priorityQueue.scala66
-rw-r--r--test/files/run/private-inline.scala16
-rw-r--r--test/files/run/programmatic-main.scala2
-rw-r--r--test/files/run/proxy.scala6
-rw-r--r--test/files/run/range.scala24
-rw-r--r--test/files/run/records.scala6
-rw-r--r--test/files/run/repl-backticks.scala10
-rw-r--r--test/files/run/repl-suppressed-warnings.scala2
-rw-r--r--test/files/run/run-bug4840.scala8
-rw-r--r--test/files/run/runtime-richChar.scala10
-rw-r--r--test/files/run/scan.scala8
-rw-r--r--test/files/run/seqlike-kmp.scala6
-rw-r--r--test/files/run/sequenceComparisons.scala40
-rw-r--r--test/files/run/serialize-stream.scala4
-rw-r--r--test/files/run/slice-strings.scala6
-rw-r--r--test/files/run/streamWithFilter.scala2
-rw-r--r--test/files/run/streams.scala2
-rw-r--r--test/files/run/stringbuilder.scala14
-rw-r--r--test/files/run/structural.scala52
-rw-r--r--test/files/run/sysprops.scala10
-rw-r--r--test/files/run/t0017.scala2
-rw-r--r--test/files/run/t0325.scala8
-rw-r--r--test/files/run/t0421.scala10
-rw-r--r--test/files/run/t0508.scala2
-rw-r--r--test/files/run/t0631.scala2
-rw-r--r--test/files/run/t0677.scala2
-rw-r--r--test/files/run/t0807.scala2
-rw-r--r--test/files/run/t0883.scala12
-rw-r--r--test/files/run/t1005.scala2
-rw-r--r--test/files/run/t1141.scala2
-rw-r--r--test/files/run/t1167.scala6
-rw-r--r--test/files/run/t1220.scala2
-rw-r--r--test/files/run/t1300.scala4
-rw-r--r--test/files/run/t1309.scala2
-rw-r--r--test/files/run/t1323.scala4
-rw-r--r--test/files/run/t1333.scala4
-rw-r--r--test/files/run/t1423.scala2
-rw-r--r--test/files/run/t1427.scala2
-rw-r--r--test/files/run/t1500.scala24
-rw-r--r--test/files/run/t1501.scala20
-rw-r--r--test/files/run/t1537.scala6
-rw-r--r--test/files/run/t1591.scala6
-rw-r--r--test/files/run/t1718.scala4
-rw-r--r--test/files/run/t1766.scala12
-rw-r--r--test/files/run/t1773.scala2
-rw-r--r--test/files/run/t1829.scala2
-rw-r--r--test/files/run/t2029.scala4
-rw-r--r--test/files/run/t2074_2.scala2
-rw-r--r--test/files/run/t2087-and-2400.scala6
-rw-r--r--test/files/run/t2124.scala2
-rw-r--r--test/files/run/t2125.scala4
-rw-r--r--test/files/run/t2276.scala2
-rw-r--r--test/files/run/t2308a.scala4
-rw-r--r--test/files/run/t2354.scala2
-rw-r--r--test/files/run/t2417.scala18
-rw-r--r--test/files/run/t2512.scala4
-rw-r--r--test/files/run/t2514.scala4
-rw-r--r--test/files/run/t2526.scala16
-rw-r--r--test/files/run/t2552.scala14
-rw-r--r--test/files/run/t2636.scala12
-rw-r--r--test/files/run/t266.scala4
-rw-r--r--test/files/run/t2721.scala4
-rw-r--r--test/files/run/t2755.scala6
-rw-r--r--test/files/run/t2800.scala8
-rw-r--r--test/files/run/t2849.scala6
-rw-r--r--test/files/run/t2867.scala6
-rw-r--r--test/files/run/t2958.scala4
-rwxr-xr-xtest/files/run/t3026.scala2
-rw-r--r--test/files/run/t3038.scala14
-rw-r--r--test/files/run/t3038c/A_1.scala4
-rw-r--r--test/files/run/t3038d.scala10
-rw-r--r--test/files/run/t3050.scala4
-rw-r--r--test/files/run/t3112.scala2
-rw-r--r--test/files/run/t3150.scala2
-rw-r--r--test/files/run/t3158.scala2
-rw-r--r--test/files/run/t3175.scala26
-rw-r--r--test/files/run/t3232.scala6
-rw-r--r--test/files/run/t3269.scala2
-rw-r--r--test/files/run/t3273.scala2
-rw-r--r--test/files/run/t3361.scala2
-rw-r--r--test/files/run/t3395.scala6
-rw-r--r--test/files/run/t3397.scala2
-rw-r--r--test/files/run/t3493.scala4
-rw-r--r--test/files/run/t3496.scala4
-rw-r--r--test/files/run/t3502.scala6
-rw-r--r--test/files/run/t3509.scala4
-rw-r--r--test/files/run/t3511.scala18
-rw-r--r--test/files/run/t3516.scala2
-rw-r--r--test/files/run/t3518.scala2
-rw-r--r--test/files/run/t3530.scala6
-rw-r--r--test/files/run/t3540.scala2
-rw-r--r--test/files/run/t3563.scala6
-rw-r--r--test/files/run/t3580.scala6
-rw-r--r--test/files/run/t3603.scala8
-rw-r--r--test/files/run/t3613.scala6
-rw-r--r--test/files/run/t3619.scala2
-rw-r--r--test/files/run/t363.scala2
-rw-r--r--test/files/run/t3647.scala4
-rw-r--r--test/files/run/t3714.scala2
-rw-r--r--test/files/run/t3719.scala4
-rw-r--r--test/files/run/t3822.scala8
-rw-r--r--test/files/run/t3829.scala10
-rw-r--r--test/files/run/t3855.scala2
-rw-r--r--test/files/run/t3877.scala16
-rw-r--r--test/files/run/t3887.scala2
-rw-r--r--test/files/run/t3888.scala4
-rw-r--r--test/files/run/t3897/J_2.java4
-rw-r--r--test/files/run/t3897/a_2.scala6
-rw-r--r--test/files/run/t3932.scala4
-rw-r--r--test/files/run/t3964.scala6
-rw-r--r--test/files/run/t3970.scala4
-rw-r--r--test/files/run/t3980.scala2
-rw-r--r--test/files/run/t3984.scala2
-rw-r--r--test/files/run/t4013.scala4
-rw-r--r--test/files/run/t4013b.scala2
-rw-r--r--test/files/run/t4024.scala4
-rw-r--r--test/files/run/t4054.scala2
-rw-r--r--test/files/run/t4062.scala2
-rw-r--r--test/files/run/t4072.scala4
-rw-r--r--test/files/run/t408.scala2
-rw-r--r--test/files/run/t4110.scala2
-rw-r--r--test/files/run/t4119/J.java2
-rw-r--r--test/files/run/t4119/S.scala2
-rw-r--r--test/files/run/t4122.scala2
-rw-r--r--test/files/run/t4148.scala2
-rw-r--r--test/files/run/t4238/J_1.java4
-rw-r--r--test/files/run/t4288.scala2
-rw-r--r--test/files/run/t4294.scala2
-rw-r--r--test/files/run/t4317/S_3.scala2
-rw-r--r--test/files/run/t4387.scala4
-rw-r--r--test/files/run/t4396.scala2
-rw-r--r--test/files/run/t4426.scala6
-rw-r--r--test/files/run/t4461.scala2
-rw-r--r--test/files/run/t4532.check6
-rw-r--r--test/files/run/t4532.scala10
-rw-r--r--test/files/run/t4535.scala10
-rw-r--r--test/files/run/t4560.scala2
-rw-r--r--test/files/run/t4570.scala4
-rw-r--r--test/files/run/t4608.scala4
-rw-r--r--test/files/run/t4617.scala2
-rw-r--r--test/files/run/t4656.scala2
-rw-r--r--test/files/run/t4671.check4
-rw-r--r--test/files/run/t4671.scala2
-rw-r--r--test/files/run/t4680.scala4
-rw-r--r--test/files/run/t4697.scala2
-rw-r--r--test/files/run/t4752.scala4
-rw-r--r--test/files/run/t4753.scala2
-rw-r--r--test/files/run/t4761.scala2
-rw-r--r--test/files/run/t4894.scala8
-rw-r--r--test/files/run/t4895.scala6
-rw-r--r--test/files/run/t576.scala6
-rw-r--r--test/files/run/t603.scala2
-rw-r--r--test/files/run/t744.scala2
-rw-r--r--test/files/run/t874.scala2
-rw-r--r--test/files/run/t920.scala2
-rw-r--r--test/files/run/tailcalls.scala16
-rw-r--r--test/files/run/takeAndDrop.scala4
-rw-r--r--test/files/run/tcpoly_monads.scala8
-rw-r--r--test/files/run/tcpoly_parseridioms.scala44
-rw-r--r--test/files/run/transform.scala2
-rw-r--r--test/files/run/transpose.scala4
-rw-r--r--test/files/run/treePrint.scala8
-rw-r--r--test/files/run/triple-quoted-expr.scala8
-rw-r--r--test/files/run/try-2.scala12
-rw-r--r--test/files/run/try.scala6
-rw-r--r--test/files/run/tuple-match.scala4
-rw-r--r--test/files/run/tuple-zipped.scala16
-rw-r--r--test/files/run/typealias_overriding.scala8
-rw-r--r--test/files/run/unapply.scala6
-rw-r--r--test/files/run/unittest_collection.scala6
-rw-r--r--test/files/run/unittest_iterator.scala12
-rw-r--r--test/files/run/vector1.scala24
-rw-r--r--test/files/run/view-headoption.scala4
-rw-r--r--test/files/run/view-iterator-stream.scala8
-rwxr-xr-xtest/files/run/viewtest.scala4
-rw-r--r--test/files/run/virtpatmat_apply.scala2
-rw-r--r--test/files/run/virtpatmat_casting.scala6
-rw-r--r--test/files/run/virtpatmat_literal.scala24
-rw-r--r--test/files/run/virtpatmat_partial.scala2
-rw-r--r--test/files/run/virtpatmat_typed.scala8
-rw-r--r--test/files/run/virtpatmat_unapply.scala14
-rw-r--r--test/files/run/xml-loop-bug.scala2
-rw-r--r--test/files/scalacheck/CheckEither.scala24
-rw-r--r--test/files/scalacheck/HashTrieSplit.scala2
-rw-r--r--test/files/scalacheck/Unrolled.scala6
-rw-r--r--test/files/scalacheck/array.scala6
-rw-r--r--test/files/scalacheck/list.scala2
-rw-r--r--test/files/scalacheck/parallel-collections/IntOperators.scala2
-rw-r--r--test/files/scalacheck/parallel-collections/PairOperators.scala42
-rw-r--r--test/files/scalacheck/parallel-collections/PairValues.scala2
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelArrayCheck.scala14
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelArrayTest.scala2
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelArrayViewCheck.scala22
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelHashMapCheck.scala26
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelHashSetCheck.scala22
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelHashTrieCheck.scala32
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelIterableCheck.scala82
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelMapCheck1.scala6
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelRangeCheck.scala18
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelSeqCheck.scala60
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelSetCheck.scala6
-rw-r--r--test/files/scalacheck/parallel-collections/ParallelVectorCheck.scala10
-rw-r--r--test/files/scalacheck/parallel-collections/pc.scala14
-rw-r--r--test/files/scalacheck/primitive-eqeq.scala10
-rw-r--r--test/files/scalacheck/substringTests.scala4
-rw-r--r--test/files/scalap/caseClass/A.scala2
-rw-r--r--test/files/scalap/caseObject/A.scala2
-rw-r--r--test/files/scalap/cbnParam/A.scala2
-rw-r--r--test/files/specialized/arrays-traits.scala6
-rw-r--r--test/files/specialized/arrays.scala16
-rw-r--r--test/files/specialized/fft.scala26
-rw-r--r--test/files/specialized/spec-ame.scala10
-rw-r--r--test/files/specialized/spec-init.scala2
-rw-r--r--test/files/specialized/spec-matrix.scala12
-rw-r--r--test/files/specialized/spec-overrides.scala2
-rw-r--r--test/files/specialized/spec-patmatch.scala2
-rw-r--r--test/files/specialized/spec-super.scala6
-rw-r--r--test/files/specialized/spec-t3896.scala4
-rw-r--r--test/files/specialized/td3651.scala2
-rw-r--r--test/instrumented/library/scala/runtime/BoxesRunTime.java100
-rw-r--r--test/instrumented/library/scala/runtime/ScalaRunTime.scala54
-rw-r--r--test/pending/continuations-run/example0.scala4
-rw-r--r--test/pending/continuations-run/example1.scala4
-rw-r--r--test/pending/continuations-run/example16.scala4
-rw-r--r--test/pending/continuations-run/example2.scala4
-rw-r--r--test/pending/continuations-run/example3.scala4
-rw-r--r--test/pending/continuations-run/example4.scala4
-rw-r--r--test/pending/continuations-run/example5.scala4
-rw-r--r--test/pending/continuations-run/example6.scala4
-rw-r--r--test/pending/continuations-run/example7.scala4
-rw-r--r--test/pending/continuations-run/example8.scala4
-rw-r--r--test/pending/continuations-run/example9.scala4
-rw-r--r--test/pending/continuations-run/foreach.scala22
-rw-r--r--test/pending/jvm/actorgc_leak.scala2
-rw-r--r--test/pending/jvm/cf-attributes.scala6
-rw-r--r--test/pending/jvm/javasigs.scala6
-rw-r--r--test/pending/jvm/timeout.scala2
-rw-r--r--test/pending/neg/plugin-after-terminal/src/ThePlugin.scala6
-rw-r--r--test/pending/neg/plugin-before-parser/src/ThePlugin.scala6
-rw-r--r--test/pending/neg/plugin-cyclic-dependency/src/ThePlugin.scala10
-rw-r--r--test/pending/neg/plugin-multiple-rafter/src/ThePlugin.scala6
-rw-r--r--test/pending/neg/plugin-rafter-before-1/src/ThePlugin.scala6
-rw-r--r--test/pending/neg/plugin-rightafter-terminal/src/ThePlugin.scala8
-rw-r--r--test/pending/neg/t0653.scala8
-rw-r--r--test/pending/neg/t2080.scala2
-rw-r--r--test/pending/neg/t3152.scala4
-rw-r--r--test/pending/neg/t963.scala4
-rw-r--r--test/pending/neg/tcpoly_typealias_eta.scala6
-rw-r--r--test/pending/neg/tcpoly_variance_enforce_getter_setter.scala4
-rw-r--r--test/pending/neg/type-diagnostics.scala2
-rw-r--r--test/pending/pos/misc/B.scala2
-rw-r--r--test/pending/pos/no-widen-locals.scala2
-rw-r--r--test/pending/pos/sig/sigs.scala2
-rw-r--r--test/pending/pos/t0621.scala2
-rw-r--r--test/pending/pos/t1357.scala2
-rw-r--r--test/pending/pos/t1380/hallo.scala2
-rw-r--r--test/pending/pos/t1786.scala4
-rw-r--r--test/pending/pos/t2173.scala6
-rw-r--r--test/pending/pos/t4606.scala6
-rw-r--r--test/pending/pos/those-kinds-are-high.scala10
-rw-r--r--test/pending/pos/unappgadteval.scala20
-rw-r--r--test/pending/pos/virt.scala4
-rw-r--r--test/pending/run/TestFlatMap.scala6
-rw-r--r--test/pending/run/hk-lub-fail.scala2
-rw-r--r--test/pending/run/instanceOfAndTypeMatching.scala58
-rw-r--r--test/pending/run/sigtp.scala2
-rw-r--r--test/pending/run/string-reverse.scala6
-rw-r--r--test/pending/run/structural-types-vs-anon-classes.scala4
-rw-r--r--test/pending/run/t0508x.scala6
-rw-r--r--test/pending/run/t1980.scala2
-rw-r--r--test/pending/run/t2318.scala10
-rwxr-xr-xtest/pending/run/t3609.scala2
-rw-r--r--test/pending/run/t3669.scala2
-rw-r--r--test/pending/run/t3857.scala2
-rw-r--r--test/pending/run/t4283/IllegalAccess.scala2
-rw-r--r--test/pending/scalacheck/process.scala6
-rw-r--r--test/pending/script/t2365/Test.scala6
-rw-r--r--test/pending/shootout/fasta.check171
-rw-r--r--test/pending/shootout/fasta.scala162
-rw-r--r--test/pending/shootout/fasta.scala.runner3
-rw-r--r--test/pending/shootout/harmonic.scala-2.scala14
-rw-r--r--test/pending/shootout/harmonic.scala-2.scala.runner16
-rw-r--r--test/pending/shootout/harmonic.scala-3.scala15
-rw-r--r--test/pending/shootout/harmonic.scala-3.scala.runner3
-rw-r--r--test/pending/shootout/heapsort.scala72
-rw-r--r--test/pending/shootout/heapsort.scala.runner3
-rw-r--r--test/pending/shootout/mandelbrot.scala-2.checkbin0 -> 5011 bytes
-rw-r--r--test/pending/shootout/mandelbrot.scala-2.scala79
-rw-r--r--test/pending/shootout/mandelbrot.scala-2.scala.runner3
-rw-r--r--test/pending/shootout/message.check1
-rw-r--r--test/pending/shootout/message.javaopts1
-rw-r--r--test/pending/shootout/message.scala47
-rw-r--r--test/pending/shootout/message.scala.runner3
-rw-r--r--test/pending/shootout/meteor.scala496
-rw-r--r--test/pending/shootout/meteor.scala-2.scala496
-rw-r--r--test/pending/shootout/meteor.scala-2.scala.runner3
-rw-r--r--test/pending/shootout/meteor.scala-3.scala557
-rw-r--r--test/pending/shootout/meteor.scala-3.scala.runner3
-rw-r--r--test/pending/shootout/meteor.scala-4.scala587
-rw-r--r--test/pending/shootout/meteor.scala-4.scala.runner3
-rw-r--r--test/pending/shootout/meteor.scala.runner3
-rw-r--r--test/pending/shootout/methcall.scala58
-rw-r--r--test/pending/shootout/methcall.scala.runner3
-rw-r--r--test/pending/shootout/nsieve.scala-4.check9
-rw-r--r--test/pending/shootout/nsieve.scala-4.scala45
-rw-r--r--test/pending/shootout/nsieve.scala-4.scala.runner3
-rw-r--r--test/pending/shootout/pidigits.check100
-rw-r--r--test/pending/shootout/pidigits.scala69
-rw-r--r--test/pending/shootout/pidigits.scala.runner3
-rw-r--r--test/pending/shootout/prodcons.scala64
-rw-r--r--test/pending/shootout/prodcons.scala.runner3
-rw-r--r--test/pending/shootout/random.scala32
-rw-r--r--test/pending/shootout/random.scala.runner3
-rw-r--r--test/pending/shootout/revcomp.scala-2.check171
-rw-r--r--test/pending/shootout/revcomp.scala-2.scala92
-rw-r--r--test/pending/shootout/revcomp.scala-2.scala.runner6
-rw-r--r--test/pending/shootout/revcomp.scala-3.check171
-rw-r--r--test/pending/shootout/revcomp.scala-3.scala147
-rw-r--r--test/pending/shootout/revcomp.scala-3.scala.runner6
-rw-r--r--test/pending/shootout/sieve.scala43
-rw-r--r--test/pending/shootout/sieve.scala.runner3
-rw-r--r--test/scaladoc/scala/IndexTest.scala6
-rw-r--r--test/scaladoc/scala/html/HtmlFactoryTest.scala4
-rw-r--r--test/support/annotations/NestedAnnotations.java8
1041 files changed, 65914 insertions, 4042 deletions
diff --git a/ant b/ant
deleted file mode 100755
index d315114fe8..0000000000
--- a/ant
+++ /dev/null
@@ -1,11 +0,0 @@
-#!/bin/bash
-
-scriptdir=$(dirname $0)
-# TODO - We should probably make sure we don't find this script with which. Hopefully people don't actually put current directory on their path.
-ant=$(which ant)
-
-pushd $scriptdir
-bash pull-binary-libs.sh
-popd
-
-$ant $@
diff --git a/docs/examples/actors/producers.scala b/docs/examples/actors/producers.scala
index d3ff903f5b..80e5ae33d3 100644
--- a/docs/examples/actors/producers.scala
+++ b/docs/examples/actors/producers.scala
@@ -6,13 +6,13 @@ import scala.actors.Actor._
abstract class Producer[T] {
/** A signal that the next value should be produced. */
- private val Next = new Object
+ private val Next = new Object
/** A label for an undefined state of the iterators. */
private val Undefined = new Object
/** A signal to stop the coordinator. */
- private val Stop = new Object
+ private val Stop = new Object
protected def produce(x: T) {
coordinator ! Some(x)
@@ -53,10 +53,10 @@ abstract class Producer[T] {
}
private val producer: Actor = actor {
- receive {
- case Next =>
+ receive {
+ case Next =>
produceValues
- coordinator ! None
+ coordinator ! None
}
}
}
@@ -70,7 +70,7 @@ object producers extends Application {
def tree = node(node(node(3), 4, node(6)), 8, node(node(9), 10, node(11)))
class PreOrder(n: Tree) extends Producer[Int] {
- def produceValues = traverse(n)
+ def produceValues = traverse(n)
def traverse(n: Tree) {
if (n != null) {
produce(n.elem)
@@ -81,7 +81,7 @@ object producers extends Application {
}
class PostOrder(n: Tree) extends Producer[Int] {
- def produceValues = traverse(n)
+ def produceValues = traverse(n)
def traverse(n: Tree) {
if (n != null) {
traverse(n.left)
@@ -92,7 +92,7 @@ object producers extends Application {
}
class InOrder(n: Tree) extends Producer[Int] {
- def produceValues = traverse(n)
+ def produceValues = traverse(n)
def traverse(n: Tree) {
if (n != null) {
traverse(n.left)
diff --git a/docs/examples/jolib/Ref.scala b/docs/examples/jolib/Ref.scala
index 39c0123f09..5f655f16b1 100644
--- a/docs/examples/jolib/Ref.scala
+++ b/docs/examples/jolib/Ref.scala
@@ -12,7 +12,7 @@ import concurrent.SyncVar;
import concurrent.jolib._;
class Ref[a](init: a) extends Join {
-
+
object get extends Synchr[a](this) { case class C() extends SyncVar[a]; }
object set extends Synchr[unit](this) { case class C(x: a) extends SyncVar[unit]; }
object state extends Asynchr(this) { case class C(x: a); }
@@ -25,7 +25,7 @@ class Ref[a](init: a) extends Join {
);
state(state.C(init));
-
+
def Get: a = get(get.C());
def Set(x: a): unit = set(set.C(x));
}
diff --git a/docs/examples/jolib/parallelOr.scala b/docs/examples/jolib/parallelOr.scala
index 4c4a852c4a..72d282bee3 100644
--- a/docs/examples/jolib/parallelOr.scala
+++ b/docs/examples/jolib/parallelOr.scala
@@ -13,27 +13,27 @@ import concurrent.SyncVar;
/** Implementation in the join-calculus of a parallel OR. */
object or extends Join {
-
+
object res extends Synchr[boolean](this) { case class C() extends SyncVar[boolean] };
object res1 extends Asynchr(this) { case class C(b: boolean); }
object res2 extends Asynchr(this) { case class C(b: boolean); }
object res1False extends Synchr[boolean](this) { case class C() extends SyncVar[boolean] };
object res2False extends Synchr[boolean](this) { case class C() extends SyncVar[boolean] };
-
+
rules(
Pair(List(res, res1), { case List(r @ res.C(), res1.C(b)) =>
if (b) r.set(b) else r.set(res1False(res1False.C())) }),
-
+
Pair(List(res, res2), { case List(r @ res.C(), res2.C(b)) =>
if (b) r.set(b) else r.set(res2False(res2False.C())) }),
-
+
Pair(List(res1False, res2), { case List(r @ res1False.C(), res2.C(b)) =>
r.set(b) }),
-
+
Pair(List(res2False, res1), { case List(r @ res2False.C(), res1.C(b)) =>
r.set(b) })
);
-
+
def apply(b1: => boolean, b2: => boolean): boolean = {
concurrent.ops.spawn(res1(res1.C(b1)));
concurrent.ops.spawn(res2(res2.C(b2)));
@@ -42,7 +42,7 @@ object or extends Join {
}
*/
object parallelOr {
-
+
def main(args: Array[String]): unit = {
def loop: boolean = { while (true) {}; true };
/*
diff --git a/docs/examples/monads/callccInterpreter.scala b/docs/examples/monads/callccInterpreter.scala
index 5b09b4c285..5b556bd8fa 100644
--- a/docs/examples/monads/callccInterpreter.scala
+++ b/docs/examples/monads/callccInterpreter.scala
@@ -14,7 +14,7 @@ object callccInterpreter {
def showM(m: M[Value]): String = (m in id).toString();
- def callCC[A](h: (A => M[A]) => M[A]) =
+ def callCC[A](h: (A => M[A]) => M[A]) =
M[A](c => h(a => M[A](d => c(a))) in c);
type Name = String;
@@ -30,7 +30,7 @@ object callccInterpreter {
trait Value;
case object Wrong extends Value {
override def toString() = "wrong"
- }
+ }
case class Num(n: Int) extends Value {
override def toString() = n.toString();
}
@@ -70,7 +70,7 @@ object callccInterpreter {
case Ccc(x, t) => callCC(k => interp(t, Pair(x, Fun(k)) :: e))
}
- def test(t: Term): String =
+ def test(t: Term): String =
showM(interp(t, List()));
val term0 = App(Lam("x", Add(Var("x"), Var("x"))), Add(Con(10), Con(11)));
diff --git a/docs/examples/monads/directInterpreter.scala b/docs/examples/monads/directInterpreter.scala
index a80c9e4ed0..06fffba8e2 100644
--- a/docs/examples/monads/directInterpreter.scala
+++ b/docs/examples/monads/directInterpreter.scala
@@ -45,11 +45,11 @@ object directInterpreter {
case App(f, t) => apply(interp(f, e), interp(t, e))
}
- def test(t: Term): String =
+ def test(t: Term): String =
showval(interp(t, List()));
val term0 = App(Lam("x", Add(Var("x"), Var("x"))), Add(Con(10), Con(11)));
- def main(args: Array[String]) =
+ def main(args: Array[String]) =
System.out.println(test(term0));
}
diff --git a/docs/examples/monads/simpleInterpreter.scala b/docs/examples/monads/simpleInterpreter.scala
index 219b137c31..cde3a92dbb 100644
--- a/docs/examples/monads/simpleInterpreter.scala
+++ b/docs/examples/monads/simpleInterpreter.scala
@@ -22,7 +22,7 @@ object simpleInterpreter {
trait Value;
case object Wrong extends Value {
override def toString() = "wrong"
- }
+ }
case class Num(n: Int) extends Value {
override def toString() = n.toString();
}
@@ -61,7 +61,7 @@ object simpleInterpreter {
yield c
}
- def test(t: Term): String =
+ def test(t: Term): String =
showM(interp(t, List()));
val term0 = App(Lam("x", Add(Var("x"), Var("x"))), Add(Con(10), Con(11)));
diff --git a/docs/examples/monads/stateInterpreter.scala b/docs/examples/monads/stateInterpreter.scala
index 35568fb314..97f3335dab 100644
--- a/docs/examples/monads/stateInterpreter.scala
+++ b/docs/examples/monads/stateInterpreter.scala
@@ -7,7 +7,7 @@ object stateInterpreter {
val tickS = new M(s => Pair((), s + 1));
case class M[A](in: State => Pair[A, State]) {
- def bind[B](k: A => M[B]) = M[B]{ s0 =>
+ def bind[B](k: A => M[B]) = M[B]{ s0 =>
val Pair(a, s1) = this in s0; k(a) in s1
}
def map[B](f: A => B): M[B] = bind(x => unitM(f(x)));
@@ -72,7 +72,7 @@ object stateInterpreter {
yield c
}
- def test(t: Term): String =
+ def test(t: Term): String =
showM(interp(t, List()));
val term0 = App(Lam("x", Add(Var("x"), Var("x"))), Add(Con(10), Con(11)));
diff --git a/docs/examples/parsing/ArithmeticParser.scala b/docs/examples/parsing/ArithmeticParser.scala
index e8fbee4499..99cf7a5578 100644
--- a/docs/examples/parsing/ArithmeticParser.scala
+++ b/docs/examples/parsing/ArithmeticParser.scala
@@ -15,16 +15,16 @@ import scala.util.parsing.combinator.syntactical.StdTokenParsers
* a term is a sequence of factors, separated by * or /
* a factor is a parenthesized expression or a number
*
- * @author Adriaan Moors
- */
-object arithmeticParser extends StdTokenParsers {
+ * @author Adriaan Moors
+ */
+object arithmeticParser extends StdTokenParsers {
type Tokens = StdLexical ; val lexical = new StdLexical
lexical.delimiters ++= List("(", ")", "+", "-", "*", "/")
lazy val expr = term*("+" ^^^ {(x: int, y: int) => x + y} | "-" ^^^ {(x: int, y: int) => x - y})
lazy val term = factor*("*" ^^^ {(x: int, y: int) => x * y} | "/" ^^^ {(x: int, y: int) => x / y})
lazy val factor: Parser[int] = "(" ~> expr <~ ")" | numericLit ^^ (_.toInt)
-
+
def main(args: Array[String]) {
println(
if (args.length == 1) {
@@ -37,14 +37,14 @@ object arithmeticParser extends StdTokenParsers {
}
-object arithmeticParserDesugared extends StdTokenParsers {
+object arithmeticParserDesugared extends StdTokenParsers {
type Tokens = StdLexical ; val lexical = new StdLexical
lexical.delimiters ++= List("(", ")", "+", "-", "*", "/")
lazy val expr = chainl1(term, (keyword("+").^^^{(x: int, y: int) => x + y}).|(keyword("-").^^^{(x: int, y: int) => x - y}))
lazy val term = chainl1(factor, (keyword("*").^^^{(x: int, y: int) => x * y}).|(keyword("/").^^^{(x: int, y: int) => x / y}))
- lazy val factor: Parser[int] = keyword("(").~>(expr.<~(keyword(")"))).|(numericLit.^^(x => x.toInt))
-
+ lazy val factor: Parser[int] = keyword("(").~>(expr.<~(keyword(")"))).|(numericLit.^^(x => x.toInt))
+
def main(args: Array[String]) {
println(
if (args.length == 1) {
diff --git a/docs/examples/parsing/ArithmeticParsers.scala b/docs/examples/parsing/ArithmeticParsers.scala
index 8fb3af7acb..62d7a61862 100644
--- a/docs/examples/parsing/ArithmeticParsers.scala
+++ b/docs/examples/parsing/ArithmeticParsers.scala
@@ -2,7 +2,7 @@ package examples.parsing
import scala.util.parsing.combinator1.syntactical.StandardTokenParsers
-object ArithmeticParsers extends StandardTokenParsers {
+object ArithmeticParsers extends StandardTokenParsers {
lexical.delimiters ++= List("(", ")", "+", "-", "*", "/")
def expr: Parser[Any] = term ~ rep("+" ~ term | "-" ~ term)
@@ -16,11 +16,11 @@ object ArithmeticParsers extends StandardTokenParsers {
}
}
-object ArithmeticParsers1 extends StandardTokenParsers {
+object ArithmeticParsers1 extends StandardTokenParsers {
lexical.delimiters ++= List("(", ")", "+", "-", "*", "/")
val reduceList: Int ~ List[String ~ Int] => Int = {
- case i ~ ps => (i /: ps)(reduce)
+ case i ~ ps => (i /: ps)(reduce)
}
def reduce(x: Int, r: String ~ Int) = (r: @unchecked) match {
@@ -45,11 +45,11 @@ class Expr
case class BinOp(op: String, l: Expr, r: Expr) extends Expr
case class Num(n: Int) extends Expr
-object ArithmeticParsers2 extends StandardTokenParsers {
+object ArithmeticParsers2 extends StandardTokenParsers {
lexical.delimiters ++= List("(", ")", "+", "-", "*", "/")
val reduceList: Expr ~ List[String ~ Expr] => Expr = {
- case i ~ ps => (i /: ps)(reduce)
+ case i ~ ps => (i /: ps)(reduce)
}
def reduce(l: Expr, r: String ~ Expr) = BinOp(r._1, l, r._2)
diff --git a/docs/examples/parsing/JSON.scala b/docs/examples/parsing/JSON.scala
index bbba25f744..abfa242e9f 100644
--- a/docs/examples/parsing/JSON.scala
+++ b/docs/examples/parsing/JSON.scala
@@ -2,14 +2,14 @@ package examples.parsing
import scala.util.parsing.combinator1.syntactical.StandardTokenParsers
-object JSON extends StandardTokenParsers {
+object JSON extends StandardTokenParsers {
lexical.delimiters += ("{", "}", "[", "]", ":", ",")
lexical.reserved += ("null", "true", "false")
def obj : Parser[Any] = "{" ~ repsep(member, ",") ~ "}"
def arr : Parser[Any] = "[" ~ repsep(value, ",") ~ "]"
def member: Parser[Any] = ident ~ ":" ~ value
- def value : Parser[Any] = ident | numericLit | obj | arr |
+ def value : Parser[Any] = ident | numericLit | obj | arr |
"null" | "true" | "false"
def main(args: Array[String]) {
@@ -18,20 +18,20 @@ object JSON extends StandardTokenParsers {
println(phrase(value)(tokens))
}
}
-object JSON1 extends StandardTokenParsers {
+object JSON1 extends StandardTokenParsers {
lexical.delimiters += ("{", "}", "[", "]", ":", ",")
lexical.reserved += ("null", "true", "false")
- def obj: Parser[Map[String, Any]] =
+ def obj: Parser[Map[String, Any]] =
"{" ~> repsep(member, ",") <~ "}" ^^ (Map() ++ _)
def arr: Parser[List[Any]] =
- "[" ~> repsep(value, ",") <~ "]"
+ "[" ~> repsep(value, ",") <~ "]"
- def member: Parser[(String, Any)] =
+ def member: Parser[(String, Any)] =
ident ~ ":" ~ value ^^ { case name ~ ":" ~ value => (name -> value) }
- def value: Parser[Any] =
+ def value: Parser[Any] =
ident | numericLit ^^ (_.toInt) | obj | arr |
"null" ^^^ null | "true" ^^^ true | "false" ^^^ false
diff --git a/docs/examples/parsing/ListParser.scala b/docs/examples/parsing/ListParser.scala
index 12805e5e50..59fc292c1d 100644
--- a/docs/examples/parsing/ListParser.scala
+++ b/docs/examples/parsing/ListParser.scala
@@ -14,7 +14,7 @@ object listParser {
class ListParsers extends Parsers {
type Elem = Char
-
+
lazy val ident = rep1(elem("letter", isLetter), elem("letter or digit", isLetterOrDigit)) ^^ {cs => Id(mkString(cs))}
lazy val number = chainl1(elem("digit", isDigit) ^^ (_ - '0'), success{(accum: Int, d: Int) => accum * 10 + d}) ^^ Num
lazy val list = '(' ~> repsep(expr, ',') <~ ')' ^^ Lst
diff --git a/docs/examples/parsing/ListParsers.scala b/docs/examples/parsing/ListParsers.scala
index f503a0139f..b449c4a641 100644
--- a/docs/examples/parsing/ListParsers.scala
+++ b/docs/examples/parsing/ListParsers.scala
@@ -2,7 +2,7 @@ package examples.parsing
import scala.util.parsing.combinator1.syntactical.StandardTokenParsers
-object ListParsers extends StandardTokenParsers {
+object ListParsers extends StandardTokenParsers {
lexical.delimiters ++= List("(", ")", ",")
def expr: Parser[Any] = "(" ~ exprs ~ ")" | ident | numericLit
@@ -15,7 +15,7 @@ object ListParsers extends StandardTokenParsers {
}
}
-object ListParsers1 extends StandardTokenParsers {
+object ListParsers1 extends StandardTokenParsers {
lexical.delimiters ++= List("(", ")", ",")
def expr: Parser[Any] = "(" ~> exprs <~ ")" | ident | numericLit
diff --git a/docs/examples/parsing/MiniML.scala b/docs/examples/parsing/MiniML.scala
index ffc7c2ac92..f7f7172e8d 100644
--- a/docs/examples/parsing/MiniML.scala
+++ b/docs/examples/parsing/MiniML.scala
@@ -3,7 +3,7 @@ package examples.parsing
import scala.util.parsing.combinator1.syntactical.StandardTokenParsers
import scala.util.parsing.combinator1.syntactical.StandardTokenParsers
-object MiniML extends StandardTokenParsers {
+object MiniML extends StandardTokenParsers {
lexical.delimiters += ("(", ")", ".", "=")
lexical.reserved += ("lambda", "let", "in")
@@ -30,7 +30,7 @@ case class Lambda(x: String, expr: Expr) extends Expr
case class Apply(fun: Expr, arg: Expr) extends Expr
case class Var(x: String) extends Expr
-object MiniML1 extends StandardTokenParsers {
+object MiniML1 extends StandardTokenParsers {
lexical.delimiters += ("(", ")", ".", "=")
lexical.reserved += ("lambda", "let", "in")
@@ -41,7 +41,7 @@ object MiniML1 extends StandardTokenParsers {
)
def simpleExpr: Parser[Expr] = (
ident ^^ { Var }
- | "(" ~> expr <~ ")"
+ | "(" ~> expr <~ ")"
)
def main(args: Array[String]) {
diff --git a/docs/examples/parsing/lambda/Main.scala b/docs/examples/parsing/lambda/Main.scala
index 81a175de77..165e82b670 100644
--- a/docs/examples/parsing/lambda/Main.scala
+++ b/docs/examples/parsing/lambda/Main.scala
@@ -27,8 +27,8 @@ object Main extends Application with TestParser
{
Console.println("Term: \n"+term)
}
- case Failure(msg, remainder) => Console.println("Failure: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)
- case Error(msg, remainder) => Console.println("Error: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)
+ case Failure(msg, remainder) => Console.println("Failure: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)
+ case Error(msg, remainder) => Console.println("Error: "+msg+"\n"+"Remainder: \n"+remainder.pos.longString)
}
}
}
diff --git a/docs/examples/parsing/lambda/TestParser.scala b/docs/examples/parsing/lambda/TestParser.scala
index 623b597337..d26589da1b 100644
--- a/docs/examples/parsing/lambda/TestParser.scala
+++ b/docs/examples/parsing/lambda/TestParser.scala
@@ -17,9 +17,9 @@ trait TestParser extends StdTokenParsers with ImplicitConversions with TestSynt
lexical.reserved ++= List("unit", "let", "in", "if", "then", "else")
lexical.delimiters ++= List("=>", "->", "==", "(", ")", "=", "\\", "+", "-", "*", "/")
-
+
def name : Parser[Name] = ident ^^ Name
-
+
// meaning of the arguments to the closure during subsequent iterations
// (...(expr2 op1 expr1) ... op1 expr1)
// ^a^^^ ^o^ ^b^^^
@@ -29,10 +29,10 @@ trait TestParser extends StdTokenParsers with ImplicitConversions with TestSynt
def expr2 : Parser[Term] =
chainl1(expr3, expr2, op2 ^^ {o => (a: Term, b: Term) => App(App(o, a), b)})
-
+
def expr3 : Parser[Term] =
chainl1(expr4, expr3, op3 ^^ {o => (a: Term, b: Term) => App(App(o, a), b)})
-
+
def expr4 : Parser[Term] =
( "\\" ~> lambdas
| ("let" ~> name) ~ ("=" ~> expr1) ~ ("in" ~> expr1) ^^ flatten3(Let)
@@ -42,27 +42,27 @@ trait TestParser extends StdTokenParsers with ImplicitConversions with TestSynt
def lambdas : Parser[Term] =
name ~ ("->" ~> expr1 | lambdas) ^^ flatten2(Lam)
-
+
def aexpr : Parser[Term] =
( numericLit ^^ (_.toInt) ^^ Lit
| name ^^ Ref
| "unit" ^^^ Unit()
| "(" ~> expr1 <~ ")"
)
-
+
def op1 : Parser[Term] =
"==" ^^^ Ref(Name("=="))
-
+
def op2 : Parser[Term] =
( "+" ^^^ Ref(Name("+"))
| "-" ^^^ Ref(Name("-"))
)
-
+
def op3 : Parser[Term] =
( "*" ^^^ Ref(Name("*"))
| "/" ^^^ Ref(Name("/"))
)
-
+
def parse(r: Reader[char]) : ParseResult[Term] =
phrase(expr1)(new lexical.Scanner(r))
}
diff --git a/docs/examples/parsing/lambda/TestSyntax.scala b/docs/examples/parsing/lambda/TestSyntax.scala
index 531ae4bd54..7edca6ccdc 100644
--- a/docs/examples/parsing/lambda/TestSyntax.scala
+++ b/docs/examples/parsing/lambda/TestSyntax.scala
@@ -5,25 +5,25 @@ package examples.parsing.lambda
*
* @author Miles Sabin (adapted slightly by Adriaan Moors)
*/
-trait TestSyntax
+trait TestSyntax
{
- trait Term
-
+ trait Term
+
case class Unit extends Term
{
override def toString = "unit"
}
-
+
case class Lit(n: int) extends Term
{
override def toString = n.toString
}
-
+
case class Bool(b: boolean) extends Term
{
override def toString = b.toString
}
-
+
case class Name(name: String) extends Term
{
override def toString = name
@@ -33,27 +33,27 @@ trait TestSyntax
{
def value = n
}
-
+
case class Lam(n: Name, l: Term) extends Term
{
override def toString = "(\\ "+n+" -> "+l+")"
- }
-
+ }
+
case class App(t1: Term, t2: Term) extends Term
{
override def toString = "("+t1+" "+t2+")"
- }
-
+ }
+
case class Let(n: Name, t1: Term, t2: Term) extends Term
{
override def toString = "let "+n+" = "+t1+" in "+t2
}
-
+
case class If(c: Term, t1: Term, t2: Term) extends Term
{
override def toString = "if "+c+" then "+t1+" else "+t2
}
-
+
trait PrimTerm extends Term
{
def apply(n: Lit) : Term
@@ -68,7 +68,7 @@ trait TestSyntax
{
def apply(x: Lit) = new PrimTerm { def apply(y: Lit) = Lit(x.n-y.n) }
}
-
+
case class PrimMultiply extends PrimTerm
{
def apply(x: Lit) = new PrimTerm { def apply(y: Lit) = Lit(x.n*y.n) }
diff --git a/docs/examples/pilib/elasticBuffer.scala b/docs/examples/pilib/elasticBuffer.scala
index a0e8bb6a7c..5fec96ab6c 100644
--- a/docs/examples/pilib/elasticBuffer.scala
+++ b/docs/examples/pilib/elasticBuffer.scala
@@ -25,7 +25,7 @@ object elasticBuffer {
/**
* A buffer cell containing a value, ready to receive (o,r) from the right.
*/
- def Cl(i: Chan[String], l: MetaChan,
+ def Cl(i: Chan[String], l: MetaChan,
o: Chan[String], r: MetaChan, content: String): Unit =
choice (
o(content) * (Bl(i,l,o,r)),
diff --git a/docs/examples/pilib/handover.scala b/docs/examples/pilib/handover.scala
index 9725382c96..c9b6156c2c 100644
--- a/docs/examples/pilib/handover.scala
+++ b/docs/examples/pilib/handover.scala
@@ -32,7 +32,7 @@ object handoverRecursive {
* Control center.
*/
def Control(talk1: Chan[unit], switch1: Switch,
- gain1: Switch, lose1: Switch,
+ gain1: Switch, lose1: Switch,
talk2: Chan[unit], switch2: Switch,
gain2: Switch, lose2: Switch): unit
= {
@@ -108,7 +108,7 @@ object handoverCast {
def Car(talk: Chan[Any], switch: Chan[Any]): unit =
choice (
switch * (o => {
- val Pair(t,s) = o.asInstanceOf[Pair[Chan[Any],Chan[Any]]];
+ val Pair(t,s) = o.asInstanceOf[Pair[Chan[Any],Chan[Any]]];
Car(t, s)
}),
talk(()) * ( {
@@ -122,7 +122,7 @@ object handoverCast {
* Control center.
*/
def Control(talk1: Chan[Any], switch1: Chan[Any],
- gain1: Chan[Any], lose1: Chan[Any],
+ gain1: Chan[Any], lose1: Chan[Any],
talk2: Chan[Any], switch2: Chan[Any],
gain2: Chan[Any], lose2: Chan[Any]): unit
= {
diff --git a/docs/examples/pilib/mobilePhoneProtocol.scala b/docs/examples/pilib/mobilePhoneProtocol.scala
index 0805253ae0..e8c0ac1dc4 100644
--- a/docs/examples/pilib/mobilePhoneProtocol.scala
+++ b/docs/examples/pilib/mobilePhoneProtocol.scala
@@ -21,7 +21,7 @@ object mobilePhoneProtocol {
case class HoCom() extends Message; // handover complete
case class HoFail() extends Message; // handover fail
case class ChRel() extends Message; // release
- case class Voice(s: String) extends Message; // voice
+ case class Voice(s: String) extends Message; // voice
case class Channel(n: Chan[Message]) extends Message; // channel
def MobileSystem(in: Chan[String], out: Chan[String]): unit = {
@@ -144,9 +144,9 @@ object mobilePhoneProtocol {
}
//***************** Entry function ******************//
-
+
def main(args: Array[String]): unit = {
-
+
def Producer(n: Int, put: Chan[String]): unit = {
Thread.sleep(1 + random.nextInt(1000));
val msg = "object " + n;
@@ -154,14 +154,14 @@ object mobilePhoneProtocol {
System.out.println("Producer gave " + msg);
Producer(n + 1, put)
}
-
+
def Consumer(get: Chan[String]): unit = {
Thread.sleep(1 + random.nextInt(1000));
val msg = get.read;
System.out.println("Consumer took " + msg);
Consumer(get)
}
-
+
val put = new Chan[String];
val get = new Chan[String];
spawn < Producer(0, put) | Consumer(get) | MobileSystem(put, get) >
diff --git a/docs/examples/pilib/piNat.scala b/docs/examples/pilib/piNat.scala
index ee9e5ba1af..a1a0e682e1 100644
--- a/docs/examples/pilib/piNat.scala
+++ b/docs/examples/pilib/piNat.scala
@@ -4,7 +4,7 @@ import scala.concurrent.pilib._
/** Church encoding of naturals in the Pi-calculus */
object piNat extends Application {
-
+
/** Locations of Pi-calculus natural */
class NatChan extends Chan[Triple[Chan[Unit], Chan[NatChan], Chan[NatChan]]]
diff --git a/docs/examples/pilib/rwlock.scala b/docs/examples/pilib/rwlock.scala
index 931f622f5a..bb1c26bdf2 100644
--- a/docs/examples/pilib/rwlock.scala
+++ b/docs/examples/pilib/rwlock.scala
@@ -250,7 +250,7 @@ object rwlock {
def endRead = er.send
def endWrite = ew.send
- private def Reading(nr: int, nw: int): unit =
+ private def Reading(nr: int, nw: int): unit =
if (nr == 0 && nw == 0)
choice (
sr * (x => Reading(1, 0)),
@@ -264,7 +264,7 @@ object rwlock {
choice (
sr * (x => Reading(nr + 1, 0)),
er * (x => Reading(nr - 1, 0)),
- ww * (x => Reading(nr, 1))
+ ww * (x => Reading(nr, 1))
)
else if (nr != 0 && nw != 0)
choice (
diff --git a/docs/examples/pilib/scheduler.scala b/docs/examples/pilib/scheduler.scala
index 9205ae3f0c..fd8fd52600 100644
--- a/docs/examples/pilib/scheduler.scala
+++ b/docs/examples/pilib/scheduler.scala
@@ -87,7 +87,7 @@ object scheduler {
/**
* A cell is modelled as a function that takes as parameters
- * input and output channels and which returns nothing.
+ * input and output channels and which returns nothing.
*/
type Cell = (Chan[Unit], Chan[Unit]) => Unit
diff --git a/docs/examples/pilib/semaphore.scala b/docs/examples/pilib/semaphore.scala
index ed224890e2..951c90e8d4 100644
--- a/docs/examples/pilib/semaphore.scala
+++ b/docs/examples/pilib/semaphore.scala
@@ -65,7 +65,7 @@ object semaphore {
println("b1");
Thread.sleep(1 + random.nextInt(100));
println("b2")
- } )
+ } )
} >;
}
}
diff --git a/docs/examples/pilib/twoPlaceBuffer.scala b/docs/examples/pilib/twoPlaceBuffer.scala
index f0f278317a..255f70ca06 100644
--- a/docs/examples/pilib/twoPlaceBuffer.scala
+++ b/docs/examples/pilib/twoPlaceBuffer.scala
@@ -16,7 +16,7 @@ object twoPlaceBuffer extends Application {
def B1(x: A): Unit = choice (
out(x) * (B0),
- in * (y => B2(x, y))
+ in * (y => B2(x, y))
)
def B2(x: A, y: A): Unit = choice (
diff --git a/docs/examples/plugintemplate/src/plugintemplate/TemplatePlugin.scala b/docs/examples/plugintemplate/src/plugintemplate/TemplatePlugin.scala
index b241072301..6cda37d4e3 100644
--- a/docs/examples/plugintemplate/src/plugintemplate/TemplatePlugin.scala
+++ b/docs/examples/plugintemplate/src/plugintemplate/TemplatePlugin.scala
@@ -16,7 +16,7 @@ class TemplatePlugin(val global: Global) extends Plugin {
/** A short description of the plugin, read from the properties file */
val description = PluginProperties.pluginDescription
-
+
/** @todo A description of the plugin's options */
override val optionsHelp = Some(
" -P:"+ name +":option sets some option for this plugin")
diff --git a/docs/examples/plugintemplate/src/plugintemplate/standalone/Main.scala b/docs/examples/plugintemplate/src/plugintemplate/standalone/Main.scala
index ff1d1b50c5..19d2613649 100644
--- a/docs/examples/plugintemplate/src/plugintemplate/standalone/Main.scala
+++ b/docs/examples/plugintemplate/src/plugintemplate/standalone/Main.scala
@@ -5,7 +5,7 @@ import scala.tools.nsc.CompilerCommand
import scala.tools.nsc.Settings
/** An object for running the plugin as standalone application.
- *
+ *
* @todo: print, parse and apply plugin options !!!
* ideally re-use the TemplatePlugin (-> runsAfter, optionsHelp,
* processOptions, components, annotationChecker) instead of
diff --git a/docs/examples/tcpoly/collection/HOSeq.scala b/docs/examples/tcpoly/collection/HOSeq.scala
index a9414e3b3c..a6757b95ba 100644
--- a/docs/examples/tcpoly/collection/HOSeq.scala
+++ b/docs/examples/tcpoly/collection/HOSeq.scala
@@ -6,40 +6,40 @@ trait HOSeq {
// values implementing this interface, in order to provide more performant ways of building that structure
trait Accumulator[+coll[x], elT] {
def += (el: elT): Unit
- def result: coll[elT]
+ def result: coll[elT]
}
-
-
+
+
// Iterable abstracts over the type of its structure as well as its elements (see PolyP's Bifunctor)
- // m[x] is intentionally unbounded: fold can then be defined nicely
- // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
+ // m[x] is intentionally unbounded: fold can then be defined nicely
+ // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
// is an invariant position -- should probably rule that out?
trait Iterable[+m[+x], +t] {
//def unit[a](orig: a): m[a]
def iterator: Iterator[t]
-
+
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
def accumulator[t]: Accumulator[m, t]
-
+
def filter(p: t => Boolean): m[t] = {
val buf = accumulator[t]
val elems = elements
while (elems.hasNext) { val x = elems.next; if (p(x)) buf += x }
buf.result
}
-
+
def map[s](f: t => s): m[s] = {
val buf = accumulator[s]
val elems = elements
while (elems.hasNext) buf += f(elems.next)
buf.result
}
-
+
// flatMap is a more specialized map, it only works if the mapped function produces Iterable values,
// which are then added to the result one by one
// the compiler should be able to find the right accumulator (implicit buf) to build the result
// to get concat, resColl = SingletonIterable, f = unit for SingletonIterable
- def flatMap[resColl[x] <: Iterable[resColl, x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
+ def flatMap[resColl[x] <: Iterable[resColl, x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
// TODO: would a viewbound for resColl[x] be better?
// -- 2nd-order type params are not yet in scope in view bound
val elems = elements
@@ -48,9 +48,9 @@ trait HOSeq {
while (elemss.hasNext) buf += elemss.next
}
buf.result
- }
+ }
}
-
+
final class ListBuffer[A] {
private var start: List[A] = Nil
private var last: ::[A] = _
@@ -78,7 +78,7 @@ trait HOSeq {
exported = !start.isEmpty
start
}
-
+
/** Clears the buffer contents.
*/
def clear: unit = {
@@ -97,13 +97,13 @@ trait HOSeq {
}
}
}
-
+
implicit def listAccumulator[elT]: Accumulator[List, elT] = new Accumulator[List, elT] {
private[this] val buff = new ListBuffer[elT]
def += (el: elT): Unit = buff += el
def result: List[elT] = buff.toList
}
-
+
trait List[+t] extends Iterable[List, t] {
def head: t
def tail: List[t]
@@ -111,16 +111,16 @@ trait HOSeq {
def iterator: Iterator[t] = error("TODO")
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
- def accumulator[t]: Accumulator[List, t] = error("TODO")
+ def accumulator[t]: Accumulator[List, t] = error("TODO")
}
-
+
// TODO: the var tl approach does not seem to work because subtyping isn't fully working yet
final case class ::[+b](hd: b, private val tl: List[b]) extends List[b] {
def head = hd
def tail = if(tl==null) this else tl // hack
override def isEmpty: boolean = false
}
-
+
case object Nil extends List[Nothing] {
def isEmpty = true
def head: Nothing =
@@ -149,18 +149,18 @@ trait HOSeq {
def filter(f: T=>Boolean): FilterResult
def subseq(from: int, to: int): Subseq
def flatMap[S <: Seq[K], K](f: T => S): S#Concat // legal?
- def concat(others: Seq[T]): Concat
+ def concat(others: Seq[T]): Concat
*/
-
+
/*trait Iterator[t] {
// @post hasAdvanced implies hasNext
// model def hasAdvanced: Boolean
-
+
def hasNext: Boolean // pure
-
+
// @pre hasAdvanced
def current: t // pure
-
+
// @pre hasNext
// @post hasAdvanced
def advance: Unit
diff --git a/docs/examples/tcpoly/monads/Monads.scala b/docs/examples/tcpoly/monads/Monads.scala
index 5a966ce960..b6e3d5b9a8 100644
--- a/docs/examples/tcpoly/monads/Monads.scala
+++ b/docs/examples/tcpoly/monads/Monads.scala
@@ -6,18 +6,18 @@ trait Monads {
* (>>=) :: m a -> (a -> m b) -> m b
* return :: a -> m a
*
- * MonadTC encodes the above Haskell type class,
+ * MonadTC encodes the above Haskell type class,
* an instance of MonadTC corresponds to a method dictionary.
* (see http://lampwww.epfl.ch/~odersky/talks/wg2.8-boston06.pdf)
*
* Note that the identity (`this') of the method dictionary does not really correspond
- * to the instance of m[x] (`self') that is `wrapped': e.g., unit does not use `self' (which
+ * to the instance of m[x] (`self') that is `wrapped': e.g., unit does not use `self' (which
* corresponds to the argument of the implicit conversion that encodes an instance of this type class)
*/
// Option =:= [x] => Option[x] <: [x] => Any
-// trait MonadTC[m <: [x] => Any, a] {
+// trait MonadTC[m <: [x] => Any, a] {
// MonadTC[m[x], a] x is a type parameter too -- should not write e.g., m[Int] here
- trait MonadTC[m[x], a] {
+ trait MonadTC[m[x], a] {
def unit[a](orig: a): m[a]
// >>='s first argument comes from the implicit definition constructing this "method dictionary"
@@ -32,7 +32,7 @@ trait Monads {
*/
trait OptionMonad extends Monads {
// this implicit method encodes the Monad type class instance for Option
- implicit def OptionInstOfMonad[a](self: Option[a]): MonadTC[Option, a]
+ implicit def OptionInstOfMonad[a](self: Option[a]): MonadTC[Option, a]
= new MonadTC[Option, a] {
def unit[a](orig: a) = Some(orig)
def >>=[b](fun: a => Option[b]): Option[b] = self match {
@@ -47,8 +47,8 @@ object main extends OptionMonad with Application {
}
-/*
-trait MonadTC[m[x], a] requires m[x] {
+/*
+trait MonadTC[m[x], a] requires m[x] {
def unit[a](orig: a): m[a]
// >>='s first argument comes from the implicit definition constructing this "method dictionary"
diff --git a/docs/examples/typeinf.scala b/docs/examples/typeinf.scala
index 80980ebc9a..d4bc8bf3e1 100644
--- a/docs/examples/typeinf.scala
+++ b/docs/examples/typeinf.scala
@@ -69,14 +69,14 @@ object typeInfer {
case Tycon(k, ts) => (List[Tyvar]() /: ts) ((tvs, t) => tvs union tyvars(t))
}
- def tyvars(ts: TypeScheme): List[Tyvar] =
+ def tyvars(ts: TypeScheme): List[Tyvar] =
tyvars(ts.tpe) diff ts.tyvars;
def tyvars(env: Env): List[Tyvar] =
(List[Tyvar]() /: env) ((tvs, nt) => tvs union tyvars(nt._2))
def mgu(t: Type, u: Type, s: Subst): Subst = Pair(s(t), s(u)) match {
- case Pair(Tyvar(a), Tyvar(b)) if (a == b) =>
+ case Pair(Tyvar(a), Tyvar(b)) if (a == b) =>
s
case Pair(Tyvar(a), _) if !(tyvars(u) contains a) =>
s.extend(Tyvar(a), u)
@@ -181,7 +181,7 @@ object typeInfer {
yield Lam(x, t): Term )
|||
( for (
- letid <- id if letid == "let";
+ letid <- id if letid == "let";
x <- ident;
_ <- wschr('=');
t <- term;
diff --git a/docs/examples/xml/phonebook/embeddedBook.scala b/docs/examples/xml/phonebook/embeddedBook.scala
index 8ea9628212..3286485f0b 100644
--- a/docs/examples/xml/phonebook/embeddedBook.scala
+++ b/docs/examples/xml/phonebook/embeddedBook.scala
@@ -1,5 +1,5 @@
/* examples/phonebook/embeddedBook.scala */
-package phonebook
+package phonebook
object embeddedBook {
@@ -8,14 +8,14 @@ object embeddedBook {
val last = "Emir"
val location = "work"
- val embBook =
+ val embBook =
<phonebook>
<descr>
- This is the <b>phonebook</b> of the
+ This is the <b>phonebook</b> of the
{company} corporation.
</descr>
<entry>
- <name>{ first+" "+last }</name>
+ <name>{ first+" "+last }</name>
<phone where={ location }>+41 21 693 68 {val x = 60 + 7; x}</phone>
</entry>
</phonebook>;
diff --git a/docs/examples/xml/phonebook/phonebook.scala b/docs/examples/xml/phonebook/phonebook.scala
index 4813c2d20d..3c0dfbd837 100644
--- a/docs/examples/xml/phonebook/phonebook.scala
+++ b/docs/examples/xml/phonebook/phonebook.scala
@@ -2,14 +2,14 @@ package phonebook ;
object phonebook {
- val labPhoneBook =
+ val labPhoneBook =
<phonebook>
<descr>
- This is the <b>phonebook</b> of the
+ This is the <b>phonebook</b> of the
<a href="http://acme.org">ACME</a> corporation.
</descr>
<entry>
- <name>Burak</name>
+ <name>Burak</name>
<phone where="work"> +41 21 693 68 67</phone>
<phone where="mobile">+41 79 602 23 23</phone>
</entry>
@@ -22,14 +22,14 @@ object phonebook {
import scala.xml.{ Node, Text };
def add( phonebook:Node, newEntry:Node ):Node = phonebook match {
- case <phonebook>{ ch @ _* }</phonebook> =>
+ case <phonebook>{ ch @ _* }</phonebook> =>
<phonebook>{ ch }{ newEntry }</phonebook>
}
- val pb2 =
- add( labPhoneBook,
+ val pb2 =
+ add( labPhoneBook,
<entry>
- <name>Kim</name>
+ <name>Kim</name>
<phone where="work"> +41 21 111 11 11</phone>
</entry> );
diff --git a/docs/examples/xml/phonebook/phonebook1.scala b/docs/examples/xml/phonebook/phonebook1.scala
index 3a7a165202..316c6c1995 100644
--- a/docs/examples/xml/phonebook/phonebook1.scala
+++ b/docs/examples/xml/phonebook/phonebook1.scala
@@ -1,16 +1,16 @@
/* examples/phonebook/phonebook1.scala */
-package phonebook
+package phonebook
object phonebook1 {
- val labPhoneBook =
+ val labPhoneBook =
<phonebook>
<descr>
- This is the <b>phonebook</b> of the
+ This is the <b>phonebook</b> of the
<a href="http://acme.org">ACME</a> corporation.
</descr>
<entry>
- <name>Burak Emir</name>
+ <name>Burak Emir</name>
<phone where="work">+41 21 693 68 67</phone>
</entry>
</phonebook>;
diff --git a/docs/examples/xml/phonebook/phonebook2.scala b/docs/examples/xml/phonebook/phonebook2.scala
index ba50379369..2a708daf7c 100644
--- a/docs/examples/xml/phonebook/phonebook2.scala
+++ b/docs/examples/xml/phonebook/phonebook2.scala
@@ -8,18 +8,18 @@ object phonebook2 {
/** adds an entry to a phonebook */
def add( p: Node, newEntry: Node ): Node = p match {
- case <phonebook>{ ch @ _* }</phonebook> =>
+ case <phonebook>{ ch @ _* }</phonebook> =>
<phonebook>{ ch }{ newEntry }</phonebook>
}
- val pb2 =
- add( phonebook1.labPhoneBook,
+ val pb2 =
+ add( phonebook1.labPhoneBook,
<entry>
- <name>Kim</name>
+ <name>Kim</name>
<phone where="work">+41 21 111 11 11</phone>
</entry> );
- def main( args: Array[String] ) =
+ def main( args: Array[String] ) =
Console.println( pb2 )
}
diff --git a/docs/examples/xml/phonebook/phonebook3.scala b/docs/examples/xml/phonebook/phonebook3.scala
index 0dfae351b5..12f2deaa79 100644
--- a/docs/examples/xml/phonebook/phonebook3.scala
+++ b/docs/examples/xml/phonebook/phonebook3.scala
@@ -17,57 +17,57 @@ object phonebook3 {
import xml.Utility.{trim,trimProper} //removes whitespace nodes, which are annoying in matches
- for( val c <- ch ) yield
+ for( val c <- ch ) yield
trimProper(c) match {
// if the node is the particular entry we are looking for, return an updated copy
- case x @ <entry><name>{ Text(Name) }</name>{ ch1 @ _* }</entry> =>
+ case x @ <entry><name>{ Text(Name) }</name>{ ch1 @ _* }</entry> =>
var updated = false;
val ch2 = for(c <- ch1) yield c match { // does it have the phone number?
- case y @ <phone>{ _* }</phone> if y \ "@where" == Where =>
+ case y @ <phone>{ _* }</phone> if y \ "@where" == Where =>
updated = true
<phone where={ Where }>{ newPhone }</phone>
-
+
case y => y
-
+
}
if( !updated ) { // no, so we add as first entry
-
+
<entry>
<name>{ Name }</name>
<phone where={ Where }>{ newPhone }</phone>
{ ch1 }
</entry>
-
+
} else { // yes, and we changed it as we should
-
+
<entry>
{ ch2 }
</entry>
-
- }
+
+ }
// end case x @ <entry>...
-
+
// other entries are copied without changing them
- case x =>
+ case x =>
x
-
+
}
} ; // for ... yield ... returns an Iterator[Node]
-
+
// decompose phonebook, apply updates
phonebook match {
case <phonebook>{ ch @ _* }</phonebook> =>
<phonebook>{ copyOrChange( ch.iterator ) }</phonebook>
}
-
+
}
- val pb2 =
+ val pb2 =
change( phonebook1.labPhoneBook, "John", "work", "+41 55 555 55 55" );
val pp = new PrettyPrinter( 80, 5 );
diff --git a/docs/examples/xml/phonebook/verboseBook.scala b/docs/examples/xml/phonebook/verboseBook.scala
index 611cf5370e..2dcb155480 100644
--- a/docs/examples/xml/phonebook/verboseBook.scala
+++ b/docs/examples/xml/phonebook/verboseBook.scala
@@ -1,24 +1,24 @@
/* examples/xml/phonebook/verboseBook.scala */
-package phonebook
+package phonebook
object verboseBook {
- import scala.xml.{ UnprefixedAttribute, Elem, Node, Null, Text, TopScope }
+ import scala.xml.{ UnprefixedAttribute, Elem, Node, Null, Text, TopScope }
- val pbookVerbose =
+ val pbookVerbose =
Elem(null, "phonebook", Null, TopScope,
Elem(null, "descr", Null, TopScope,
- Text("This is a "),
+ Text("This is a "),
Elem(null, "b", Null, TopScope, Text("sample")),
Text("description")
),
Elem(null, "entry", Null, TopScope,
Elem(null, "name", Null, TopScope, Text("Burak Emir")),
- Elem(null, "phone", new UnprefixedAttribute("where","work", Null), TopScope,
+ Elem(null, "phone", new UnprefixedAttribute("where","work", Null), TopScope,
Text("+41 21 693 68 67"))
)
)
- def main(args: Array[String]) =
+ def main(args: Array[String]) =
Console.println( pbookVerbose )
}
diff --git a/project/build/AdditionalResources.scala b/project/build/AdditionalResources.scala
index edb4c4e9a2..d83d45b218 100644
--- a/project/build/AdditionalResources.scala
+++ b/project/build/AdditionalResources.scala
@@ -9,7 +9,7 @@ import AdditionalResources._
*/
trait AdditionalResources {
self : BasicLayer =>
-
+
def writeProperties: Option[String] = {
def write0(steps: List[Step]): Option[String] = steps match {
case x :: xs => x match {
@@ -29,18 +29,18 @@ object AdditionalResources {
* A FileFilter that defines what are the files that will be copied
*/
lazy val basicFilter = "*.tmpl" | "*.xml" | "*.js" | "*.css" | "*.properties" | "*.swf" | "*.png"
- implicit def stringToGlob(s: String): NameFilter = GlobFilter(s)
+ implicit def stringToGlob(s: String): NameFilter = GlobFilter(s)
}
trait ResourcesToCopy {
self : CompilationStep =>
-
+
def getResources(from: Path, filter: FileFilter): PathFinder = (from ##)** filter
def getResources(from: Path): PathFinder = getResources(from, AdditionalResources.basicFilter)
-
+
def copyDestination: Path
def filesToCopy: PathFinder
-
+
def copy = {
log.info("Copying files for "+name)
try { FileUtilities.copy(filesToCopy.get, copyDestination, log) }
@@ -59,12 +59,12 @@ trait PropertiesToWrite {
def writeProperties: Option[String] ={
import java.io._
import java.util.Properties
-
+
val properties = new Properties
- def insert(list: List[(String, String)]): Unit =
+ def insert(list: List[(String, String)]): Unit =
list foreach { case (k, v) => properties.setProperty(k, v) }
-
+
try {
insert(propertyList)
val destFile = propertyDestination.asFile
diff --git a/project/build/BasicLayer.scala b/project/build/BasicLayer.scala
index b03637ad4d..b333131d51 100644
--- a/project/build/BasicLayer.scala
+++ b/project/build/BasicLayer.scala
@@ -8,18 +8,18 @@ import ScalaBuildProject._
* @author Grégory Moix
*/
abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, previousLayer: Option[BasicLayer])
- extends ScalaBuildProject
+ extends ScalaBuildProject
with ReflectiveProject
- with AdditionalResources
+ with AdditionalResources
with LayerCompilation
- with BuildInfoEnvironment
+ with BuildInfoEnvironment
with ForkSBT {
layer =>
-
+
// All path values must be lazy in order to avoid initialization issues (sbt way of doing things)
def buildInfoEnvironmentLocation: Path = outputRootPath / ("build-"+name+".properties")
-
+
val forkProperty = "scala.sbt.forked"
def isDebug = info.logger atLevel Level.Debug
def isForked = System.getProperty(forkProperty) != null
@@ -30,13 +30,13 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
lazy val copyright = property[String]
lazy val partestVersionNumber = property[Version]
-
+
lazy val nextLayer: Option[BasicLayer] = None
- def packingDestination : Path = layerOutput / "pack"
+ def packingDestination : Path = layerOutput / "pack"
lazy val libsDestination = packingDestination/ "lib"
lazy val packedStarrOutput = outputRootPath / "pasta"
lazy val requiredPluginsDirForCompilation = layerOutput / "misc" / "scala-devel" / "plugins"
-
+
def compilerAdditionalJars: List[Path] = Nil
def libraryAdditionalJars: List[Path] = Nil
@@ -54,7 +54,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def buildLayer = externalCompilation orElse writeProperties
lazy val build = compile
-
+
lazy val compile = task(buildLayer) dependsOn startLayer
/**
@@ -64,7 +64,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
* is finished.
*/
lazy val finishLayer: ManagedTask = task(None) dependsOn compile
-
+
def cleaningList = List(
layerOutput,
layerEnvironment.envBackingPath,
@@ -76,7 +76,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
// We use super.task, so cleaning is done in every case, even when locked
lazy val clean: Task = nextLayer match {
case Some(next) => super.task(cleanFiles) dependsOn next.clean
- case _ => super.task(cleanFiles)
+ case _ => super.task(cleanFiles)
}
lazy val cleanBuild = task(cleanFiles orElse buildLayer) dependsOn startLayer
@@ -91,13 +91,13 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def outputCompilerJar = compilerConfig.packagingConfig.jarDestination
def outputLibraryJar = libraryWS.packagingConfig.jarDestination
def outputPartestJar = partestConfig.packagingConfig.jarDestination
- def outputScalapJar = scalapConfig.packagingConfig.jarDestination
+ def outputScalapJar = scalapConfig.packagingConfig.jarDestination
def scalapOutput = scalapConfig.outputDirectory
def swingOutput = swingConfig.outputDirectory
def swingSrcDir = swingConfig.srcDir
// CONFIGURATION OF THE COMPILATION STEPS
-
+
/**
* Configuration of the core library compilation
*/
@@ -109,7 +109,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def copyDestination = outputDirectory
def filesToCopy = getResources(srcDir)
-
+
def propertyDestination = outputDirectory / "library.properties"
def propertyList = ("version.number",versionNumber) :: ("copyright.string", copyright.value) :: Nil
}
@@ -139,7 +139,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
new PackagingConfiguration(libsDestination / compilerJarName, List(outputDirectory ##), manifest , compilerAdditionalJars)
}
lazy val starrPackagingConfig = new PackagingConfiguration(packedStarrOutput/compilerJarName, List(outputDirectory ##))
-
+
}
//// ADDTIONNAL LIBRARIES ////
@@ -161,7 +161,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def label = "["+layer.name+"] dbc library"
def options: Seq[String] = Seq()
def dependencies = libraryConfig :: Nil
-
+
lazy val packagingConfig = new PackagingConfiguration(
libsDestination / dbcJarName,
List(outputDirectory ##)
@@ -207,7 +207,7 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def dependencies = libraryConfig :: compilerConfig :: Nil
val decoderProperties = (srcDir ## ) / "decoder.properties"
-
+
lazy val packagingConfig = new PackagingConfiguration(
libsDestination / scalapJarName,
List(outputDirectory ##, decoderProperties)
@@ -231,9 +231,9 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
("version.number", partestVersionNumber.value.toString),
("copyright.string", copyright.value)
)
-
- lazy val packagingConfig = new PackagingConfiguration(libsDestination / partestJarName, List(outputDirectory ##))
-
+
+ lazy val packagingConfig = new PackagingConfiguration(libsDestination / partestJarName, List(outputDirectory ##))
+
}
///// PLUGINS CONFIGURATION ////////
@@ -243,9 +243,9 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def projectRoot: Path = pathLayout.projectRoot
def sources: Path = pathLayout.srcDir / "continuations" / "plugin"
def analysis: Path = pathLayout.analysisOutput / "continuations" / "plugin"
- def output: Path = pathLayout.classesOutput / "continuations" / "plugin"
+ def output: Path = pathLayout.classesOutput / "continuations" / "plugin"
}
-
+
new CompilationStep("continuation-plugin", config, log) with ResourcesToCopy with EarlyPackaging {
def label = "["+layer.name+"] continuation plugin"
def dependencies = libraryConfig :: compilerConfig :: Nil
@@ -270,9 +270,9 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
def projectRoot: Path = pathLayout.projectRoot
def sources: Path = pathLayout.srcDir / "continuations" / "library"
def analysis: Path = pathLayout.analysisOutput / "continuations" / "library"
- def output: Path = pathLayout.classesOutput / "continuations" / "library"
+ def output: Path = pathLayout.classesOutput / "continuations" / "library"
}
-
+
new CompilationStep("continuation-library", config, log) {
def label = "["+layer.name+"] continuation library"
def dependencies = libraryConfig :: compilerConfig :: continuationPluginConfig :: Nil
@@ -287,10 +287,10 @@ abstract class BasicLayer(val info: ProjectInfo, val versionNumber: String, prev
// Grouping compilation steps
def minimalCompilation = false // It must be true for locker because we do not need to compile everything
-
+
def libraryWS: WrapperStep with Packaging
def toolsWS: WrapperStep
- lazy val pluginsWS = new WrapperStep(continuationPluginConfig :: continuationLibraryConfig :: Nil)
+ lazy val pluginsWS = new WrapperStep(continuationPluginConfig :: continuationLibraryConfig :: Nil)
lazy val allSteps = new WrapperStep(libraryWS :: compilerConfig :: pluginsWS :: toolsWS :: Nil)
}
diff --git a/project/build/BuildInfoEnvironment.scala b/project/build/BuildInfoEnvironment.scala
index a7f3d4ba96..fc1c436c33 100644
--- a/project/build/BuildInfoEnvironment.scala
+++ b/project/build/BuildInfoEnvironment.scala
@@ -12,10 +12,10 @@ trait BuildInfoEnvironment {
// use the project's Logger for any properties-related logging
def log = self.log
- // the properties file will be read/stored
+ // the properties file will be read/stored
def envBackingPath = buildInfoEnvironmentLocation
// define some properties
lazy val lastCompilerVersion: Property[String] = propertyOptional[String]("")
- }
+ }
}
diff --git a/project/build/Comparator.scala b/project/build/Comparator.scala
index 32b1a516c6..7400788ba9 100644
--- a/project/build/Comparator.scala
+++ b/project/build/Comparator.scala
@@ -26,21 +26,21 @@ object Comparator {
val originPaths = filter(origin).get
-
+
val bufferSize = 1024
val originBuffer = new Array[Byte](bufferSize)
val destBuffer = new Array[Byte](bufferSize)
-
+
for (originPath <- originPaths.filter(! _.isDirectory)){
log.debug("origin :" + originPath.absolutePath)
val destPath = getMappedPath(originPath, dest)
log.debug("dest :" + destPath.absolutePath)
- var equalNow = true
+ var equalNow = true
val originFile = originPath.asFile
val destFile = destPath.asFile
if (originFile.canRead && destFile.canRead) {
-
+
val originStream = new FileInputStream(originFile)
val destStream = new FileInputStream(destFile)
var originRemaining = originStream.read(originBuffer)
@@ -63,7 +63,7 @@ object Comparator {
}
else reportMissing(originFile)
-
+
}
if(allEqualNow) None else Some("There were differences between "+origin.absolutePath+ " and "+ dest.absolutePath)
}
diff --git a/project/build/Compilation.scala b/project/build/Compilation.scala
index 9a313cab07..d581b2b736 100644
--- a/project/build/Compilation.scala
+++ b/project/build/Compilation.scala
@@ -58,7 +58,7 @@ trait Compilation {
}
/**
- * When we finishe to compile a step we want to jar if necessary in order to
+ * When we finishe to compile a step we want to jar if necessary in order to
* be able to load plugins for the associated library
*/
def earlyPackaging(step: CompilationStep): Option[String] = step match {
diff --git a/project/build/CompilationStep.scala b/project/build/CompilationStep.scala
index d6310a9646..000dca0234 100644
--- a/project/build/CompilationStep.scala
+++ b/project/build/CompilationStep.scala
@@ -14,7 +14,7 @@ abstract class CompilationStep(val name: String, val pathConfig: PathConfig, log
// Utility methods (for quick access, ...)
final def srcDir = pathConfig.sources
-
+
// Methods required for the compilation
def log: Logger = logger
final def sourceRoots : PathFinder = pathConfig.sources
diff --git a/project/build/ForkSBT.scala b/project/build/ForkSBT.scala
index 986c2166dc..b30e35e61f 100644
--- a/project/build/ForkSBT.scala
+++ b/project/build/ForkSBT.scala
@@ -16,7 +16,7 @@ trait ForkSBT {
import java.lang.management.ManagementFactory
ManagementFactory.getRuntimeMXBean().getInputArguments().toList
}
-
+
private var extraJVMArgs: List[String] = Nil
def withJVMArgs[T](args: String*)(body: => T): T = {
val saved = extraJVMArgs
@@ -27,16 +27,16 @@ trait ForkSBT {
// Set a property in forked sbts to inhibit possible forking cycles.
def markForked = "-D" + forkProperty + "=true"
-
+
/** Forks a new process to run "sbt task task ...":
*/
def forkTasks(tasks: String*): Boolean = {
require (!isForked, "Tried to fork but sbt is already forked: " + tasks.mkString(" "))
-
+
val sbtJar = System.getProperty("java.class.path")
val sbtMain = "xsbt.boot.Boot" // ok, much of anything.
val args = jvmArguments ++ Seq(markForked, "-classpath", sbtJar, sbtMain) ++ tasks
-
+
log.info("Forking: " + args.mkString("java ", " ", ""))
Fork.java(None, args, StdoutOutput) == 0
}
diff --git a/project/build/Packer.scala b/project/build/Packer.scala
index fde5a732a9..73db5567b6 100644
--- a/project/build/Packer.scala
+++ b/project/build/Packer.scala
@@ -7,14 +7,14 @@ import FileUtilities._
object Packer {
-
+
/**
* A filter that exclude files that musn't be in a jar file.
*/
// We must exclude the manifest because we generate it automatically, and when we add multiples other jars, they could have
// also a manifest files each, resulting in conflicts for the FileUtilities.jar(..) method
def jarPattern(path: PathFinder) = path.descendentsExcept(AllPassFilter, (".*" - ".") || HiddenFileFilter || new ExactFilter("MANIFEST.MF")).get
-
+
def createJar(j: Packaging, log: Logger): Option[String] = createJar(j.packagingConfig, log, jarPattern _, true)
def createJar(j: PackagingConfiguration, log: Logger): Option[String] = createJar(j, log, jarPattern _, true)
@@ -26,7 +26,7 @@ object Packer {
def pack0(content: Iterable[Path])= jar(content.flatMap(filter(_)), j.jarDestination, j.manifest, false, log)
j.jarsToInclude match {
- case Nil => pack0(j.content)
+ case Nil => pack0(j.content)
case list if addIncludedLibs => {
withTemporaryDirectory(log) { tmp: File =>
val tmpPath = Path.fromFile(tmp)
@@ -41,7 +41,7 @@ object Packer {
}
}
case _ => pack0(j.content)
-
+
}
}
@@ -53,9 +53,9 @@ object Packer {
*/
trait Packer {
self: BasicLayer =>
-
+
def libraryToCopy: List[Path] = Nil
-
+
/**
* The actual pack task.
*/
@@ -72,7 +72,7 @@ trait Packer {
}
def copy0 ={
- copyFile(manifestPath,packingDestination/"META-INF"/"MANIFEST.MF", log) orElse {
+ copyFile(manifestPath,packingDestination/"META-INF"/"MANIFEST.MF", log) orElse {
copy(libraryToCopy, packingDestination , true, true, log) match {
case Right(_) => None
case Left(e) => Some(e)
@@ -91,7 +91,7 @@ class PackagingConfiguration(val jarDestination: Path, val content: Iterable[Pat
}
trait Packaging extends Step {
- def packagingConfig: PackagingConfiguration
+ def packagingConfig: PackagingConfiguration
}
trait WrapperPackaging extends Packaging {
@@ -106,7 +106,7 @@ trait WrapperPackaging extends Packaging {
}
}
getContent(dependencies.toList, Nil)
- }
+ }
}
/**
diff --git a/project/build/Partest.scala b/project/build/Partest.scala
index 78d35ef65c..7771c6f208 100755
--- a/project/build/Partest.scala
+++ b/project/build/Partest.scala
@@ -12,7 +12,7 @@ class TestSet(val SType: TestSetType.Value, val kind: String, val description: S
f.partition((f: File) => files.elements.exists((e: File) => f == e))
}
}
-
+
object TestSet {
def apply(sType: TestSetType.Value, kind: String, description: String, files: PathFinder)= new TestSet(sType, kind, description, filter(files))
def filter(p: PathFinder): Array[File] =( p --- p **(HiddenFileFilter || GlobFilter("*.obj")||GlobFilter("*.log"))).getFiles.toArray
@@ -31,7 +31,7 @@ trait PartestRunner {
import Partest.runTest
import TestSetType._
-
+
lazy val testRoot = projectRoot / "test"
lazy val testFiles = testRoot / "files" ##
lazy val testLibs = testFiles / "lib"
@@ -50,7 +50,7 @@ trait PartestRunner {
// lazy val negContinuationTest = TestSet(Continuations,"neg", "Compiling continuations files that are expected to fail", testFiles / "continuations-neg" * ("*.scala" || DirectoryFilter))
// lazy val runContinuationTest = TestSet(Continuations,"run", "Compiling and running continuations files", testFiles / "continuations-run" ** ("*.scala" ))
- //
+ //
// lazy val continuationScalaOpts = (
// "-Xpluginsdir " +
// continuationPluginConfig.packagingConfig.jarDestination.asFile.getParent +
@@ -58,9 +58,9 @@ trait PartestRunner {
// )
lazy val testSuiteFiles: List[TestSet] = List(
- posFilesTest, negFilesTest, runFilesTest, jvmFilesTest, resFilesTest,
- buildmanagerFilesTest,
- //scalacheckFilesTest,
+ posFilesTest, negFilesTest, runFilesTest, jvmFilesTest, resFilesTest,
+ buildmanagerFilesTest,
+ //scalacheckFilesTest,
shootoutFilesTest, scalapFilesTest,
specializedFilesTest
)
@@ -71,11 +71,11 @@ trait PartestRunner {
// + (("continuations-neg",negContinuationTest),("continuations-run", runContinuationTest))
private lazy val partestOptions = List("-failed")
-
+
private lazy val partestCompletionList: Seq[String] = {
val len = testFiles.asFile.toString.length + 1
-
- filesTestMap.keys.toList ++ partestOptions ++
+
+ filesTestMap.keys.toList ++ partestOptions ++
(filesTestMap.values.toList flatMap (_.files) map (_.toString take len))
}
@@ -85,7 +85,7 @@ trait PartestRunner {
outputLibraryJar,
(outputLibraryJar +++ outputCompilerJar +++ outputPartestJar +++ outputScalapJar +++ antJar +++ jlineJar +++ (testLibs * "*.jar")).get,
testRoot,
- tests,
+ tests,
None
)
@@ -107,11 +107,11 @@ trait PartestRunner {
failedOnly, true, isDebug, log
)
}
-
+
def partestDebugProp =
if (isDebug) List("-Dpartest.debug=true")
else Nil
-
+
lazy val externalPartest = task { args =>
task {
if (isForked) partest(args).run
@@ -132,9 +132,9 @@ trait PartestRunner {
setOptions(xs, acc)
case x :: xs =>
setOptions(xs, x :: acc)
- case _ => acc
+ case _ => acc
}
-
+
def resolveSets(l: List[String], rem: List[String], acc: List[TestSet]): (List[String], List[TestSet]) = {
def searchSet(arg: String): Option[TestSet] = filesTestMap get arg
@@ -146,13 +146,13 @@ trait PartestRunner {
case Nil => (rem, acc)
}
}
-
+
def resolveFiles(l: List[String], sets: List[TestSet]):(List[String], List[TestSet]) = {
def resolve0(filesToResolve: List[File], setsToSearchIn: List[TestSet], setAcc: List[TestSet]):(List[String], List[TestSet])= {
filesToResolve match {
case Nil => (Nil, setAcc) // If we have no files left to resolve, we can return the list of the set we have
case list => {
- setsToSearchIn match {
+ setsToSearchIn match {
case Nil => (list.map(_.toString), setAcc)// If we already had search all sets to find a match, we return the list of the files that where problematic and the set we have
case x :: xs => {
val (found, notFound)= x.splitContent(list)
@@ -166,19 +166,19 @@ trait PartestRunner {
}
}
}
-
+
}
-
+
resolve0(l.map(Path.fromString(testFiles, _).asFile), filesTestMap.values.toList, sets)
}
val keys = setOptions(args.toList, Nil)
-
+
if (keys.isEmpty) {
task { runPartest(testSuiteFiles, None, failedOnly) }
}
else {
- val (fileNames, sets) = resolveSets(keys, Nil, Nil)
+ val (fileNames, sets) = resolveSets(keys, Nil, Nil)
val (notFound, allSets) = resolveFiles(fileNames, sets)
if (!notFound.isEmpty)
log.info("Don't know what to do with : \n"+notFound.mkString("\n"))
@@ -191,11 +191,11 @@ trait PartestRunner {
// } // this is the case where there were only config options, we will run the standard test suite
// }
// else {
- // val (fileNames, sets) = resolveSets(keys, Nil, Nil)
+ // val (fileNames, sets) = resolveSets(keys, Nil, Nil)
// val (notFound, allSets) = resolveFiles(fileNames, sets)
// if (!notFound.isEmpty)
// log.info("Don't know what to do with : \n"+notFound.mkString("\n"))
- //
+ //
// val (std, continuations) = allSets partition (_.SType == TestSetType.Std)
// task {
// runPartest(std, None, failedOnly) orElse {
@@ -214,7 +214,7 @@ object Partest {
javacmd: Option[File],
javaccmd: Option[File],
scalacOpts: Option[String],
- timeout: Option[String],
+ timeout: Option[String],
showDiff: Boolean,
showLog: Boolean,
runFailed: Boolean,
@@ -222,10 +222,10 @@ object Partest {
debug: Boolean,
log: Logger
): Option[String] = {
-
+
if (debug)
log.setLevel(Level.Debug)
-
+
if (config.classpath.isEmpty)
return Some("The classpath is empty")
@@ -256,14 +256,14 @@ object Partest {
}
def setFileManagerStringProperty(name: String, value: String) {
- log.debug("Setting partest property :"+name+" to :"+value)
+ log.debug("Setting partest property :"+name+" to :"+value)
val setMethod =
fileManager.getClass.getMethod(name+"_$eq", Array(classOf[String]): _*)
setMethod.invoke(fileManager, Array(value).asInstanceOf[Array[Object]]: _*)
}
// System.setProperty("partest.srcdir", "files")
-
+
setFileManagerBooleanProperty("showDiff", showDiff)
setFileManagerBooleanProperty("showLog", showLog)
setFileManagerBooleanProperty("failed", runFailed)
@@ -281,7 +281,7 @@ object Partest {
type TFSet = (Array[File], String, String)
val testFileSets = config.tests
-
+
def resultsToStatistics(results: Iterable[(_, Int)]): (Int, Int) = {
val (files, failures) = results map (_._2 == 0) partition (_ == true)
def count(i: Iterable[_]): Int ={
@@ -293,7 +293,7 @@ object Partest {
}
(count(files), count(failures))
}
-
+
def runSet(set: TestSet): (Int, Int, Iterable[String]) = {
val (files, name, msg) = (set.files, set.kind, set.description)
@@ -311,7 +311,7 @@ object Partest {
case (path, 1) => path + " [FAILED]"
case (path, 2) => path + " [TIMOUT]"
})
-
+
val r =(succs, fails, failed)
config.junitReportDir match {
@@ -319,9 +319,9 @@ object Partest {
val report = testReport(name, results, succs, fails)
scala.xml.XML.save(d/name+".xml", report)
}
- case None =>
+ case None =>
}
-
+
r
}
}
@@ -330,7 +330,7 @@ object Partest {
val allSuccesses = _results.map (_._1).foldLeft(0)( _ + _ )
val allFailures = _results.map (_._2).foldLeft(0)( _ + _ )
val allFailedPaths = _results flatMap (_._3)
-
+
def f(msg: String): Option[String] =
if (errorOnFailed && allFailures > 0) {
Some(msg)
@@ -346,7 +346,7 @@ object Partest {
else "Test suite finished with no failures."
f(msg)
-
+
}
private def oneResult(res: (String, Int)) =
@@ -355,9 +355,9 @@ object Partest {
case 0 => scala.xml.NodeSeq.Empty
case 1 => <failure message="Test failed"/>
case 2 => <failure message="Test timed out"/>
- }
+ }
}</testcase>
-
+
private def testReport(kind: String, results: Iterable[(String, Int)], succs: Int, fails: Int) =
<testsuite name ={kind} tests ={(succs + fails).toString} failures ={fails.toString}>
<properties/>
diff --git a/project/build/PathConfig.scala b/project/build/PathConfig.scala
index eccd0faf07..3ed56846f9 100644
--- a/project/build/PathConfig.scala
+++ b/project/build/PathConfig.scala
@@ -1,6 +1,6 @@
import sbt._
-/**
+/**
* An abstract class for grouping all different paths that are needed to
* compile the a CompilationStep
* @author Grégory Moix
@@ -21,7 +21,7 @@ trait SimpleOutputLayout {
def outputDir: Path
lazy val classesOutput = outputDir / PathConfig.classes
lazy val analysisOutput = outputDir / PathConfig.analysis
-
+
}
class PathLayout(val projectRoot: Path, val outputDir: Path) extends SimpleOutputLayout {
diff --git a/project/build/SVN.scala b/project/build/SVN.scala
index 6a64e727f9..427469eb64 100644
--- a/project/build/SVN.scala
+++ b/project/build/SVN.scala
@@ -14,7 +14,7 @@ class SVN(root: Path) {
* It assumes that svn or git is installed on the running computer. Return 0 if it was not
* able to found the revision number
*/
- def getRevisionNumber: Int = getSvn orElse getGit getOrElse 0
+ def getRevisionNumber: Int = getSvn orElse getGit getOrElse 0
def getSvn: Option[Int] = {
/** Doing this the hard way trying to suppress the svn error message
* on stderr. Could not figure out how to do it simply in sbt.
@@ -22,15 +22,15 @@ class SVN(root: Path) {
val pb = new java.lang.ProcessBuilder("svn", "info")
pb directory root.asFile
pb redirectErrorStream true
-
+
Process(pb).lines_! foreach {
case GitSvnRegex(rev) => return Some(rev.toInt)
case _ => ()
}
None
}
-
- def getGit: Option[Int] =
+
+ def getGit: Option[Int] =
try { Some(Process(GitSvnRevTool.toString, root).!!.trim.toInt) }
catch { case _: Exception => None }
}
diff --git a/project/build/ScalaBuildProject.scala b/project/build/ScalaBuildProject.scala
index a94206006e..250ad7a429 100644
--- a/project/build/ScalaBuildProject.scala
+++ b/project/build/ScalaBuildProject.scala
@@ -3,10 +3,10 @@ import ScalaBuildProject._
abstract class ScalaBuildProject extends Project {
- lazy val projectRoot = info.projectPath
+ lazy val projectRoot = info.projectPath
lazy val layerOutput = outputRootPath / name
lazy val pathLayout = new PathLayout(projectRoot, layerOutput)
-
+
lazy val manifestPath = projectRoot/"META-INF"/"MANIFEST.MF"
lazy val lib = projectRoot / "lib"
diff --git a/project/build/ScalaSBTBuilder.scala b/project/build/ScalaSBTBuilder.scala
index 00e56515e7..81c7860020 100644
--- a/project/build/ScalaSBTBuilder.scala
+++ b/project/build/ScalaSBTBuilder.scala
@@ -19,15 +19,15 @@ class ScalaSBTBuilder(val info: ProjectInfo)
* incremental build, which means sbt doesn't get used at all, so this is better.)
*/
System.setProperty("sbt.intransitive", "true")
-
+
// Required by BasicDependencyProject
def fullUnmanagedClasspath(config: Configuration) = unmanagedClasspath
override def dependencies: Iterable[Project] = (
- info.dependencies ++
- locker.dependencies ++
- quick.dependencies ++
- strap.dependencies ++
+ info.dependencies ++
+ locker.dependencies ++
+ quick.dependencies ++
+ strap.dependencies ++
libs.dependencies
)
override def shouldCheckOutputDirectories = false
@@ -52,11 +52,11 @@ class ScalaSBTBuilder(val info: ProjectInfo)
lazy val pasta = quick.pasta.describedAs(pastaTaskDescription)
lazy val stabilityTest = strap.stabilityTest.describedAs(stabilityTestTaskDescription)
lazy val test = quick.externalPartest.describedAs(partestTaskDescription)
-
+
// Non-standard names for tasks chosen earlier which I point at the standard ones.
lazy val build = compile
lazy val partest = test
-
+
// Top level variables
/**
@@ -73,7 +73,7 @@ class ScalaSBTBuilder(val info: ProjectInfo)
}
def getVersion: String = projectVersion.value.toString takeWhile (_ != '-') mkString
def getRevision: Int = new SVN(info.projectPath) getRevisionNumber
-
+
getVersion+".r"+getRevision+"-b"+getTimeString
}
@@ -115,11 +115,11 @@ class ScalaSBTBuilder(val info: ProjectInfo)
}
else action
}
-
+
def deleteLock = FileUtilities.clean(lockFile, log)
def createLock = {
log.info("locking "+name)
- FileUtilities.touch(lockFile, log)
+ FileUtilities.touch(lockFile, log)
}
/**
@@ -156,13 +156,13 @@ class ScalaSBTBuilder(val info: ProjectInfo)
override lazy val packingDestination: Path = outputRootPath /"palo"
- override lazy val libraryWS = {
+ override lazy val libraryWS = {
new WrapperStep(libraryConfig :: Nil) with WrapperPackaging {
lazy val packagingConfig = new PackagingConfiguration(libsDestination/libraryJarName, jarContent)
}
}
override val minimalCompilation = true
- override lazy val pluginsWS: WrapperStep = new WrapperStep(Nil)
+ override lazy val pluginsWS: WrapperStep = new WrapperStep(Nil)
override lazy val toolsWS = new WrapperStep(Nil)
}
@@ -175,20 +175,20 @@ class ScalaSBTBuilder(val info: ProjectInfo)
with Packer with ScalaTools with Scaladoc {
override lazy val nextLayer = Some(strap)
-
+
lazy val instantiationCompilerJar = previous.compilerOutput
lazy val instantiationLibraryJar = previous.libraryOutput
override lazy val packingDestination: Path = outputRootPath/ "pack"
-
+
override def libraryToCopy = jlineJar :: Nil
override def compilerAdditionalJars = msilJar :: fjbgJar :: Nil
override def libraryAdditionalJars = forkJoinJar :: Nil
-
+
override def cleaningList = packedStarrOutput :: super.cleaningList
-
+
override lazy val libraryWS = new WrapperStep(libraryConfig :: actorsConfig :: dbcConfig :: swingConfig :: Nil) with Packaging {
def jarContent = List(libraryConfig , actorsConfig, continuationLibraryConfig).map(_.outputDirectory ##)
@@ -213,9 +213,9 @@ class ScalaSBTBuilder(val info: ProjectInfo)
createJar(compilerConfig.starrPackagingConfig, log)
}
lazy val pasta = task {
- createNewStarrJar
+ createNewStarrJar
}.dependsOn(build)
-
+
lazy val newStarr = task {
val files = (packedStarrOutput ##) * "*.jar"
FileUtilities.copy(files.get, lib, true, log) match {
@@ -233,7 +233,7 @@ class ScalaSBTBuilder(val info: ProjectInfo)
lazy val binQuick = tools(layerOutput / "bin", quickBinClasspath).dependsOn(finishLayer)
lazy val binPack = tools(packingDestination / "bin", packBinClasspath).dependsOn(pack)
}
-
+
/**
* Definition of what is specific to the strap layer
@@ -246,7 +246,7 @@ class ScalaSBTBuilder(val info: ProjectInfo)
override lazy val libraryWS = new WrapperStep(libraryConfig :: actorsConfig :: dbcConfig :: swingConfig :: Nil) with WrapperPackaging {
lazy val packagingConfig = new PackagingConfiguration(libsDestination/libraryJarName, Set())
-
+
}
override lazy val toolsWS = new WrapperStep(scalacheckConfig :: scalapConfig :: partestConfig :: Nil)
@@ -260,7 +260,7 @@ class ScalaSBTBuilder(val info: ProjectInfo)
lazy val stabilityTest = task {
log.warn("Stability test must be run on a clean build in order to yield correct results.")
- compare
+ compare
}.dependsOn(finishLayer)
}
@@ -270,8 +270,8 @@ class ScalaSBTBuilder(val info: ProjectInfo)
class LibsBuilder(val info: ProjectInfo) extends ScalaBuildProject with ReflectiveProject with Compilation with BuildInfoEnvironment {
override def dependencies = info.dependencies
override def watchPaths = info.projectPath / "src" ** ("*.scala" || "*.java" ||AdditionalResources.basicFilter) // Support of triggered execution at project level
-
-
+
+
def buildInfoEnvironmentLocation: Path = outputRootPath / ("build-"+name+".properties")
def instantiationCompilerJar: Path = locker.compilerOutput
@@ -285,13 +285,13 @@ class ScalaSBTBuilder(val info: ProjectInfo)
val required = "1.6"
if (version.startsWith(required)) None else Some("Incompatible java version : required "+required)
}
-
-
+
+
private def simpleBuild(step: CompilationStep with Packaging)= task {
import Packer._
compile(step) orElse createJar(step, log)
}.dependsOn(locker.finishLayer)
-
+
private def copyJar(step: CompilationStep with Packaging, name: String) = task {
FileUtilities.copyFile(step.packagingConfig.jarDestination, lib/name, log)
}
@@ -309,18 +309,18 @@ class ScalaSBTBuilder(val info: ProjectInfo)
override def sources: PathFinder = sourceRoots.descendentsExcept("*.java", ".svn")
def dependencies = Seq()
def options = Seq()
- override def javaOptions = Seq("-target","1.5","-source","1.5","-g")
+ override def javaOptions = Seq("-target","1.5","-source","1.5","-g")
lazy val packagingConfig = new PackagingConfiguration(libsDestination/forkjoinJarName, List(outputDirectory ##))
}
-
+
lazy val fjbgConfig = new CompilationStep("fjbg", pathLayout, log) with Packaging {
def label = "new fjbg library"
- override def sources: PathFinder = sourceRoots.descendentsExcept("*.java", ".svn")
+ override def sources: PathFinder = sourceRoots.descendentsExcept("*.java", ".svn")
def dependencies = Seq()
def options = Seq()
override def javaOptions = Seq("-target","1.5","-source","1.4","-g")
lazy val packagingConfig = new PackagingConfiguration(libsDestination/fjbgJarName, List(outputDirectory ##))
-
+
}
lazy val msilConfig = new CompilationStep("msil", pathLayout, log) with Packaging {
@@ -329,9 +329,9 @@ class ScalaSBTBuilder(val info: ProjectInfo)
def dependencies = Seq()
override def classpath = super.classpath +++ quick.libraryOutput
def options = Seq()
- override def javaOptions = Seq("-target","1.5","-source","1.4","-g")
+ override def javaOptions = Seq("-target","1.5","-source","1.4","-g")
lazy val packagingConfig = new PackagingConfiguration(libsDestination/msilJarName, List(outputDirectory ##))
-
+
}
def cleaningList = layerOutput :: layerEnvironment.envBackingPath :: Nil
@@ -339,7 +339,7 @@ class ScalaSBTBuilder(val info: ProjectInfo)
def cleanFiles = FileUtilities.clean(cleaningList, true, log)
lazy val clean: Task = task {cleanFiles}// We use super.task, so cleaning is done in every case, even when locked
-
+
}
}
object ScalaSBTBuilder {
diff --git a/project/build/ScalaTools.scala b/project/build/ScalaTools.scala
index 9148177a96..d74639d63a 100644
--- a/project/build/ScalaTools.scala
+++ b/project/build/ScalaTools.scala
@@ -159,7 +159,7 @@ trait ScalaTools {
val fsc = new ToolConfiguration("fsc", destination,"scala.tools.nsc.CompileClient", "",defaultJavaFlags, "", classpath)
val scalap = new ToolConfiguration("scalap",destination, "scala.tools.scalap.Main", "",defaultJavaFlags, "", classpath)
-
+
val toolList = scala :: scalac :: scaladoc :: fsc :: scalap :: Nil
def process(list: List[ToolConfiguration]): Option[String] = list match {
diff --git a/project/build/Scaladoc.scala b/project/build/Scaladoc.scala
index eae006c45f..39bcb5226e 100644
--- a/project/build/Scaladoc.scala
+++ b/project/build/Scaladoc.scala
@@ -32,7 +32,7 @@ trait Scaladoc {
}
lazy val classpath ={
(antJar +++ jlineJar +++ msilJar +++ fjbgJar +++ forkJoinJar +++ outputLibraryJar +++ outputCompilerJar +++ outputPartestJar +++ outputScalapJar ).get
-
+
}
lazy val scaladoc = task(maybeFork(generateScaladoc, "Error generating scaladoc")) dependsOn pack
diff --git a/test/attic/files/cli/test2/Main.scala b/test/attic/files/cli/test2/Main.scala
index 1d43759fdf..11c878b9c0 100644
--- a/test/attic/files/cli/test2/Main.scala
+++ b/test/attic/files/cli/test2/Main.scala
@@ -1,5 +1,5 @@
// @info 1 dependency
-package test2
+package test2
object Main {
def main(args: Array[String]) = {
Console.print("2: ")
diff --git a/test/benchmarks/src/scala/collection/mutable/hashtable-bench.scala b/test/benchmarks/src/scala/collection/mutable/hashtable-bench.scala
index bea1b1df46..c01e7cb46e 100644
--- a/test/benchmarks/src/scala/collection/mutable/hashtable-bench.scala
+++ b/test/benchmarks/src/scala/collection/mutable/hashtable-bench.scala
@@ -16,20 +16,20 @@ object Test {
def go(xs: Iterable[Int], reps: Int) = {
_foreach = 0L
- _iterator = 0L
+ _iterator = 0L
0 until reps foreach { _ =>
_foreach += timed(xs foreach (dummy += _))
_iterator += timed(xs.iterator foreach (dummy += _))
}
-
+
" foreach avg " + (_foreach / reps) + "\n iterator avg " + (_iterator / reps) + "\n"
}
-
+
def go2(xs: collection.Map[Int, Int], reps: Int) = {
_foreach = 0L
- _iterator = 0L
-
+ _iterator = 0L
+
def incDummy(nums: (Int, Int)) = {
dummy += nums._1
dummy -= nums._2
@@ -47,15 +47,15 @@ object Test {
println("map.keys:")
go(map.keys, 10) // warm
println(go(map.keys, 10))
-
+
println("map.values:")
go(map.values, 10) // warm
println(go(map.values, 10))
-
+
println("map:")
go2(map, 10) // warm
println(go2(map, 10))
-
+
println("// pay me no mind ... " + dummy)
}
}
diff --git a/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala b/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
index c3811601e3..bd75764636 100644
--- a/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
+++ b/test/benchmarks/src/scala/collection/parallel/Benchmarking.scala
@@ -8,15 +8,15 @@ import benchmarks._
/**
* All benchmarks are registered here.
- *
+ *
* @author prokopec
*/
trait BenchmarkRegister {
-
+
val benchcreators = LinkedHashSet[BenchCompanion]()
-
+
def register(companion: BenchCompanion) = benchcreators += companion
-
+
// parallel array benchmarks
register(parallel_array.ReduceLight)
register(parallel_array.ReduceNew)
@@ -68,7 +68,7 @@ trait BenchmarkRegister {
register(parallel_array.ScanMedium)
register(parallel_array.GroupByLight)
register(parallel_array.MatrixMultiplication)
-
+
// parallel views
register(parallel_view.DummyViewBenchList.Reduce)
register(parallel_view.DummyViewBenchList.MediumReduce)
@@ -80,7 +80,7 @@ trait BenchmarkRegister {
register(parallel_view.DummyViewBenchList.IterationA)
register(parallel_view.DummyViewBenchList.IterationZ)
register(parallel_view.DummyViewBenchList.IterationP)
-
+
// parallel ranges
register(parallel_range.RangeBenches.Reduce)
register(parallel_range.RangeBenches.ReduceMedium)
@@ -91,11 +91,11 @@ trait BenchmarkRegister {
register(parallel_range.RangeBenches.ForeachModifyHeavy)
register(parallel_range.RangeBenches.MapLight)
register(parallel_range.RangeBenches.MapMedium)
-
+
// array benchmarks
register(arrays.ObjectAccess)
register(arrays.IntAccess)
-
+
// hash benchmarks
register(hashtries.Foreach)
register(hashtries.Iterate)
@@ -103,14 +103,14 @@ trait BenchmarkRegister {
register(hashtries.Lookup)
register(hashtries.Combine)
register(hashtries.MultipleCombine)
-
+
// parallel hash trie benchmarks
register(hashtries.RefParHashTrieBenches.Reduce)
register(hashtries.RefParHashTrieBenches.ReduceMedium)
register(hashtries.RefParHashTrieBenches.Reduce2)
register(hashtries.RefParHashTrieBenches.Map)
register(hashtries.RefParHashTrieBenches.Map2)
-
+
// parallel hash table map benchmarks
register(hashtables.RefParHashTableBenches.Reduce)
register(hashtables.RefParHashTableBenches.Reduce2)
@@ -133,7 +133,7 @@ trait BenchmarkRegister {
register(hashtables.RefParHashTableSetBenches.HeavyMap)
register(hashtables.RefParHashTableSetBenches.Filter)
register(hashtables.RefParHashTableSetBenches.FlatMap)
-
+
// general examples
register(misc.Coder)
register(misc.Loader)
@@ -144,7 +144,7 @@ trait BenchmarkRegister {
* Serves as an entrypoint to run all the benchmarks.
*/
object Benchmarking extends BenchmarkRegister {
-
+
def printHelp {
println("Must enter at least four arguments: <collection> <benchmark> <size of the collection> <type>")
println(" Example: ParArray reduce-light 50000 par")
@@ -160,7 +160,7 @@ object Benchmarking extends BenchmarkRegister {
println(" `-all` for running sequential, parallel and comparison benchmarks")
println(" <parallelism-level> - the level of parallelism used (default 2)")
}
-
+
def otherOptions(args: Array[String]) {
if (args.length == 0) printHelp
else args(0) match {
@@ -169,19 +169,19 @@ object Benchmarking extends BenchmarkRegister {
case _ => printHelp
}
}
-
+
def main(args: Array[String]) {
if (args.length < 4) {
otherOptions(args)
return
}
-
+
val collname = args(0)
val benchname = args(1)
val size = if (args(2) == "-default") -1 else args(2).toInt
val tpe = args(3)
val parlevel = if (args.length >= 5) args(4).toInt else 2
-
+
// find all benchmarks to run
val benches = benchcreators.filter(comp => {
(collname, benchname) match {
@@ -193,14 +193,14 @@ object Benchmarking extends BenchmarkRegister {
}).flatMap(comp => {
val collsz = if (size != -1) size else comp.defaultSize
if (tpe != "-all") List(comp.apply(collsz, parlevel, tpe))
- else for (benchtype <- "seq" :: "par" :: comp.comparisons)
+ else for (benchtype <- "seq" :: "par" :: comp.comparisons)
yield comp.apply(collsz, parlevel, benchtype)
})
-
+
println("Running benchmarks...")
for (b <- benches) b.executeBenchmark
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/Bench.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/Bench.scala
index 29a34e513d..e8dfe0ac50 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/Bench.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/Bench.scala
@@ -22,88 +22,88 @@ trait BenchCompanion {
*/
trait Bench extends Benchmark {
val size: Int
-
+
val parallelism: Int
-
+
val runWhat: String
-
+
/**
* Name of the benchmark. Convention is for it to start with the name of the collection being
- * tested, continuing '.' and ending with the name of the specific functionality being benchmarked.
+ * tested, continuing '.' and ending with the name of the specific functionality being benchmarked.
* @return
*/
def name: String = companion.fullname
def collectionName: String = companion.collectionName
def benchName: String = companion.benchName
-
+
def companion: BenchCompanion
-
+
def runseq: Unit
-
+
def runpar: Unit
-
+
/**
* Describes the number of runs of the test.
*/
val runs = 10
-
+
/**
* Returns the number of repetitions for this benchmark.
*/
def repetitionsPerRun = 500
-
+
/**
* Resets the benchmark object. Typically, this means recreating
* the collection being tested.
*/
def reset: Unit
-
+
/**
* Returns a map of available comparison tests.
*/
def comparisons: List[String] = companion.comparisons
-
+
def comparison(name: String): Option[() => Unit] = comparisonMap.get(name)
-
+
def comparisonMap: Map[String, () => Unit]
-
+
def run = runWhat match {
case "seq" => for (i <- 0 until repetitionsPerRun) runseq
case "par" => for (i <- 0 until repetitionsPerRun) runpar
case _ => comparison(runWhat) match {
case Some(fun) => for (i <- 0 until repetitionsPerRun) fun()
- case None => throw new IllegalArgumentException("Unknown bench option: `" + runWhat +
+ case None => throw new IllegalArgumentException("Unknown bench option: `" + runWhat +
"`, need `seq`, `par` or one of: " + comparisons.mkString("`", "`, `", "`"))
}
}
-
+
/**
* Prints results of the benchmark. May be overidden in benchmarks.
*/
def printResults {}
-
+
def onEnd {}
-
+
def executeBenchmark = {
println("-----------------------")
print(name + ", " + runWhat + ", par.=" + parallelism + ", sz=" + niceSize + ": ")
-
+
val times = runBenchmark(runs)
-
+
onEnd
-
+
for (t <- times) print(t + " ")
println
printResults
}
-
+
private def niceSize = if (size < 1000 || size % 1000 != 0) size.toString else size / 1000 + "k"
}
trait HavingResult[T] extends Bench {
var runresult: T = null.asInstanceOf[T]
-
+
abstract override def printResults {
println("result: " + (if (runresult != null) runresult else "<not set>"))
super.printResults
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Arrays.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Arrays.scala
index fd3b4aab08..39232122a9 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Arrays.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Arrays.scala
@@ -7,12 +7,12 @@ package scala.collection.parallel.benchmarks.arrays
object Arrays {
-
+
@inline def genericApply[T](xs: Array[T], idx: Int): T = xs.asInstanceOf[AnyRef] match {
case x: Array[AnyRef] => x(idx).asInstanceOf[T]
case _ => genericApplyNotAnyRef(xs, idx)
}
-
+
@noinline private def genericApplyNotAnyRef[T](xs: Array[T], idx: Int): T = xs.asInstanceOf[AnyRef] match {
case x: Array[Int] => x(idx).asInstanceOf[T]
case x: Array[Double] => x(idx).asInstanceOf[T]
@@ -25,12 +25,12 @@ object Arrays {
case x: Array[Unit] => x(idx).asInstanceOf[T]
case null => throw new NullPointerException
}
-
+
@inline def apply(xs: AnyRef, idx: Int): Any = xs match {
case x: Array[AnyRef] => x(idx).asInstanceOf[Any]
case _ => applyNotAnyRef(xs, idx)
}
-
+
@noinline private def applyNotAnyRef(xs: AnyRef, idx: Int): Any = xs match {
case x: Array[Int] => x(idx).asInstanceOf[Any]
case x: Array[Double] => x(idx).asInstanceOf[Any]
@@ -43,7 +43,7 @@ object Arrays {
case x: Array[Unit] => x(idx).asInstanceOf[Any]
case null => throw new NullPointerException
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/IntAccess.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/IntAccess.scala
index 948ecb419e..81f0e4da03 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/IntAccess.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/IntAccess.scala
@@ -17,10 +17,10 @@ object IntAccess extends BenchCompanion {
class IntAccess(sz: Int, p: Int, what: String)
extends Resetting(n => n, sz, p, what) with UnknownManif[Int] {
def companion = IntAccess
-
+
def runseq {}
def runpar {}
-
+
def runany = {
var i = 0
while (i < sz) {
@@ -28,7 +28,7 @@ extends Resetting(n => n, sz, p, what) with UnknownManif[Int] {
i += 1
}
}
-
+
def runcast = {
var i = 0
while (i < sz) {
@@ -36,7 +36,7 @@ extends Resetting(n => n, sz, p, what) with UnknownManif[Int] {
i += 1
}
}
-
+
def runmanif = {
var i = 0
while (i < sz) {
@@ -45,12 +45,12 @@ extends Resetting(n => n, sz, p, what) with UnknownManif[Int] {
i += 1
}
}
-
+
def op(a: Int) = a < 0
-
+
def comparisonMap = collection.Map("any" -> runany _, "cast" -> runcast _,
"manif" -> runmanif _, "unknown" -> rununknown _)
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/ObjectAccess.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/ObjectAccess.scala
index 3cc38f1b58..29251f3719 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/ObjectAccess.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/ObjectAccess.scala
@@ -17,10 +17,10 @@ object ObjectAccess extends BenchCompanion {
class ObjectAccess(sz: Int, p: Int, what: String)
extends Resetting(Dummy(_), sz, p, what) with UnknownManif[Dummy] {
def companion = ObjectAccess
-
+
def runseq {}
def runpar {}
-
+
def runany = {
var i = 0
while (i < sz) {
@@ -29,7 +29,7 @@ extends Resetting(Dummy(_), sz, p, what) with UnknownManif[Dummy] {
i += 1
}
}
-
+
def runcast = {
var i = 0
while (i < sz) {
@@ -37,7 +37,7 @@ extends Resetting(Dummy(_), sz, p, what) with UnknownManif[Dummy] {
i += 1
}
}
-
+
def rungenericcast = {
var i = 0
while (i < sz) {
@@ -45,7 +45,7 @@ extends Resetting(Dummy(_), sz, p, what) with UnknownManif[Dummy] {
i += 1
}
}
-
+
def runmanif = {
var i = 0
while (i < sz) {
@@ -54,10 +54,10 @@ extends Resetting(Dummy(_), sz, p, what) with UnknownManif[Dummy] {
i += 1
}
}
-
+
def comparisonMap = collection.Map("any" -> runany _, "cast" -> runcast _, "gencast" -> rungenericcast _,
"manif" -> runmanif _, "unknown" -> rununknown _)
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
index 9e6102fb94..e6feb59fcd 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/Resetting.scala
@@ -9,14 +9,14 @@ extends Bench {
val size = sz
val parallelism = p
val runWhat = what
-
+
var anyarray: Array[Any] = null
var castarray: AnyRef = null
var gencastarray: Array[T] = null
var manifarray: Array[T] = null
-
+
reset
-
+
def reset = what match {
case "any" =>
anyarray = new Array[Any](sz)
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/UnknownManif.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/UnknownManif.scala
index d7196c0277..46a28ae111 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/UnknownManif.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/arrays/UnknownManif.scala
@@ -6,7 +6,7 @@ package scala.collection.parallel.benchmarks.arrays
trait UnknownManif[T] {
def manifarray: Array[T]
def size: Int
-
+
def rununknown {
val arr = manifarray
val sz = size
@@ -17,7 +17,7 @@ trait UnknownManif[T] {
i += 1
}
}
-
+
def op(d: Any) {}
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
index 4fb76542e1..539e3f6972 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/Operators.scala
@@ -6,7 +6,7 @@ package scala.collection.parallel.benchmarks.generic
trait Operators[T] {
-
+
def foreachFun: T => Unit
def reducer: (T, T) => T
def mediumreducer: (T, T) => T
@@ -19,13 +19,13 @@ trait Operators[T] {
def eachFun: T => Unit
def eachPairFun: ((T, T)) => Unit = error("unsupported")
def sequence(sz: Int): Seq[T] = error("unsupported")
-
+
}
trait IntOperators extends Operators[Int] {
-
+
val foreachFun: Int => Unit = x => ()
val reducer: (Int, Int) => Int = _ + _
val mediumreducer: (Int, Int) => Int = (a: Int, b: Int) => {
@@ -52,7 +52,7 @@ trait IntOperators extends Operators[Int] {
val eachFun: Int => Unit = { n =>
n % 2 == 0
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
index b14a0b3aab..c39c384927 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/generic/ParallelBenches.scala
@@ -10,77 +10,77 @@ import scala.collection.SeqView
trait ParIterableBenches[T, Coll <: ParIterable[T]] {
self =>
-
+
def createSequential(sz: Int, p: Int): Iterable[T]
def createParallel(sz: Int, p: Int): Coll
def nameOfCollection: String
def operators: Operators[T]
-
+
trait IterableBenchCompanion extends BenchCompanion {
def collectionName = self.nameOfCollection
}
-
+
trait IterableBench extends collection.parallel.benchmarks.Bench {
protected var seqcoll: Iterable[T] = null
protected var parcoll: Coll = null.asInstanceOf[Coll]
-
+
reset
-
+
def reset = runWhat match {
case "seq" => this.seqcoll = createSequential(size, parallelism)
case "par" => this.parcoll = createParallel(size, parallelism)
case _ =>
}
-
+
def nameOfCollection = self.nameOfCollection
def operators = self.operators
def createSequential(sz: Int, p: Int) = self.createSequential(size, parallelism)
def createParallel(sz: Int, p: Int) = self.createParallel(size, parallelism)
def forkJoinPool: scala.concurrent.forkjoin.ForkJoinPool = self.forkJoinPool
-
+
override def printResults {
println(" --- Fork join pool state --- ")
println("Parallelism: " + forkJoinPool.getParallelism)
println("Active threads: " + forkJoinPool.getActiveThreadCount)
println("Work stealings: " + forkJoinPool.getStealCount)
}
-
+
}
-
+
def forkJoinPool: scala.concurrent.forkjoin.ForkJoinPool
-
+
}
trait ParSeqBenches[T, Coll <: ParSeq[T]] extends ParIterableBenches[T, Coll] {
self =>
-
+
def createSequential(sz: Int, p: Int): Seq[T]
-
+
trait SeqBenchCompanion extends BenchCompanion {
def collectionName = self.nameOfCollection
}
-
+
trait SeqBench extends IterableBench {
def seqcollAsSeq = seqcoll.asInstanceOf[Seq[T]]
override def createSequential(sz: Int, p: Int) = self.createSequential(sz, p)
}
-
+
}
/** Standard benchmarks for collections.
- */
+ */
trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableBenches[T, Coll] {
-
+
object Reduce extends IterableBenchCompanion {
override def defaultSize = 50000
def benchName = "reduce";
def apply(sz: Int, p: Int, w: String) = new Reduce(sz, p, w)
}
-
+
class Reduce(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -88,13 +88,13 @@ trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableB
def runpar = this.parcoll.reduce(operators.reducer)
def companion = Reduce
}
-
+
object ReduceMedium extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "reduce-medium";
def apply(sz: Int, p: Int, w: String) = new ReduceMedium(sz, p, w)
}
-
+
class ReduceMedium(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -102,13 +102,13 @@ trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableB
def runpar = this.parcoll.reduce(operators.mediumreducer)
def companion = ReduceMedium
}
-
+
object Map extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "map";
def apply(sz: Int, p: Int, w: String) = new Map(sz, p, w)
}
-
+
class Map(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -116,13 +116,13 @@ trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableB
def runpar = this.parcoll.map(operators.mapper)
def companion = Map
}
-
+
object Filter extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "filter";
def apply(sz: Int, p: Int, w: String) = new Filter(sz, p, w)
}
-
+
class Filter(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -130,21 +130,21 @@ trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableB
def runpar = this.parcoll.filter(operators.filterer)
def companion = Filter
}
-
+
object FlatMap extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "flatmap";
def apply(sz: Int, p: Int, w: String) = new FlatMap(sz, p, w)
}
-
+
class FlatMap(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
def runseq = this.seqcoll.flatMap(operators.flatmapper)
def runpar = this.parcoll.flatMap(operators.flatmapper)
def companion = FlatMap
- }
-
+ }
+
}
@@ -153,21 +153,21 @@ trait StandardParIterableBenches[T, Coll <: ParIterable[T]] extends ParIterableB
*/
trait ParSeqViewBenches[T, Coll <: ParSeqView[T, ParSeq[T], CollSeq], CollSeq] extends ParSeqBenches[T, Coll] {
self =>
-
+
trait SeqViewBench extends SeqBench {
lazy val seqview: SeqView[T, Seq[T]] = createSeqView(size, parallelism)
-
+
def createSeqView(sz: Int, p: Int) = self.createSeqView(sz, p)
}
-
+
def createSeqView(sz: Int, p: Int): SeqView[T, Seq[T]]
-
+
object Iteration extends SeqBenchCompanion {
override def defaultSize = 250000
def benchName = "iter"
def apply(sz: Int, p: Int, w: String) = new Iteration(sz, p, w)
}
-
+
class Iteration(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
def comparisonMap = collection.Map("seqview" -> runseqview _)
@@ -178,13 +178,13 @@ self =>
}
def companion = Iteration
}
-
+
object IterationS extends SeqBenchCompanion {
override def defaultSize = 250000
def benchName = "iter-s"
def apply(sz: Int, p: Int, w: String) = new IterationS(sz, p, w)
}
-
+
class IterationS(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
def comparisonMap = collection.Map("seqview" -> runseqview _)
@@ -199,7 +199,7 @@ self =>
def benchName = "iter-m"
def apply(sz: Int, p: Int, w: String) = new IterationM(sz, p, w)
}
-
+
class IterationM(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
def comparisonMap = collection.Map("seqview" -> runseqview _)
@@ -208,13 +208,13 @@ self =>
def runseqview = this.seqview.map(operators.mapper).foreach(operators.eachFun)
def companion = IterationM
}
-
+
object IterationA extends SeqBenchCompanion {
override def defaultSize = 50000
def benchName = "iter-a"
def apply(sz: Int, p: Int, w: String) = new IterationA(sz, p, w)
}
-
+
class IterationA(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
val appended = operators.sequence(size)
@@ -228,13 +228,13 @@ self =>
def runseqview = this.seqview.++(appended).foreach(operators.eachFun)
def companion = IterationA
}
-
+
object IterationZ extends SeqBenchCompanion {
override def defaultSize = 50000
def benchName = "iter-z"
def apply(sz: Int, p: Int, w: String) = new IterationZ(sz, p, w)
}
-
+
class IterationZ(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
val zipped = operators.sequence(size)
@@ -247,13 +247,13 @@ self =>
def runseqview = this.seqview.zip(zipped).foreach(operators.eachPairFun)
def companion = IterationZ
}
-
+
object IterationP extends SeqBenchCompanion {
override def defaultSize = 50000
def benchName = "iter-p"
def apply(sz: Int, p: Int, w: String) = new IterationP(sz, p, w)
}
-
+
class IterationP(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
val patch = operators.sequence(size / 4)
@@ -267,13 +267,13 @@ self =>
def runseqview = this.seqview.patch(size / 4, patch, size / 2).foreach(operators.eachFun)
def companion = IterationP
}
-
+
object Reduce extends SeqBenchCompanion {
override def defaultSize = 50000
def benchName = "reduce";
def apply(sz: Int, p: Int, w: String) = new Reduce(sz, p, w)
}
-
+
class Reduce(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
def comparisonMap = collection.Map()
@@ -281,13 +281,13 @@ self =>
def runpar = this.parcoll.reduce(operators.reducer)
def companion = Reduce
}
-
+
object MediumReduce extends SeqBenchCompanion {
override def defaultSize = 50000
def benchName = "reduce-medium";
def apply(sz: Int, p: Int, w: String) = new MediumReduce(sz, p, w)
}
-
+
class MediumReduce(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
def comparisonMap = collection.Map()
@@ -295,13 +295,13 @@ self =>
def runpar = this.parcoll.reduce(operators.mediumreducer)
def companion = Reduce
}
-
+
object ModifyThenReduce extends SeqBenchCompanion {
override def defaultSize = 20000
def benchName = "modify-then-reduce";
def apply(sz: Int, p: Int, w: String) = new ModifyThenReduce(sz, p, w)
}
-
+
class ModifyThenReduce(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
val toadd = createSequential(size, parallelism)
@@ -316,13 +316,13 @@ self =>
}
def companion = ModifyThenReduce
}
-
+
object ModifyThenForce extends SeqBenchCompanion {
override def defaultSize = 20000
def benchName = "modify-then-force";
def apply(sz: Int, p: Int, w: String) = new ModifyThenForce(sz, p, w)
}
-
+
class ModifyThenForce(val size: Int, val parallelism: Int, val runWhat: String)
extends SeqBench with SeqViewBench {
val toadd = createSequential(size, parallelism)
@@ -334,7 +334,7 @@ self =>
}
def companion = ModifyThenForce
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTableSets.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTableSets.scala
index 88640f3644..17f0315103 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTableSets.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTableSets.scala
@@ -13,18 +13,18 @@ import scala.collection.parallel.mutable.ParHashSet
trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet[T]] {
-
+
def nameOfCollection = "mutable.ParHashSet"
def comparisonMap = collection.mutable.Set()
val forkJoinPool = new scala.concurrent.forkjoin.ForkJoinPool
-
+
object Map2 extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "map2";
def apply(sz: Int, p: Int, w: String) = new Map2(sz, p, w)
}
-
+
class Map2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
var result: Int = 0
@@ -42,14 +42,14 @@ trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet
println("Size of last result: " + result)
}
}
-
+
object HeavyMap extends IterableBenchCompanion {
override def defaultSize = 5000
override def comparisons = List()
def benchName = "heavy-map";
def apply(sz: Int, p: Int, w: String) = new HeavyMap(sz, p, w)
}
-
+
class HeavyMap(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
var result: Int = 0
@@ -64,14 +64,14 @@ trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet
def companion = HeavyMap
override def repetitionsPerRun = 50
}
-
+
object Reduce2 extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "reduce2";
def apply(sz: Int, p: Int, w: String) = new Reduce2(sz, p, w)
}
-
+
class Reduce2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -79,14 +79,14 @@ trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet
def runpar = this.parcoll.reduce(operators.mediumreducer)
def companion = Reduce2
}
-
+
object Foreach extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "foreach";
def apply(sz: Int, p: Int, w: String) = new Foreach(sz, p, w)
}
-
+
class Foreach(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -94,7 +94,7 @@ trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet
def runpar = this.parcoll.pforeach(operators.foreachFun)
def companion = Foreach
}
-
+
}
@@ -102,14 +102,14 @@ trait ParHashTableSetBenches[T] extends StandardParIterableBenches[T, ParHashSet
object RefParHashTableSetBenches extends ParHashTableSetBenches[Dummy] {
-
+
object ForeachSet extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "foreach-set";
def apply(sz: Int, p: Int, w: String) = new ForeachSet(sz, p, w)
}
-
+
class ForeachSet(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val array = new Array[Int](size)
@@ -117,22 +117,22 @@ object RefParHashTableSetBenches extends ParHashTableSetBenches[Dummy] {
def runseq = for (x <- this.seqcoll) array(x.in) += 1
def runpar = this.parcoll.pforeach { x => array(x.in) += 1 }
def companion = ForeachSet
-
+
override def onEnd {
for (i <- 0 until array.length) {
assert(array(i) == repetitionsPerRun * runs)
}
}
}
-
+
val operators = DummyOperators
-
+
def createSequential(sz: Int, p: Int) = {
val ht = new collection.mutable.HashSet[Dummy]
for (i <- 0 until sz) ht += new Dummy(i)
ht
}
-
+
def createParallel(sz: Int, p: Int) = {
val phm = new ParHashSet[Dummy]
for (i <- 0 until sz) phm += new Dummy(i)
@@ -140,5 +140,5 @@ object RefParHashTableSetBenches extends ParHashTableSetBenches[Dummy] {
collection.parallel.tasksupport.environment = forkJoinPool
phm
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTables.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTables.scala
index bdb1dff56d..79d038bf3d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTables.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtables/ParallelHashTables.scala
@@ -13,18 +13,18 @@ import scala.collection.parallel.mutable.ParHashMap
trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHashMap[K, V]] {
-
+
def nameOfCollection = "mutable.ParHashMap"
def comparisonMap = collection.mutable.Map()
val forkJoinPool = new scala.concurrent.forkjoin.ForkJoinPool
-
+
object Map2 extends IterableBenchCompanion {
override def defaultSize = 40000
override def comparisons = List("jhashtable")
def benchName = "map2";
def apply(sz: Int, p: Int, w: String) = new Map2(sz, p, w)
}
-
+
class Map2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
var result: Int = 0
@@ -56,13 +56,13 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
println("Size of last result: " + result)
}
}
-
+
object FlatMap2 extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "flatmap2";
def apply(sz: Int, p: Int, w: String) = new FlatMap2(sz, p, w)
}
-
+
class FlatMap2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -70,15 +70,15 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
def runseq = this.seqcoll.flatMap(operators.flatmapper)
def runpar = this.parcoll.flatMap(operators.flatmapper)
def companion = FlatMap2
- }
-
+ }
+
object HeavyMap extends IterableBenchCompanion {
override def defaultSize = 5000
override def comparisons = List()
def benchName = "heavy-map";
def apply(sz: Int, p: Int, w: String) = new HeavyMap(sz, p, w)
}
-
+
class HeavyMap(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
var result: Int = 0
@@ -93,14 +93,14 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
def companion = HeavyMap
override def repetitionsPerRun = 50
}
-
+
object Reduce2 extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "reduce2";
def apply(sz: Int, p: Int, w: String) = new Reduce2(sz, p, w)
}
-
+
class Reduce2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -108,14 +108,14 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
def runpar = this.parcoll.reduce(operators.mediumreducer)
def companion = Reduce2
}
-
+
object Foreach extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "foreach";
def apply(sz: Int, p: Int, w: String) = new Foreach(sz, p, w)
}
-
+
class Foreach(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def comparisonMap = collection.Map()
@@ -123,7 +123,7 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
def runpar = this.parcoll.pforeach(operators.foreachFun)
def companion = Foreach
}
-
+
}
@@ -131,16 +131,16 @@ trait ParHashTableBenches[K, V] extends StandardParIterableBenches[(K, V), ParHa
object RefParHashTableBenches extends ParHashTableBenches[Dummy, Dummy] {
-
+
type DPair = (Dummy, Dummy);
-
+
object ForeachSet extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List()
def benchName = "foreach-set";
def apply(sz: Int, p: Int, w: String) = new ForeachSet(sz, p, w)
}
-
+
class ForeachSet(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val array = new Array[Int](size)
@@ -148,14 +148,14 @@ object RefParHashTableBenches extends ParHashTableBenches[Dummy, Dummy] {
def runseq = for (p <- this.seqcoll) array(p._1.in) += 1
def runpar = this.parcoll.pforeach { p => array(p._1.in) += 1 }
def companion = ForeachSet
-
+
override def onEnd {
for (i <- 0 until array.length) {
assert(array(i) == repetitionsPerRun * runs)
}
}
}
-
+
object operators extends Operators[DPair] {
def gcd(a: Int, b: Int): Int = {
val result = if (b == 0) a else {
@@ -214,13 +214,13 @@ object RefParHashTableBenches extends ParHashTableBenches[Dummy, Dummy] {
dp._1.dummy
}
}
-
+
def createSequential(sz: Int, p: Int) = {
val ht = new collection.mutable.HashMap[Dummy, Dummy]
for (i <- 0 until sz) ht += ((new Dummy(i), new Dummy(i)))
ht
}
-
+
def createParallel(sz: Int, p: Int) = {
val phm = new ParHashMap[Dummy, Dummy]
for (i <- 0 until sz) phm += ((new Dummy(i), new Dummy(i)))
@@ -228,5 +228,5 @@ object RefParHashTableBenches extends ParHashTableBenches[Dummy, Dummy] {
collection.parallel.tasksupport.environment = forkJoinPool
phm
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Combine.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Combine.scala
index 3a070fb6ff..96598840fd 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Combine.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Combine.scala
@@ -17,7 +17,7 @@ class Combine(val size: Int, val parallelism: Int, val runWhat: String) extends
for (i <- size until 2 * size) thattrie += ((i, i))
val thatmap = new HashMap[Int, Int]
for (i <- size until 2 * size) thatmap += ((i, i))
-
+
def runpar = throw new UnsupportedOperationException
def runseq = runhashtrie
def runhashtrie = {
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Construct.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Construct.scala
index 7c15df1fe2..f65a349ec5 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Construct.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/Construct.scala
@@ -14,7 +14,7 @@ import collection.mutable.HashMap
class Construct(val size: Int, val parallelism: Int, val runWhat: String) extends Bench {
def reset {}
-
+
def runpar = throw new UnsupportedOperationException
def runseq = throw new UnsupportedOperationException
def runhashmap = {
@@ -25,7 +25,7 @@ class Construct(val size: Int, val parallelism: Int, val runWhat: String) extend
var hashtrie = new HashTrie[Int, Int]
for (i <- 0 until size) hashtrie += ((i, i))
}
-
+
def companion = Construct
def comparisonMap = Map("hashmap" -> runhashmap _, "hashtrie" -> runhashtrie _)
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/IntInit.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/IntInit.scala
index dbbe64e290..79ebd0e98c 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/IntInit.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/IntInit.scala
@@ -12,7 +12,7 @@ import collection.mutable.HashMap
trait IntInit extends Bench {
var hashmap: HashMap[Int, Int] = null
var hashtrie: HashTrie[Int, Int] = null
-
+
reset
def reset = runWhat match {
case "hashmap" => initHashMap
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/MultipleCombine.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/MultipleCombine.scala
index 033c211849..c08d6b5cad 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/MultipleCombine.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/MultipleCombine.scala
@@ -14,7 +14,7 @@ import collection.mutable.HashMap
class MultipleCombine(val size: Int, val parallelism: Int, val runWhat: String) extends Bench with IntInit {
var combines = 10
-
+
var thattries = new Array[HashTrie[Int, Int]](combines)
def initTries = for (r <- 0 until combines) {
var thattrie = new HashTrie[Int, Int]
@@ -22,7 +22,7 @@ class MultipleCombine(val size: Int, val parallelism: Int, val runWhat: String)
thattries(r) = thattrie
}
initTries
-
+
val thatmaps = new Array[HashMap[Int, Int]](10)
def initMaps = for (r <- 0 until combines) {
var thatmap = new HashMap[Int, Int]
@@ -30,7 +30,7 @@ class MultipleCombine(val size: Int, val parallelism: Int, val runWhat: String)
thatmaps(r) = thatmap
}
initMaps
-
+
override def repetitionsPerRun = 25
def runpar = throw new UnsupportedOperationException
def runseq = runhashtrie
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/ParallelHashTries.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/ParallelHashTries.scala
index 3976b72d1a..dc8804cf57 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/ParallelHashTries.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/hashtries/ParallelHashTries.scala
@@ -13,18 +13,18 @@ import scala.collection.parallel.immutable.ParHashMap
trait ParHashTrieBenches[K, V] extends StandardParIterableBenches[(K, V), ParHashMap[K, V]] {
-
+
def nameOfCollection = "immutable.ParHashMap"
def comparisonMap = collection.Map()
val forkJoinPool = new scala.concurrent.forkjoin.ForkJoinPool
-
+
object Map2 extends IterableBenchCompanion {
override def defaultSize = 5000
override def comparisons = List("jhashtable", "hashtable")
def benchName = "map2";
def apply(sz: Int, p: Int, w: String) = new Map2(sz, p, w)
}
-
+
class Map2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
var result: Int = 0
@@ -65,14 +65,14 @@ trait ParHashTrieBenches[K, V] extends StandardParIterableBenches[(K, V), ParHas
println("Size of last result: " + result)
}
}
-
+
object Reduce2 extends IterableBenchCompanion {
override def defaultSize = 50000
override def comparisons = List("hashtable")
def benchName = "reduce2";
def apply(sz: Int, p: Int, w: String) = new Reduce2(sz, p, w)
}
-
+
class Reduce2(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
private var ht: collection.mutable.HashMap[K, V] = _
@@ -86,9 +86,9 @@ trait ParHashTrieBenches[K, V] extends StandardParIterableBenches[(K, V), ParHas
}
def companion = Reduce2
}
-
+
def createHashTable(sz: Int): collection.mutable.HashMap[K, V]
-
+
}
@@ -96,9 +96,9 @@ trait ParHashTrieBenches[K, V] extends StandardParIterableBenches[(K, V), ParHas
object RefParHashTrieBenches extends ParHashTrieBenches[Dummy, Dummy] {
-
+
type DPair = (Dummy, Dummy)
-
+
object operators extends Operators[DPair] {
def gcd(a: Int, b: Int): Int = {
val result = if (b == 0) a else {
@@ -156,13 +156,13 @@ object RefParHashTrieBenches extends ParHashTrieBenches[Dummy, Dummy] {
dp._1.dummy
}
}
-
+
def createSequential(sz: Int, p: Int) = {
var ht = new collection.immutable.HashMap[Dummy, Dummy]
for (i <- 0 until sz) ht += ((new Dummy(i), new Dummy(i)))
ht
}
-
+
def createParallel(sz: Int, p: Int) = {
var pht = new ParHashMap[Dummy, Dummy]
for (i <- 0 until sz) pht += ((new Dummy(i), new Dummy(i)))
@@ -170,11 +170,11 @@ object RefParHashTrieBenches extends ParHashTrieBenches[Dummy, Dummy] {
collection.parallel.tasksupport.environment = forkJoinPool
pht
}
-
+
def createHashTable(sz: Int) = {
val hm = collection.mutable.HashMap[Dummy, Dummy]()
for (i <- 0 until sz) hm.put(new Dummy(i), new Dummy(i))
hm
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Coder.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Coder.scala
index 5ed0ca317d..9cc1f4a0f6 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Coder.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Coder.scala
@@ -11,27 +11,27 @@ import collection.parallel._//immutable._
class SeqCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, Seq[String]] =
+ val wordsForNum: Map[String, Seq[String]] =
(words groupBy wordCode).map(t => (t._1, t._2.toSeq)) withDefaultValue Seq()
-
+
/** All ways to encode a number as a list of words */
- def encode(number: String): Set[Seq[String]] =
+ def encode(number: String): Set[Seq[String]] =
if (number.isEmpty) Set(Seq())
else {
val splits = (1 to number.length).toSet
@@ -49,34 +49,34 @@ class SeqCoder(words: List[String]) {
})
r
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String) = encode(number)// map (_ mkString " ")
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
class ParCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, Seq[String]] =
+ val wordsForNum: Map[String, Seq[String]] =
(words groupBy wordCode).map(t => (t._1, t._2)) withDefaultValue Seq()
-
+
/** All ways to encode a number as a list of words */
def encode(number: String): Set[Seq[String]] = if (number.length > 12) {
if (number.isEmpty) ParSet(ParSeq())
@@ -99,13 +99,13 @@ class ParCoder(words: List[String]) {
} yield word +: rest
}
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String) = {
encode(number)// map (_ mkString " ")
}
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
@@ -122,26 +122,26 @@ object Coder extends BenchCompanion {
class Coder(val size: Int, val parallelism: Int, val runWhat: String) extends Bench {
def companion = Coder
-
+
var seqcoder: SeqCoder = null
var parcoder: ParCoder = null
-
+
override def repetitionsPerRun = 1
-
+
val code = "23284374729473626268379762538"
-
+
reset
-
+
def runseq {
val translations = seqcoder.translate(code)
//println(translations)
}
-
+
def runpar {
val translations = parcoder.translate(code)
//println(translations)
}
-
+
def reset = runWhat match {
case "seq" =>
seqcoder = new SeqCoder(Dictionary.wordlist)
@@ -155,8 +155,8 @@ class Coder(val size: Int, val parallelism: Int, val runWhat: String) extends Be
println("Translation check: " + t.size)
//println(t)
}
-
+
def comparisonMap = Map()
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Loader.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Loader.scala
index 1b73f2b868..c7e4723e64 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Loader.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/misc/Loader.scala
@@ -25,42 +25,42 @@ object Loader extends BenchCompanion {
class Loader(val size: Int, val parallelism: Int, val runWhat: String) extends Bench {
def companion = Loader
-
+
override def repetitionsPerRun = 1
-
+
reset
-
+
val wa = Dictionary.wordarray ++ Dictionary.wordarray ++ Dictionary.wordarray
-
+
def runseq {
val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ"
)
val charCode: Map[Char, Char] = for ((digit, letters) <- m; letter <- letters) yield letter -> digit
def wordCode(word: String): String = (word.toUpperCase.toList map charCode).toString
-
+
wa groupBy wordCode
}
-
+
def runpar {
val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ"
)
val charCode: Map[Char, Char] = for ((digit, letters) <- m; letter <- letters) yield letter -> digit
def wordCode(word: String): String = (word.toUpperCase.toList map charCode).toString
-
+
wa.par groupBy wordCode
}
-
+
def reset = runWhat match {
case "seq" =>
case "par" =>
collection.parallel.tasksupport.environment.asInstanceOf[concurrent.forkjoin.ForkJoinPool].setParallelism(parallelism)
}
-
+
def comparisonMap = Map()
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/AggregateLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/AggregateLight.scala
index 446f4a6735..2eaddd7572 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/AggregateLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/AggregateLight.scala
@@ -11,7 +11,7 @@ object AggregateLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new AggregateLight(sz, parallelism, what)
override def comparisons = List()
override def defaultSize = 200000
-
+
val seqop = (a: Cont, b: Cont) => b
val combop = (a: Cont, b: Cont) => a
}
@@ -22,7 +22,7 @@ extends Resettable[Cont](sz, p, what, new Cont(_), new Array[Any](_), classOf[Co
def companion = AggregateLight
override def repetitionsPerRun = 350
override val runs = 20
-
+
def runpar = pa.aggregate(new Cont(0))(companion.seqop, companion.combop)
def runseq = sequentialReduce(companion.seqop, sz, new Cont(0))
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CopyToArray.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CopyToArray.scala
index 0f743eeb96..033921d451 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CopyToArray.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CopyToArray.scala
@@ -14,7 +14,7 @@ class CopyToArray(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = CopyToArray
val destarr = new Array[Any](sz)
-
+
def runpar = pa.copyToArray(destarr, 0, sz)
def runseq = sequentialCopyToArray(destarr, 0, sz)
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Corresponds.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Corresponds.scala
index ae50958bdc..c9b3f07ff3 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Corresponds.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Corresponds.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Boolean] {
def companion = Corresponds
override def repetitionsPerRun = 400
-
+
val same = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,11 +21,11 @@ with HavingResult[Boolean] {
}
p
}
-
+
def runpar = runresult = pa.corresponds(same)(corr)
def runseq = runresult = sequentialCorresponds(same, corr, sz)
override def comparisonMap = collection.Map()
-
+
val corr = (a: Cont, b: Cont) => a.in == b.in
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountHeavy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountHeavy.scala
index 722d721288..7438be8447 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountHeavy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountHeavy.scala
@@ -8,12 +8,12 @@ object CountHeavy extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new CountHeavy(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 16
-
+
val pred = (a: Cont) => heavyCheck(a)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = heavyCheck(a)
}
-
+
def heavyCheck(a: Cont) = {
val n = a.in
(n until (n + 200)).map(checkPrime(_)).reduceLeft(_ && _)
@@ -28,7 +28,7 @@ object CountHeavy extends Companion {
class CountHeavy(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = CountHeavy
-
+
def runpar = pa.count(CountHeavy.pred)
def runseq = sequentialCount(CountHeavy.pred, sz)
def runjsr = jsrarr.withFilter(CountHeavy.predjsr).size
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountLight.scala
index 569b304660..21c64358b4 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountLight.scala
@@ -13,7 +13,7 @@ object CountLight extends Companion {
class CountLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = CountLight
-
+
def runpar = pa.count(Cont.pred)
def runseq = sequentialCount(Cont.pred, sz)
def runjsr = jsrarr.withFilter(Cont.predjsr).size
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountList.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountList.scala
index 0d9550d2bd..9c6ac19229 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountList.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/CountList.scala
@@ -8,13 +8,13 @@ object CountList extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new CountList(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 1000
-
+
val listCreator = (i: Int) => (0 until (i % 50 + 50)).toList
val pred = (lst: List[Int]) => check(lst)
val predjsr = new extra166y.Ops.Predicate[List[Int]] {
def op(lst: List[Int]) = check(lst)
}
-
+
def check(lst: List[Int]) = lst.foldLeft(0)((sum, n) => sum + n * n) % 2 == 0
}
@@ -22,7 +22,7 @@ class CountList(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, CountList.listCreator, new Array[Any](_), classOf[List[Int]]) {
def companion = CountList
override def repetitionsPerRun = 250
-
+
def runpar = pa.count(CountList.pred)
def runseq = sequentialCount(CountList.pred, sz)
def runjsr = jsrarr.withFilter(CountList.predjsr).size
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DiffHalf.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DiffHalf.scala
index bc0ff3fe74..4b27569239 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DiffHalf.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DiffHalf.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = DiffHalf
override def repetitionsPerRun = 400
-
+
val similar = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,11 +21,11 @@ with HavingResult[Int] {
}
p.drop(p.size / 2)
}
-
+
def runpar = runresult = pa.diff(similar).size
def runseq = runresult = sequentialDiff(similar, sz).size
override def comparisonMap = collection.Map()
-
+
val corr = (a: Cont, b: Cont) => a.in == b.in
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DropMany.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DropMany.scala
index d80ba91a29..443ef2b500 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DropMany.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/DropMany.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = DropMany
override def repetitionsPerRun = 400
runresult = -1
-
+
def runpar = runresult = pa.drop(pa.size / 2).size
def runseq = runresult = sequentialDrop(sz / 2, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ExistsLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ExistsLight.scala
index 401ab38e0b..2749216735 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ExistsLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ExistsLight.scala
@@ -9,7 +9,7 @@ object ExistsLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ExistsLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 200000
-
+
val pred = (a: Cont) => a.in < 0
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in < 0
@@ -21,7 +21,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Boolean] {
def companion = ExistsLight
runresult = false
-
+
def runpar = runresult = pa.exists(ExistsLight.pred)
def runseq = runresult = sequentialExists(ExistsLight.pred, sz)
def runjsr = runresult = jsrarr.withFilter(ExistsLight.predjsr).size > 0
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FilterLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FilterLight.scala
index ee6545efbf..d4c8395951 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FilterLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FilterLight.scala
@@ -9,12 +9,12 @@ object FilterLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new FilterLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 10000
-
+
val pred = (a: Cont) => check(a.in)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = check(a.in)
}
-
+
def check(n: Int) = {
var res = n
// var i = 1
@@ -33,7 +33,7 @@ with HavingResult[Int] {
override def repetitionsPerRun = 250
override val runs = 30
runresult = -1
-
+
def runpar = runresult = pa.filter(FilterLight.pred).size
def runseq = runresult = sequentialFilter(FilterLight.pred, sz).size
def runjsr = runresult = { jsrarr.withFilter(FilterLight.predjsr).all.size }
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FindLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FindLight.scala
index 11cb6c69fd..f08ddf29e3 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FindLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FindLight.scala
@@ -9,7 +9,7 @@ object FindLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new FindLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 200000
-
+
val pred = (a: Cont) => a.in < -10
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in < -10
@@ -21,7 +21,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Option[Cont]] {
def companion = FindLight
runresult = None
-
+
def runpar = runresult = pa.find(FindLight.pred)
def runseq = runresult = sequentialFind(FindLight.pred, sz)
def runjsr = runresult = { jsrarr.withFilter(FindLight.predjsr).size > 0; None }
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FlatMapLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FlatMapLight.scala
index b1f8942d94..01ecbbf016 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FlatMapLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/FlatMapLight.scala
@@ -10,14 +10,14 @@ object FlatMapLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new FlatMapLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 10000
-
+
def fun = (a: Cont) => { List(1, 2, 3, 4, a.in) }
}
class FlatMapLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = FlatMapLight
-
+
def runpar = pa.flatMap(FlatMapLight.fun)
def runseq = sequentialFlatMap(FlatMapLight.fun, sz)
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallHeavy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallHeavy.scala
index c354f65ec9..0d61e5aeb5 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallHeavy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallHeavy.scala
@@ -8,12 +8,12 @@ object ForallHeavy extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ForallHeavy(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 16
-
+
val pred = (a: Cont) => heavyCheck(a)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = heavyCheck(a)
}
-
+
def heavyCheck(a: Cont) = {
val init = a.in + 1
var cnt = init
@@ -31,7 +31,7 @@ object ForallHeavy extends Companion {
class ForallHeavy(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = ForallHeavy
-
+
def runpar = pa.forall(ForallHeavy.pred)
def runseq = sequentialForall(ForallHeavy.pred, sz)
def runjsr = jsrarr.withFilter(ForallHeavy.predjsr).size == sz
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallLight.scala
index 079f2ccc32..19671d2bc4 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallLight.scala
@@ -8,7 +8,7 @@ object ForallLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ForallLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 200000
-
+
val pred = (a: Cont) => a.in >= 0
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in >= 0
@@ -18,7 +18,7 @@ object ForallLight extends Companion {
class ForallLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = ForallLight
-
+
def runpar = pa.forall(ForallLight.pred)
def runseq = sequentialForall(ForallLight.pred, sz)
def runjsr = jsrarr.withFilter(ForallLight.predjsr).size == sz
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallQuickStop.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallQuickStop.scala
index 310105dd41..624266e49d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallQuickStop.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallQuickStop.scala
@@ -8,7 +8,7 @@ object ForallQuickStop extends Companion {
def benchName = "forall-quickstop";
def apply(sz: Int, parallelism: Int, what: String) = new ForallQuickStop(sz, parallelism, what)
override def defaultSize = 200000
-
+
val pred = (a: Cont) => a.in != 50
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in != 50
@@ -19,7 +19,7 @@ class ForallQuickStop(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Boolean] {
def companion = ForallQuickStop
-
+
def runpar = runresult = pa.forall(ForallQuickStop.pred)
def runseq = runresult = sequentialForall(ForallQuickStop.pred, sz)
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallStop80k.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallStop80k.scala
index cbfa6ebb42..c7462ed04b 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallStop80k.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForallStop80k.scala
@@ -8,7 +8,7 @@ object ForallStop80k extends Companion {
def benchName = "forall-stop80k";
def apply(sz: Int, parallelism: Int, what: String) = new ForallStop80k(sz, parallelism, what)
override def defaultSize = 100000
-
+
val pred = (a: Cont) => a.in != 80000
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in != 80000
@@ -19,7 +19,7 @@ class ForallStop80k(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Boolean] {
def companion = ForallStop80k
-
+
def runpar = runresult = pa.forall(ForallStop80k.pred)
def runseq = runresult = sequentialForall(ForallStop80k.pred, sz)
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachHeavy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachHeavy.scala
index 4d7c48b0b4..d1a3f8085c 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachHeavy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachHeavy.scala
@@ -8,18 +8,18 @@ object ForeachHeavy extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ForeachHeavy(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 2048
-
+
@volatile var z = 0
-
+
val fun = (a: Cont) => heavyOperation(a)
val funjsr = new extra166y.Ops.Procedure[Cont] {
def op(a: Cont) = heavyOperation(a)
}
-
+
def heavyOperation(a: Cont) {
checkPrime(a.in + 1000000000)
}
-
+
def checkPrime(n: Int) = {
var isPrime = true
var i = 2
@@ -37,7 +37,7 @@ class ForeachHeavy(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = ForeachHeavy
override def repetitionsPerRun = 250
-
+
def runpar = pa.pforeach(ForeachHeavy.fun)
def runseq = sequentialForeach(ForeachHeavy.fun, sz)
def runjsr = jsrarr.apply(ForeachHeavy.funjsr)
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachLight.scala
index 5ef41d8d5b..3d0c5c45c4 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ForeachLight.scala
@@ -8,7 +8,7 @@ object ForeachLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ForeachLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 200000
-
+
val fun = (a: Cont) => a.num = a.in
val funjsr = new extra166y.Ops.Procedure[Cont] {
def op(a: Cont) = a.num = a.in
@@ -18,7 +18,7 @@ object ForeachLight extends Companion {
class ForeachLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = ForeachLight
-
+
def runpar = pa.pforeach(ForeachLight.fun)
def runseq = sequentialForeach(ForeachLight.fun, sz)
def runjsr = jsrarr.apply(ForeachLight.funjsr)
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/GroupBy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/GroupBy.scala
index ec83f2982b..a90227a6e4 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/GroupBy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/GroupBy.scala
@@ -8,7 +8,7 @@ object GroupByLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new GroupByLight(sz, parallelism, what)
override def comparisons = List()
override def defaultSize = 10000
-
+
val fun = (a: Cont) => a.in % 32
}
@@ -18,10 +18,10 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Int] {
def companion = GroupByLight
runresult = -1
-
+
val array = new Array[Cont](sz)
for (i <- 0 until sz) array(i) = new Cont(i)
-
+
def runpar = runresult = pa.groupBy(GroupByLight.fun).size
def runseq = runresult = array.asInstanceOf[Array[Cont]].groupBy(GroupByLight.fun).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IndexWhere.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IndexWhere.scala
index e8a74286ae..3a22bdd1db 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IndexWhere.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IndexWhere.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = IndexWhere
override def repetitionsPerRun = 400
-
+
def runpar = runresult = pa.indexWhere(IndexWhere.pred2, 0)
def runseq = runresult = sequentialIndexWhere(IndexWhere.pred2, 0, sz)
override def comparisonMap = collection.Map()
@@ -22,7 +22,7 @@ object IndexWhere extends Companion {
def benchName = "index-where";
def apply(sz: Int, p: Int, what: String) = new IndexWhere(sz, p, what)
override def comparisons = List()
-
+
val pred = (c: Cont) => {
var in = c.in
var i = 2
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IntersectHalf.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IntersectHalf.scala
index fa0b9f8baf..e429fb288e 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IntersectHalf.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/IntersectHalf.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = IntersectHalf
override def repetitionsPerRun = 400
-
+
val similar = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,11 +21,11 @@ with HavingResult[Int] {
}
p.drop(p.size / 2)
}
-
+
def runpar = runresult = pa.intersect(similar).size
def runseq = runresult = sequentialIntersect(similar, sz).size
override def comparisonMap = collection.Map()
-
+
val corr = (a: Cont, b: Cont) => a.in == b.in
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/LastIndexWhere.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/LastIndexWhere.scala
index dbba807390..427afa5571 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/LastIndexWhere.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/LastIndexWhere.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = LastIndexWhere
override def repetitionsPerRun = 400
-
+
def runpar = runresult = pa.lastIndexWhere(LastIndexWhere.pred2, pa.size - 1)
def runseq = runresult = sequentialLastIndexWhere(LastIndexWhere.pred2, sz - 1, sz)
override def comparisonMap = collection.Map()
@@ -22,7 +22,7 @@ object LastIndexWhere extends Companion {
def benchName = "last-index-where";
def apply(sz: Int, p: Int, what: String) = new LastIndexWhere(sz, p, what)
override def comparisons = List()
-
+
val pred = (c: Cont) => {
var in = c.in
var i = 2
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MapLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MapLight.scala
index f6a5985cb7..1451f6a57a 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MapLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MapLight.scala
@@ -8,7 +8,7 @@ object MapLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new MapLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 100000
-
+
def fun = (a: Cont) => { a }
def funjsr = new extra166y.Ops.Op[Cont, Cont] {
def op(a: Cont) = { a }
@@ -18,7 +18,7 @@ object MapLight extends Companion {
class MapLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = MapLight
-
+
def runpar = pa.map(MapLight.fun)
def runseq = sequentialMap(MapLight.fun, sz)
// def runseq = sequentialMapOpt(MapLight.fun, sz)
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MatrixMultiplication.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MatrixMultiplication.scala
index 29d6ff7580..5f902ff483 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MatrixMultiplication.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MatrixMultiplication.scala
@@ -16,46 +16,46 @@ class MatrixMultiplication(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = MatrixMultiplication
collection.parallel.tasksupport.environment = forkjoinpool
-
+
val a = Matrix.unit[Int](sz)
val b = Matrix.unit[Int](sz)
var c = new Matrix[Int](sz)
-
+
def runpar = c = a * b //{ c.assignProduct(a, b) } //; println("--------"); c.output }
def runseq = throw new UnsupportedOperationException
def comparisonMap = collection.Map()
-
+
class Matrix[T](n: Int)(implicit num: Numeric[T], man: Manifest[T]) {
val array = new Array[T](n * n)
-
+
def apply(y: Int, x: Int) = array(y * n + x)
-
+
def update(y: Int, x: Int, elem: T) = array(y * n + x) = elem
-
+
def *(b: Matrix[T]) = {
val m = new Matrix[T](n)
m.assignProduct(this, b)
m
}
-
+
def assignProduct(a: Matrix[T], b: Matrix[T]) = {
val range = ParRange(0, n * n, 1, false)
for (i <- range) this(i / n, i % n) = calcProduct(a, b, i / n, i % n);
}
-
+
private def calcProduct(a: Matrix[T], b: Matrix[T], y: Int, x: Int): T = {
import num._
var sum = zero
for (i <- 0 until n) sum += a(y, i) * b(i, x)
sum
}
-
+
def output = for (y <- 0 until n) {
for (x <- 0 until n) print(this(y, x))
println
}
}
-
+
object Matrix {
def unit[T](n: Int)(implicit num: Numeric[T], man: Manifest[T]) = {
val m = new Matrix[T](n)
@@ -63,7 +63,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
m
}
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MinLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MinLight.scala
index 66cd29807a..a51b5d6176 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MinLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/MinLight.scala
@@ -9,7 +9,7 @@ class MinLight(sz: Int, p: Int, what: String)
extends Resettable[Int](sz, p, what, (i: Int) => i, new Array[Any](_), classOf[Int]) {
def companion = MinLight
override def repetitionsPerRun = 400
-
+
def runpar = pa.min(Ordering[Int])
def runseq = sequentialMin(sz)
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PadToDouble.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PadToDouble.scala
index 26c5dd2114..f8a985c349 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PadToDouble.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PadToDouble.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = PadToDouble
override def repetitionsPerRun = 400
-
+
val similar = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,11 +21,11 @@ with HavingResult[Int] {
}
p.drop(p.size / 2)
}
-
+
def runpar = runresult = pa.padTo(size * 2, padder).size
def runseq = runresult = sequentialPadTo(size * 2, padder, size).size
override def comparisonMap = collection.Map()
-
+
val padder = new Cont(0)
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartialMapLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartialMapLight.scala
index e06720ae37..57f8536b9e 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartialMapLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartialMapLight.scala
@@ -8,7 +8,7 @@ object PartialMapLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new PartialMapLight(sz, parallelism, what)
override def comparisons = List()
override def defaultSize = 100000
-
+
def fun: PartialFunction[Cont, Cont] = {
case c: Cont if c.in >= 0 => c
}
@@ -17,7 +17,7 @@ object PartialMapLight extends Companion {
class PartialMapLight(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = PartialMapLight
-
+
def runpar = pa.collect(PartialMapLight.fun)
def runseq = sequentialPartialMap(PartialMapLight.fun, sz)
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartitionLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartitionLight.scala
index c0fb0454ec..b99a25b285 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartitionLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PartitionLight.scala
@@ -9,12 +9,12 @@ object PartitionLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new PartitionLight(sz, parallelism, what)
override def comparisons = Nil
override def defaultSize = 20000
-
+
val pred = (a: Cont) => check(a.in)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = check(a.in)
}
-
+
def check(n: Int) = {
var res = n
var i = 1
@@ -31,7 +31,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Int] {
def companion = PartitionLight
runresult = -1
-
+
def runpar = runresult = pa.partition(PartitionLight.pred)._1.size
def runseq = runresult = sequentialPartition(PartitionLight.pred, sz)._1.size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PatchHalf.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PatchHalf.scala
index 73bbc5ee1e..55cc71f129 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PatchHalf.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PatchHalf.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = PatchHalf
override def repetitionsPerRun = 400
-
+
val similar = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,7 +21,7 @@ with HavingResult[Int] {
}
p.drop(p.size / 2)
}
-
+
def runpar = runresult = pa.patch(size / 2, similar, 0).size
def runseq = runresult = sequentialPatch(size / 2, similar, 0, size).size
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PlusPlus.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PlusPlus.scala
index f9d6e277a5..2574621212 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PlusPlus.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/PlusPlus.scala
@@ -14,10 +14,10 @@ object PlusPlus extends Companion {
class PlusPlus(sz: Int, p: Int, what: String)
extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = PlusPlus
-
+
val thatarr = new Array[Cont](sz)
val thatpa = new ParArray[Cont](sz)
-
+
def runpar = pa ++ thatpa
def runseq = arr ++ thatarr
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceHeavy.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceHeavy.scala
index 5806dd7831..dd660ba8e0 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceHeavy.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceHeavy.scala
@@ -7,7 +7,7 @@ class ReduceHeavy(sz: Int, p: Int, what: String)
extends Resettable[Cont](sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont]) {
def companion = ReduceHeavy
override def repetitionsPerRun = 100
-
+
def runseq = sequentialReduce(Cont.opheavy, sz, new Cont(0))
def runpar = pa.reduce(Cont.opheavy)
def runjsr = jsrarr.reduce(Cont.reducerheavy, new Cont(0))
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceLight.scala
index 668590d463..f1f2a32403 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceLight.scala
@@ -19,24 +19,24 @@ extends Resettable[Cont](sz, p, what, new Cont(_), new Array[Any](_), classOf[Co
def companion = ReduceLight
override def repetitionsPerRun = 350
override val runs = 20
-
+
def runpar = {
pa.reduce(Cont.op)
// updatePar
}
-
+
def runjsr = {
jsrarr.reduce(Cont.reducer, new Cont(0))
// updateJsr
}
-
+
def runseq = {
sequentialReduce(Cont.op, sz, new Cont(0))
// updateSeq
}
-
+
override def comparisonMap = collection.Map("jsr" -> runjsr _)
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceList.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceList.scala
index db4fb3331f..f095797d1c 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceList.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceList.scala
@@ -32,7 +32,7 @@ extends Resettable[List[Int]](sz, p, what, ListCreator, new Array[Any](_), class
def companion = ReduceList
override def repetitionsPerRun = 10
override val runs = 15
-
+
def runpar = pa.reduce(ListOps.redop)
def runseq = sequentialReduce(ListOps.redop, sz, List[Int]())
def runjsr = jsrarr.reduce(ListOps.reducer, List[Int]())
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceNew.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceNew.scala
index c69f64d329..1cf4f4169a 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceNew.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReduceNew.scala
@@ -6,11 +6,11 @@ package scala.collection.parallel.benchmarks.parallel_array
/** Tests reduce method using an operator creating an object as a result. */
class ReduceNew(sz: Int, p: Int, what: String)
-extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i),
+extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i),
new Array[Any](_), classOf[Cont]) {
def companion = ReduceNew
override def repetitionsPerRun = 200
-
+
def runpar = pa.reduce(Cont.opnew)
def runseq = sequentialReduce(Cont.opnew, sz, new Cont(0))
def runjsr = jsrarr.reduce(Cont.reducernew, new Cont(0))
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReducePrime.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReducePrime.scala
index b6ff69e37b..8fb90981ac 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReducePrime.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReducePrime.scala
@@ -16,12 +16,12 @@ object IntOps {
val reducer = new extra166y.Ops.Reducer[IntWrap] {
def op(a: IntWrap, b: IntWrap) = primereduce(a, b)
}
-
+
def primereduce(a: IntWrap, b: IntWrap) = {
val check = (checkPrime(a.num), checkPrime(b.num))
if (a.num > b.num) a else b
}
-
+
def checkPrime(n: Int) = {
var isPrime = true
var i = 2
@@ -38,7 +38,7 @@ class ReducePrime(sz: Int, p: Int, what: String)
extends Resettable[IntWrap](sz, p, what, IntWrapCreator, new Array[Any](_), classOf[IntWrap])
with HavingResult[IntWrap] {
def companion = ReducePrime
-
+
def runseq = runresult = sequentialReduce(IntOps.op, sz, new IntWrap(0))
def runpar = runresult = pa.reduce(IntOps.op)
def runjsr = runresult = jsrarr.reduce(IntOps.reducer, new IntWrap(0))
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/RemoveDuplicates.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/RemoveDuplicates.scala
index a66d2fb1f8..feb1bd9466 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/RemoveDuplicates.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/RemoveDuplicates.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = RemoveDuplicates
override def repetitionsPerRun = 400
-
+
def runpar = runresult = pa.distinct.size
def runseq = runresult = sequentialRemoveDuplicates(size).size
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Resettable.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Resettable.scala
index 957e258ca8..b4403fcb9c 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Resettable.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Resettable.scala
@@ -13,37 +13,37 @@ class Cont(val in: Int) {
object Cont {
val pred = (a: Cont) => a.in > 100
-
+
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = a.in > 100
}
-
+
val op = (a: Cont, b: Cont) => {
b.num = a.in + b.in
b
}
-
+
val opnew = (a: Cont, b: Cont) => new Cont(a.in + b.in)
-
+
val opheavy = (a: Cont, b: Cont) => {
heavyComputation(a, b)
}
-
+
val reducer = new extra166y.Ops.Reducer[Cont] {
def op(a: Cont, b: Cont) = {
b.num = a.in + b.in
b
}
}
-
+
val reducernew = new extra166y.Ops.Reducer[Cont] {
def op(a: Cont, b: Cont) = new Cont(a.in + b.in)
}
-
+
val reducerheavy = new extra166y.Ops.Reducer[Cont] {
def op(a: Cont, b: Cont) = heavyComputation(a, b)
}
-
+
def heavyComputation(a: Cont, b: Cont) = {
val f = a.in
val s = b.in
@@ -59,18 +59,18 @@ object Cont {
}
}
-abstract class Resettable[T](val size: Int, val parallelism: Int, val runWhat: String,
+abstract class Resettable[T](val size: Int, val parallelism: Int, val runWhat: String,
elemcreator: Int => T, arrcreator: Int => Array[Any], cls: Class[T])
extends Bench with SequentialOps[T] {
val forkjoinpool = new scala.concurrent.forkjoin.ForkJoinPool(parallelism)
forkjoinpool.setMaximumPoolSize(parallelism)
val papool = new jsr166y.ForkJoinPool(parallelism)
papool.setMaximumPoolSize(parallelism)
-
+
var pa: ParArray[T] = null
var jsrarr: JSR166Array[T] = null
reset
-
+
def reset = runWhat match {
case "seq" =>
arr = arrcreator(size)
@@ -84,34 +84,34 @@ extends Bench with SequentialOps[T] {
for (i <- 0 until size) jsrarr.set(i, elemcreator(i))
case _ => throw new IllegalArgumentException("Unknown type: " + runWhat)
}
-
+
var updateCounter = 0
def incUpdateCounter {
updateCounter += 1
if (updateCounter > size) updateCounter = 0
}
-
+
def updateSeq {
val tmp = arr(updateCounter)
arr(updateCounter) = arr(size - updateCounter - 1)
arr(size - updateCounter - 1) = tmp
incUpdateCounter
}
-
+
def updatePar {
val tmp = pa(updateCounter)
pa(updateCounter) = pa(size - updateCounter - 1)
pa(size - updateCounter - 1) = tmp
incUpdateCounter
}
-
+
def updateJsr {
val tmp = jsrarr.get(updateCounter)
jsrarr.set(updateCounter, jsrarr.get(size - updateCounter - 1))
jsrarr.set(size - updateCounter - 1, tmp)
incUpdateCounter
}
-
+
override def printResults {
println(" --- Fork join pool state --- ")
println("Parallelism: " + forkjoinpool.getParallelism)
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Reverse.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Reverse.scala
index 0d00e60731..ec690d4b2d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Reverse.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/Reverse.scala
@@ -11,7 +11,7 @@ class Reverse(sz: Int, p: Int, what: String)
extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_), classOf[Cont]) {
def companion = Reverse
override def repetitionsPerRun = 400
-
+
def runpar = pa.reverse
def runseq = sequentialReverse(sz)
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReverseMap.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReverseMap.scala
index c9f4a02baa..47ae108c45 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReverseMap.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ReverseMap.scala
@@ -11,11 +11,11 @@ class ReverseMap(sz: Int, p: Int, what: String)
extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_), classOf[Cont]) {
def companion = ReverseMap
override def repetitionsPerRun = 100
-
+
def runpar = pa.reverseMap(compl)
def runseq = sequentialReverseMap(compl, sz)
override def comparisonMap = collection.Map()
-
+
val id = (c: Cont) => c
val compl = (c: Cont) => {
var in = c.in
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SameElementsLong.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SameElementsLong.scala
index 8ca0bedfde..d22c4df661 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SameElementsLong.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SameElementsLong.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Boolean] {
def companion = SameElementsLong
override def repetitionsPerRun = 400
-
+
val same = {
val p = new collection.parallel.mutable.ParArray[Cont](sz)
for (i <- 0 until sz) p(i) = what match {
@@ -21,7 +21,7 @@ with HavingResult[Boolean] {
}
p
}
-
+
def runpar = runresult = pa.sameElements(same)
def runseq = runresult = sequentialSameElements(same, sz)
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanLight.scala
index 85bfabfea7..d0ddf9f70e 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanLight.scala
@@ -10,7 +10,7 @@ object ScanLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ScanLight(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 40000
-
+
val op = (a: Cont, b: Cont) => {
operation(a, b)
}
@@ -26,7 +26,7 @@ extends Resettable[Cont](sz, p, what, new Cont(_), new Array[Any](_), classOf[Co
def companion = ScanLight
override def repetitionsPerRun = 50
override val runs = 12
-
+
def runpar = pa.scan(new Cont(0))(ScanLight.op)
def runseq = sequentialScan(new Cont(0), ScanLight.op, sz)
def runjsr = jsrarr.cumulate(new extra166y.Ops.Reducer[Cont] {
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanMedium.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanMedium.scala
index 73a237189f..a60ba7aa33 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanMedium.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/ScanMedium.scala
@@ -10,7 +10,7 @@ object ScanMedium extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new ScanMedium(sz, parallelism, what)
override def comparisons = List("jsr")
override def defaultSize = 5000
-
+
val op = (a: Cont, b: Cont) => {
operation(a, b)
}
@@ -35,7 +35,7 @@ extends Resettable[Cont](sz, p, what, new Cont(_), new Array[Any](_), classOf[Co
def companion = ScanMedium
override def repetitionsPerRun = 50
override val runs = 12
-
+
def runpar = pa.scan(new Cont(0))(ScanMedium.op)
def runseq = sequentialScan(new Cont(0), ScanMedium.op, sz)
def runjsr = jsrarr.cumulate(new extra166y.Ops.Reducer[Cont] {
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SegmentLength.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SegmentLength.scala
index 1f9041c373..8fae899b45 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SegmentLength.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SegmentLength.scala
@@ -12,7 +12,7 @@ extends Resettable[Cont](sz, p, what, (i: Int) => new Cont(i), new Array[Any](_
with HavingResult[Int] {
def companion = SegmentLength
override def repetitionsPerRun = 400
-
+
def runpar = runresult = pa.segmentLength(SegmentLength.pred2, 0)
def runseq = runresult = sequentialSegmentLength(SegmentLength.pred2, 0, sz)
override def comparisonMap = collection.Map()
@@ -22,7 +22,7 @@ object SegmentLength extends Companion {
def benchName = "segment-length";
def apply(sz: Int, p: Int, what: String) = new SegmentLength(sz, p, what)
override def comparisons = List()
-
+
val pred = (c: Cont) => {
var in = c.in
var i = 2
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SequentialOps.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SequentialOps.scala
index 18568ab7e9..ba32036002 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SequentialOps.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SequentialOps.scala
@@ -3,9 +3,9 @@ package scala.collection.parallel.benchmarks.parallel_array
trait SequentialOps[T] {
-
+
var arr: Array[Any] = null
-
+
def sequentialReduce(op: (T, T) => T, sz: Int, init: T) = {
var i = 0
val until = sz
@@ -16,7 +16,7 @@ trait SequentialOps[T] {
}
sum
}
-
+
def sequentialScan(z: T, op: (T, T) => T, sz: Int) = {
var outarr = new Array[Any](sz + 1)
outarr(0) = z
@@ -31,7 +31,7 @@ trait SequentialOps[T] {
j += 1
}
}
-
+
def sequentialCount(pred: T => Boolean, sz: Int) = {
var i = 0
val until = sz
@@ -42,7 +42,7 @@ trait SequentialOps[T] {
}
sum
}
-
+
def sequentialForeach[U](f: T => U, sz: Int) = {
var i = 0
val until = sz
@@ -52,7 +52,7 @@ trait SequentialOps[T] {
i += 1
}
}
-
+
def sequentialSum[U >: T](sz: Int)(implicit num: Numeric[U]) = {
var i = 0
val until = sz
@@ -63,7 +63,7 @@ trait SequentialOps[T] {
}
sum
}
-
+
def sequentialMin[U >: T](sz: Int)(implicit ord: Ordering[U]) = {
var i = 1
val until = sz
@@ -75,12 +75,12 @@ trait SequentialOps[T] {
}
min
}
-
+
def sequentialForall(pred: T => Boolean, sz: Int) = {
var i = 0
val until = sz
var all = true
- while (i < until) {
+ while (i < until) {
if (pred(arr(i).asInstanceOf[T])) i += 1
else {
all = false
@@ -94,7 +94,7 @@ trait SequentialOps[T] {
var i = 0
val until = sz
var some = false
- while (i < until) {
+ while (i < until) {
if (pred(arr(i).asInstanceOf[T])) {
some = true
i = until
@@ -102,12 +102,12 @@ trait SequentialOps[T] {
}
some
}
-
+
def sequentialFind(pred: T => Boolean, sz: Int) = {
var i = 0
val until = sz
var opt: Option[T] = None
- while (i < until) {
+ while (i < until) {
if (pred(arr(i).asInstanceOf[T])) {
opt = Some(arr(i).asInstanceOf[T])
i = until
@@ -115,7 +115,7 @@ trait SequentialOps[T] {
}
opt
}
-
+
def sequentialFilter(pred: T => Boolean, sz: Int) = {
var i = 0
val buff = new collection.mutable.ArrayBuffer[T]
@@ -128,7 +128,7 @@ trait SequentialOps[T] {
buff.copyToArray(resarr, 0)
resarr
}
-
+
def sequentialPartition(pred: T => Boolean, sz: Int) = {
var i = 0
val btrue = new collection.mutable.ArrayBuffer[T]
@@ -145,7 +145,7 @@ trait SequentialOps[T] {
bfalse.copyToArray(resfalse, 0)
(restrue, resfalse)
}
-
+
def sequentialTakeOpt(n: Int, sz: Int) = {
var i = 0
val until = if (n < sz) n else sz
@@ -172,7 +172,7 @@ trait SequentialOps[T] {
b.copyToArray(res, 0)
res
}
-
+
def sequentialDrop(n: Int, sz: Int) = {
var i = n
val b = new collection.mutable.ArrayBuffer[T]
@@ -186,7 +186,7 @@ trait SequentialOps[T] {
b.copyToArray(res, 0)
res
}
-
+
def sequentialSlice(from: Int, until: Int, sz: Int) = {
var i = from
val b = new collection.mutable.ArrayBuffer[T]
@@ -200,7 +200,7 @@ trait SequentialOps[T] {
b.copyToArray(res, 0)
res
}
-
+
def sequentialSplitAtOpt(n: Int, sz: Int) = {
var i = 0
val before = new Array[Any](n)
@@ -209,7 +209,7 @@ trait SequentialOps[T] {
Array.copy(arr, n, after, 0, sz - n)
(before, after)
}
-
+
def sequentialSplitAt(n: Int, sz: Int) = {
var i = 0
val before = new collection.mutable.ArrayBuffer[T]
@@ -227,7 +227,7 @@ trait SequentialOps[T] {
after.copyToArray(resaft, 0)
(resbef, resaft)
}
-
+
def sequentialTakeWhile(p: T => Boolean, sz: Int) = {
var i = 0
val b = new collection.mutable.ArrayBuffer[T]
@@ -242,7 +242,7 @@ trait SequentialOps[T] {
b.copyToArray(res, 0)
res
}
-
+
def sequentialSpan(p: T => Boolean, sz: Int) = {
val bpref = new collection.mutable.ArrayBuffer[T]
val brest = new collection.mutable.ArrayBuffer[T]
@@ -267,112 +267,112 @@ trait SequentialOps[T] {
brest.copyToArray(resrest, 0)
(respref, resrest)
}
-
+
def sequentialMap(f: T => T, sz: Int) = {
val b = new collection.mutable.ArrayBuffer[T](sz)
-
+
var i = 0
while (i < sz) {
b += f(arr(i).asInstanceOf[T])
i += 1
}
-
+
val res = new Array[Any](sz)
b.copyToArray(res, 0)
res
}
-
+
def sequentialMapOpt(f: T => T, sz: Int) = {
val res = new Array[Any](sz)
-
+
var i = 0
while (i < sz) {
res(i) = f(arr(i).asInstanceOf[T])
i += 1
}
-
+
res
}
-
+
def sequentialPartialMap(f: PartialFunction[T, T], sz: Int) = {
val b = new collection.mutable.ArrayBuffer[T](sz)
-
+
var i = 0
while (i < sz) {
val elem = arr(i).asInstanceOf[T]
if (f.isDefinedAt(elem)) b += f(elem)
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
def sequentialFlatMap(f: T => Traversable[Int], sz: Int) = {
val b = new collection.mutable.ArrayBuffer[Int](sz)
-
+
var i = 0
while (i < sz) {
val ts = f(arr(i).asInstanceOf[T])
for (elem <- ts) b += elem
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
- }
-
+ }
+
def sequentialCopyToArray(destarr: Array[Any], pos: Int, sz: Int) = {
Array.copy(arr, 0, destarr, pos, sz)
}
-
+
def sequentialSegmentLength(pred: T => Boolean, from: Int, sz: Int) = {
var i = from
var cnt = 0
-
+
while (i < sz) {
if (pred(arr(i).asInstanceOf[T])) {
cnt += 1
i += 1
} else i = sz
}
-
+
cnt
}
-
+
def sequentialIndexWhere(pred: T => Boolean, from: Int, sz: Int) = {
var i = from
var pos = -1
-
+
while (i < sz) {
if (pred(arr(i).asInstanceOf[T])) {
pos = i
i = sz
} else i += 1
}
-
+
pos
}
-
+
def sequentialLastIndexWhere(pred: T => Boolean, end: Int, sz: Int) = {
var i = end
var pos = -1
-
+
while (i >= 0) {
if (pred(arr(i).asInstanceOf[T])) {
pos = i
i = -1
} else i -= 1
}
-
+
pos
}
-
+
def sequentialReverse(sz: Int) = {
val res = new Array[Any](sz)
-
+
var i = sz - 1
var j = 0
while (i >= 0) {
@@ -382,10 +382,10 @@ trait SequentialOps[T] {
}
res
}
-
+
def sequentialReverseMap(f: T => T, sz: Int) = {
val res = new Array[Any](sz)
-
+
var i = sz - 1
var j = 0
while (i >= 0) {
@@ -395,7 +395,7 @@ trait SequentialOps[T] {
}
res
}
-
+
def sequentialSameElements(sq: Seq[T], sz: Int): Boolean = {
if (sz != sq.length) false
else {
@@ -409,7 +409,7 @@ trait SequentialOps[T] {
else false
}
}
-
+
def sequentialCorresponds(sq: Seq[T], f: (T, T) => Boolean, sz: Int): Boolean = {
if (sz != sq.length) false
else {
@@ -423,11 +423,11 @@ trait SequentialOps[T] {
else false
}
}
-
+
def sequentialDiff(sq: Seq[T], sz: Int) = {
val occmap = occurences(sq)
val b = new collection.mutable.ArrayBuffer[T]
-
+
var i = 0
while (i < sz) {
val elem = arr(i).asInstanceOf[T]
@@ -435,16 +435,16 @@ trait SequentialOps[T] {
else occmap(elem) -= 1
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
def sequentialIntersect(sq: Seq[T], sz: Int) = {
val occmap = occurences(sq)
val b = new collection.mutable.ArrayBuffer[T]
-
+
var i = 0
while (i < sz) {
val elem = arr(i).asInstanceOf[T]
@@ -455,22 +455,22 @@ trait SequentialOps[T] {
}
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
private def occurences(sq: Seq[T]) = {
val occmap = new collection.mutable.HashMap[T, Int] { override def default(k: T) = 0 }
for (elem <- sq.iterator) occmap(elem) += 1
occmap
}
-
+
def sequentialRemoveDuplicates(sz: Int) = {
val occ = new collection.mutable.HashSet[T]
val b = new collection.mutable.ArrayBuffer[T]
-
+
var i = 0
while (i < sz) {
val elem = arr(i).asInstanceOf[T]
@@ -480,58 +480,58 @@ trait SequentialOps[T] {
}
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
def sequentialPatch(from: Int, p: Seq[T], replaced: Int, sz: Int) = {
val b = new collection.mutable.ArrayBuffer[T]
b.sizeHint(from + (sz - from - replaced) + p.size)
-
+
var i = 0
while (i < from) {
b += arr(i).asInstanceOf[T]
i += 1
}
-
+
val jt = p.iterator
while (jt.hasNext) b += jt.next
-
+
val skipto = from + replaced
while (i < from + replaced) i += 1
-
+
while (i < sz) {
b += arr(i).asInstanceOf[T]
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
def sequentialPadTo(tosize: Int, elem: T, sz: Int) = {
val b = new collection.mutable.ArrayBuffer[T]
b.sizeHint(tosize)
-
+
var i = 0
while (i < sz) {
b += arr(i).asInstanceOf[T]
i += 1
}
-
+
while (i < tosize) {
b += elem
i += 1
}
-
+
val res = new Array[Any](b.size)
b.copyToArray(res, 0)
res
}
-
+
}
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceFew.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceFew.scala
index c22ae47400..450d640b8d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceFew.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceFew.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = SliceFew
override def repetitionsPerRun = 200
runresult = -1
-
+
def runpar = runresult = pa.slice(5, 25).size
def runseq = runresult = sequentialSlice(5, 25, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMany.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMany.scala
index 37ad666d93..4a30b60e1f 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMany.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMany.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = SliceMany
override def repetitionsPerRun = 200
runresult = -1
-
+
def runpar = runresult = pa.slice(pa.size / 4, pa.size * 3 / 4).size
def runseq = runresult = sequentialSlice(sz / 4, sz * 3 / 4, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMedium.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMedium.scala
index 7da94a4a20..e16002f15d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMedium.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SliceMedium.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = SliceMedium
override def repetitionsPerRun = 200
runresult = -1
-
+
def runpar = runresult = pa.slice(pa.size / 7, pa.size * 4 / 7).size
def runseq = runresult = sequentialSlice(sz / 7, sz * 4 / 7, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SpanLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SpanLight.scala
index 4d8b128e1f..5f1e631bce 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SpanLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SpanLight.scala
@@ -9,12 +9,12 @@ object SpanLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new SpanLight(sz, parallelism, what)
override def comparisons = Nil
override def defaultSize = 20000
-
+
val pred = (a: Cont) => check(a.in)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = check(a.in)
}
-
+
def check(n: Int) = {
var res = n
var i = 1
@@ -32,7 +32,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Int] {
def companion = SpanLight
runresult = -1
-
+
def runpar = runresult = pa.span(SpanLight.pred)._1.size
def runseq = runresult = sequentialSpan(SpanLight.pred, sz)._1.size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SplitHalf.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SplitHalf.scala
index d671e56c3d..ff1e009481 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SplitHalf.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SplitHalf.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = SplitHalf
override def repetitionsPerRun = 300
runresult = -1
-
+
def runpar = runresult = pa.splitAt(pa.size / 2)._1.size
def runseq = runresult = sequentialSplitAtOpt(sz / 2, sz)._1.size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SumLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SumLight.scala
index 67ac1c6478..6ed6d14370 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SumLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/SumLight.scala
@@ -9,7 +9,7 @@ class SumLight(sz: Int, p: Int, what: String)
extends Resettable[Int](sz, p, what, (i: Int) => i, new Array[Any](_), classOf[Int]) {
def companion = SumLight
override def repetitionsPerRun = 500
-
+
def runpar = pa.sum
def runseq = sequentialSum(sz)
override def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeMany.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeMany.scala
index 2f735c1e45..9ddfb77a9d 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeMany.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeMany.scala
@@ -17,7 +17,7 @@ with HavingResult[Int] {
def companion = TakeMany
override def repetitionsPerRun = 400
runresult = -1
-
+
def runpar = runresult = pa.take(pa.size / 2).size
def runseq = runresult = sequentialTake(sz / 2, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeWhileLight.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeWhileLight.scala
index 255cb695d7..a86c67d0d8 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeWhileLight.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_array/TakeWhileLight.scala
@@ -9,12 +9,12 @@ object TakeWhileLight extends Companion {
def apply(sz: Int, parallelism: Int, what: String) = new TakeWhileLight(sz, parallelism, what)
override def comparisons = Nil
override def defaultSize = 10000
-
+
val pred = (a: Cont) => check(a.in)
val predjsr = new extra166y.Ops.Predicate[Cont] {
def op(a: Cont) = check(a.in)
}
-
+
def check(n: Int) = {
var res = n
var i = 1
@@ -31,7 +31,7 @@ extends Resettable(sz, p, what, new Cont(_), new Array[Any](_), classOf[Cont])
with HavingResult[Int] {
def companion = TakeWhileLight
runresult = -1
-
+
def runpar = runresult = pa.takeWhile(TakeWhileLight.pred).size
def runseq = runresult = sequentialTakeWhile(TakeWhileLight.pred, sz).size
def comparisonMap = collection.Map()
diff --git a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_range/RangeBenches.scala b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_range/RangeBenches.scala
index 1bd35180c8..af852ce992 100644
--- a/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_range/RangeBenches.scala
+++ b/test/benchmarks/src/scala/collection/parallel/benchmarks/parallel_range/RangeBenches.scala
@@ -13,7 +13,7 @@ import scala.collection.parallel.benchmarks.generic.StandardParIterableBenches
object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
-
+
def nameOfCollection = "ParRange"
def operators = new IntOperators {}
def comparisonMap = collection.Map()
@@ -25,29 +25,29 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
collection.parallel.tasksupport.environment = forkJoinPool
pr
}
-
+
object MapLight extends IterableBenchCompanion {
override def defaultSize = 20000
def benchName = "map-light";
def apply(sz: Int, p: Int, w: String) = new MapLight(sz, p, w)
}
-
+
class MapLight(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def calc(n: Int) = n % 2 + 1
-
+
def comparisonMap = collection.Map()
def runseq = for (n <- this.seqcoll) yield calc(n)
def runpar = for (n <- this.parcoll) yield calc(n)
def companion = MapLight
}
-
+
object MapMedium extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "map-medium";
def apply(sz: Int, p: Int, w: String) = new MapMedium(sz, p, w)
}
-
+
class MapMedium(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
def calc(n: Int) = {
@@ -59,24 +59,24 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
}
sum
}
-
+
def comparisonMap = collection.Map()
def runseq = for (n <- this.seqcoll) yield calc(n)
def runpar = for (n <- this.parcoll) yield calc(n)
def companion = MapMedium
}
-
+
object ForeachModify extends IterableBenchCompanion {
override def defaultSize = 150000
def benchName = "foreach-modify";
def apply(sz: Int, p: Int, w: String) = new ForeachModify(sz, p, w)
}
-
+
class ForeachModify(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val array = new Array[Int](size)
def modify(n: Int) = array(n) += 1
-
+
def comparisonMap = collection.Map()
def runseq = for (n <- this.seqcoll) modify(n)
def runpar = for (n <- this.parcoll.asInstanceOf[ParRange]) {
@@ -85,13 +85,13 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
}
def companion = ForeachModify
}
-
+
object ForeachModifyMedium extends IterableBenchCompanion {
override def defaultSize = 20000
def benchName = "foreach-modify-medium";
def apply(sz: Int, p: Int, w: String) = new ForeachModifyMedium(sz, p, w)
}
-
+
class ForeachModifyMedium(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val array = new Array[Int](size)
@@ -104,78 +104,78 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
}
sum
}
-
+
def comparisonMap = collection.Map()
def runseq = for (n <- this.seqcoll) modify(n)
def runpar = for (n <- this.parcoll) modify(n)
def companion = ForeachModifyMedium
}
-
+
object ForeachModifyHeavy extends IterableBenchCompanion {
override def defaultSize = 1000
def benchName = "foreach-modify-heavy";
def apply(sz: Int, p: Int, w: String) = new ForeachModifyHeavy(sz, p, w)
}
-
+
class ForeachModifyHeavy(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val array = new Array[Int](size)
def modify(n: Int) = array(n) = collatz(10000 + array(n))
-
+
def comparisonMap = collection.Map()
def runseq = for (n <- this.seqcoll) modify(n)
def runpar = for (n <- this.parcoll) modify(n)
def companion = ForeachModifyHeavy
}
-
+
object ForeachAdd extends IterableBenchCompanion {
override def defaultSize = 10000
def benchName = "foreach-add";
def apply(sz: Int, p: Int, w: String) = new ForeachAdd(sz, p, w)
override def comparisons = List("seq-hashmap")
}
-
+
class ForeachAdd(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val cmap = new java.util.concurrent.ConcurrentHashMap[Int, Int]
val hmap = new java.util.HashMap[Int, Int]
-
+
override def reset = runWhat match {
case "seq-hashmap" => seqcoll = createSequential(size, parallelism)
case _ => super.reset
}
-
+
def comparisonMap = collection.Map("seq-hashmap" -> runseqhashmap _)
def runseqhashmap = for (i <- seqcoll) hmap put (i, onesum(i))
def runseq = for (i <- seqcoll) cmap put (i, onesum(i))
def runpar = for (i <- parcoll) cmap put (i, onesum(i))
def companion = ForeachAdd
}
-
+
object ForeachAddCollatz extends IterableBenchCompanion {
override def defaultSize = 5000
def benchName = "foreach-add-collatz";
def apply(sz: Int, p: Int, w: String) = new ForeachAddCollatz(sz, p, w)
override def comparisons = List("seq-hashmap")
}
-
+
class ForeachAddCollatz(val size: Int, val parallelism: Int, val runWhat: String)
extends IterableBench {
val cmap = new java.util.concurrent.ConcurrentHashMap[Int, Int]
val hmap = new java.util.HashMap[Int, Int]
-
+
override def reset = runWhat match {
case "seq-hashmap" => seqcoll = createSequential(size, parallelism)
case _ => super.reset
}
-
+
def comparisonMap = collection.Map("seq-hashmap" -> runseqhashmap _)
def runseqhashmap = for (i <- seqcoll) hmap put (i, collatz(i))
def runseq = for (i <- seqcoll) cmap put (i, collatz(i))
def runpar = for (i <- parcoll) cmap put (i, collatz(i))
def companion = ForeachAddCollatz
}
-
+
def collatz(n: Int) = {
var curr = n
var sum = 0
@@ -186,7 +186,7 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
}
sum
}
-
+
def onesum(n: Int) = {
var left = n
var sum = 0
@@ -196,7 +196,7 @@ object RangeBenches extends StandardParIterableBenches[Int, ParRange] {
}
sum
}
-
+
}
diff --git a/test/benchmarks/src/scala/util/HashSpeedTest.scala b/test/benchmarks/src/scala/util/HashSpeedTest.scala
index 5f6915e4fc..a4d310e6d1 100644
--- a/test/benchmarks/src/scala/util/HashSpeedTest.scala
+++ b/test/benchmarks/src/scala/util/HashSpeedTest.scala
@@ -1,5 +1,5 @@
object HashSpeedTest {
-
+
import System.{ nanoTime => now }
def time[A](f: => A) = {
@@ -7,7 +7,7 @@ object HashSpeedTest {
val ans = f
(ans, now - t0)
}
-
+
def ptime[A](f: => A) = {
val (ans, dt) = time(f)
printf("Elapsed: %.3f\n", dt * 1e-9)
@@ -40,17 +40,17 @@ object HashSpeedTest {
// If you have MurmurHash3 installed, uncomment below (and in main)
import scala.util.{ MurmurHash3 => MH3 }
-
+
val justCountString: String => Unit = str => {
var s, i = 0
while (i < str.length) { s += str.charAt(i); i += 1 }
HashHist.add(s)
}
-
+
val defaultHashString: String => Unit = str => HashHist.add(str.hashCode)
-
+
val murmurHashString: String => Unit = str => HashHist.add(MH3.stringHash(str))
-
+
def makeCharStrings = {
val a = new Array[Byte](4)
val buffer = new collection.mutable.ArrayBuffer[String]
@@ -77,7 +77,7 @@ object HashSpeedTest {
}
buffer.toArray
}
-
+
def hashCharStrings(ss: Array[String], hash: String => Unit) {
var i = 0
while (i < ss.length) {
@@ -91,9 +91,9 @@ object HashSpeedTest {
lli.foreach(_.foreach(s += _))
HashHist.add(s)
}
-
+
def defaultHashList: List[List[Int]] => Unit = lli => HashHist.add(lli.hashCode)
-
+
def makeBinaryLists = {
def singleLists(depth: Int): List[List[Int]] = {
if (depth <= 0) List(Nil)
@@ -132,7 +132,7 @@ object HashSpeedTest {
}
buffer.toArray
}
-
+
def hashBinaryLists(ls: Array[List[List[Int]]], hash: List[List[Int]] => Unit) {
var i = 0
while (i < ls.length) {
@@ -146,9 +146,9 @@ object HashSpeedTest {
si.foreach(s += _)
HashHist.add(s)
}
-
+
def defaultHashSets: Set[Int] => Unit = si => HashHist.add(si.hashCode)
-
+
def makeIntSets = {
def sets(depth: Int): List[Set[Int]] = {
if (depth <= 0) List(Set.empty[Int])
@@ -159,7 +159,7 @@ object HashSpeedTest {
}
sets(20).toArray
}
-
+
def hashIntSets(ss: Array[Set[Int]], hash: Set[Int] => Unit) {
var i = 0
while (i < ss.length) {
@@ -169,7 +169,7 @@ object HashSpeedTest {
}
def defaultHashTuples: (Product with Serializable) => Unit = p => HashHist.add(p.hashCode)
-
+
def makeNestedTuples = {
val basic = Array(
(0, 0),
@@ -199,7 +199,7 @@ object HashSpeedTest {
(for (i <- basic; j <- basic; k <- basic; l <- basic; m <- basic) yield (i, j, k, l, m)) ++
(for (i <- basic; j <- basic; k <- basic; l <- basic; m <- basic) yield (i, (j, (k, (l, m)))))
}
-
+
def hashNestedTuples(ts: Array[Product with Serializable], hash: (Product with Serializable) => Unit) {
var i = 0
while (i < ts.length) {
diff --git a/test/checker-tests/fail10.scala b/test/checker-tests/fail10.scala
index 6d4e6c27c9..c4aac71295 100644
--- a/test/checker-tests/fail10.scala
+++ b/test/checker-tests/fail10.scala
@@ -1,6 +1,6 @@
class ClassCounts extends scala.collection.mutable.HashMap[Class[_], Int] { }
-class A {
+class A {
def f(xs: ClassCounts) {
// ok
xs(getClass) = xs(getClass) + 1
@@ -13,7 +13,7 @@ class A {
// [Not checkable: namer]
// [Not checkable: packageobjects]
// [Now checking: typer]
-// test/checker-tests/fail10.scala:8: error:
+// test/checker-tests/fail10.scala:8: error:
// **** ERROR DURING INTERNAL CHECKING ****
// type mismatch;
// found : java.lang.Class[?0(in value ev$1)] where type ?0(in value ev$1)
diff --git a/test/checker-tests/fail12.scala b/test/checker-tests/fail12.scala
index 7568311454..27c212ac65 100644
--- a/test/checker-tests/fail12.scala
+++ b/test/checker-tests/fail12.scala
@@ -5,12 +5,12 @@ class A {
// or:
// do () while (b == false)
}
- }
+ }
}
-//
+//
// [Now checking: erasure]
// [check: erasure] New symbols: BoxedUnit UNIT runtime scala
-// /tmp/fail.scala:4: error:
+// /tmp/fail.scala:4: error:
// **** ERROR DURING INTERNAL CHECKING ****
// type mismatch;
// found : scala.runtime.BoxedUnit
diff --git a/test/checker-tests/fail2.scala b/test/checker-tests/fail2.scala
index 0f0d83aeb2..63672208db 100644
--- a/test/checker-tests/fail2.scala
+++ b/test/checker-tests/fail2.scala
@@ -3,7 +3,7 @@ class A {
def f[A, CC[X] <: Traversable[X]](): Unit = ()
}
-// % work/check all -uniqid -Xprint:typer work/fail2.scala
+// % work/check all -uniqid -Xprint:typer work/fail2.scala
//
// TypeStack init: REFERENCE(type AnyRef#2783)
// [Not checkable: parser]
@@ -19,7 +19,7 @@ class A {
// def f#9244[A#9245 >: Nothing#5846 <: Any#46, CC#9246[X#11055 >: Nothing#5846 <: Any#46] >: [X#11055]Nothing#5846 <: [X#11055]Traversable#3199[X#11055]](): Unit#3819 = ()
// }
// }
-//
+//
// [Now checking: typer]
// [check: typer] work/fail2.scala:3: Expected owner type CC#9248, found type CC#9246: Trees$TypeDef / type X#11055>: Nothing#5846 <: Any#46
// [Now checking: superaccessors]
diff --git a/test/checker-tests/fail6.scala b/test/checker-tests/fail6.scala
index c59be55c4e..a43bada400 100644
--- a/test/checker-tests/fail6.scala
+++ b/test/checker-tests/fail6.scala
@@ -3,13 +3,13 @@
// Apply( // sym=method while$1, tpe=Unit, tpe.sym=class Unit, tpe.sym.owner=package scala
// Ident("while$1"), // sym=method while$1, sym.owner=method f, sym.tpe=()Unit, tpe=()Unit, tpe.sym=<none>,
class Erasure {
- def f(b: Boolean) = {
+ def f(b: Boolean) = {
if (b) "abc"
else while (b) ()
}
}
-// % work/check all -Xprint:erasure work/fail6.scala
+// % work/check all -Xprint:erasure work/fail6.scala
// TypeStack init: REFERENCE(type AnyRef)
// [Not checkable: parser]
// [Not checkable: namer]
@@ -47,9 +47,9 @@ class Erasure {
// }
// }
// }
-//
+//
// [Now checking: erasure]
-// work/fail6.scala:4: error:
+// work/fail6.scala:4: error:
// **** ERROR DURING INTERNAL CHECKING ****
// type mismatch;
// found : scala.runtime.BoxedUnit
@@ -57,5 +57,5 @@ class Erasure {
// else while (b) ()
// ^
// one error found
-//
-//
+//
+//
diff --git a/test/checker-tests/fail7.scala b/test/checker-tests/fail7.scala
index 1ffb745e0b..58db58e37d 100644
--- a/test/checker-tests/fail7.scala
+++ b/test/checker-tests/fail7.scala
@@ -17,7 +17,7 @@ case class Foo(x: Int)
// [Not checkable: packageobjects]
// [Now checking: typer]
// [Now checking: superaccessors]
-// work/fail7.scala:1: error:
+// work/fail7.scala:1: error:
// **** ERROR DURING INTERNAL CHECKING ****
// method canEqual is defined twice
// case class Foo(x: Int)
@@ -51,7 +51,7 @@ case class Foo(x: Int)
// 4) Checking constructors:
//
// [Now checking: constructors]
-// work/fail7.scala:1: error:
+// work/fail7.scala:1: error:
// **** ERROR DURING INTERNAL CHECKING ****
// value x in class Foo cannot be accessed in Foo
// because of an internal error (no accessible symbol):
diff --git a/test/disabled-windows/script/utf8.scala b/test/disabled-windows/script/utf8.scala
index f294498cd2..5dfade0bb2 100755
--- a/test/disabled-windows/script/utf8.scala
+++ b/test/disabled-windows/script/utf8.scala
@@ -1,5 +1,5 @@
#!/bin/sh
-#
+#
# Checks if UTF-8 output makes it through unmangled.
cygwin=false;
@@ -9,7 +9,7 @@ esac
SOURCE="$0";
if $cygwin; then
- if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ;
+ if [ "$OS" = "Windows_NT" ] && cygpath -m .>/dev/null 2>/dev/null ;
then
format=mixed
else
diff --git a/test/disabled/coder/Coder.scala b/test/disabled/coder/Coder.scala
index 06dd4b6355..4e29c2a6ee 100644
--- a/test/disabled/coder/Coder.scala
+++ b/test/disabled/coder/Coder.scala
@@ -5,31 +5,31 @@ import collection.parallel.immutable._
class SeqCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, List[String]] =
+ val wordsForNum: Map[String, List[String]] =
words groupBy wordCode withDefaultValue List()
-
+
val memo = collection.mutable.Map[String, Set[List[String]]]("" -> Set(List()))
val wfnmemo = collection.mutable.Map[(String, String), Set[List[String]]]()
val subsmemo = collection.mutable.Map[(String, String, String), Set[List[String]]]()
-
+
/** All ways to encode a number as a list of words */
- def encode(number: String): Set[List[String]] =
+ def encode(number: String): Set[List[String]] =
if (number.isEmpty) Set(List())
else {
val splits = (1 to number.length).toSet
@@ -51,38 +51,38 @@ class SeqCoder(words: List[String]) {
memo += number -> r
r
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String): Set[String] = encode(number) map (_ mkString " ")
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
class ParCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, List[String]] =
+ val wordsForNum: Map[String, List[String]] =
words groupBy wordCode withDefaultValue List()
-
+
val comparison = new SeqCoder(words)
-
+
/** All ways to encode a number as a list of words */
- def encode(number: String): ParSet[List[String]] =
+ def encode(number: String): ParSet[List[String]] =
if (number.isEmpty) ParSet(List())
else {
val splits = (1 to number.length).toSet.par
@@ -105,7 +105,7 @@ class ParCoder(words: List[String]) {
assertNumber(number, r)
r
}
-
+
def assertSubs(num: String, subsfrom: String, word: String, r: ParSet[List[String]]) {
val m = comparison.subsmemo((num, subsfrom, word))
if (r != m) {
@@ -115,7 +115,7 @@ class ParCoder(words: List[String]) {
error("r != m")
}
}
-
+
def assertWfn(num: String, split: String, dropped: String, r: List[List[String]]) {
val m = comparison.wfnmemo((num, split))
val rs = r.toSet
@@ -139,7 +139,7 @@ class ParCoder(words: List[String]) {
error("rs != m")
}
}
-
+
def assertNumber(num: String, r: ParSet[List[String]]) {
val m = comparison.memo(num)
if (r != m) {
@@ -149,14 +149,14 @@ class ParCoder(words: List[String]) {
error("r != m")
}
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String): ParSet[String] = {
comparison.translate(number)
encode(number) map (_ mkString " ")
}
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
@@ -165,7 +165,7 @@ class ParCoder(words: List[String]) {
object Test {
val code = "2328437472947"//36262633"//837976"//"6477323986225453446"
//val code = "747294736262633"
-
+
/* */
def main(args : Array[String]) {
// import scala.concurrent.forkjoin.ForkJoinPool
@@ -173,16 +173,16 @@ object Test {
// case fj: ForkJoinPool => fj.setParallelism(1)
// }
// println(collection.parallel.tasksupport.parallelismLevel)
-
+
for (i <- 0 until 10) {
val seqcoder = new SeqCoder(Dictionary.wordlist)
val st = seqcoder.translate(code)
//println("Translation check: " + st.size)
-
+
val parcoder = new ParCoder(Dictionary.wordlist)
val pt = parcoder.translate(code)
//println("Translation check: " + pt.size)
-
+
// val st = sts.toList.sorted
// val pt = pts.toList.sorted
if (st.size != pt.size) {
diff --git a/test/disabled/coder/dict.txt b/test/disabled/coder/dict.txt
new file mode 100644
index 0000000000..46e95c907f
--- /dev/null
+++ b/test/disabled/coder/dict.txt
@@ -0,0 +1,58111 @@
+aardvark
+aardwolf
+aaron
+aback
+abacus
+abaft
+abalone
+abandon
+abandoned
+abandonment
+abandons
+abase
+abased
+abasement
+abash
+abashed
+abate
+abated
+abatement
+abates
+abattoir
+abattoirs
+abbe
+abbess
+abbey
+abbeys
+abbot
+abbots
+abbreviate
+abbreviated
+abbreviates
+abbreviating
+abbreviation
+abbreviations
+abdicate
+abdicated
+abdicates
+abdicating
+abdication
+abdomen
+abdomens
+abdominal
+abduct
+abducted
+abducting
+abduction
+abductions
+abductor
+abductors
+abducts
+abe
+abeam
+abel
+abele
+aberdeen
+aberrant
+aberration
+aberrations
+abet
+abets
+abetted
+abetting
+abeyance
+abhor
+abhorred
+abhorrence
+abhorrent
+abhors
+abide
+abided
+abides
+abiding
+abidjan
+abies
+abilities
+ability
+abject
+abjectly
+abjure
+abjured
+ablate
+ablates
+ablating
+ablation
+ablative
+ablaze
+able
+ablebodied
+abler
+ablest
+abloom
+ablution
+ablutions
+ably
+abnegation
+abnormal
+abnormalities
+abnormality
+abnormally
+aboard
+abode
+abodes
+abolish
+abolished
+abolishes
+abolishing
+abolition
+abolitionist
+abolitionists
+abomb
+abominable
+abominably
+abominate
+abominated
+abomination
+abominations
+aboriginal
+aborigines
+abort
+aborted
+aborting
+abortion
+abortionist
+abortionists
+abortions
+abortive
+aborts
+abound
+abounded
+abounding
+abounds
+about
+above
+abraded
+abraham
+abrasion
+abrasions
+abrasive
+abrasively
+abrasiveness
+abrasives
+abreast
+abridge
+abridged
+abridgement
+abridging
+abroad
+abrogate
+abrogated
+abrogating
+abrogation
+abrogations
+abrupt
+abruptly
+abruptness
+abscess
+abscesses
+abscissa
+abscissae
+abscissas
+abscond
+absconded
+absconder
+absconding
+absconds
+abseil
+abseiled
+abseiler
+abseiling
+abseils
+absence
+absences
+absent
+absented
+absentee
+absenteeism
+absentees
+absenting
+absently
+absentminded
+absentmindedly
+absentmindedness
+absolute
+absolutely
+absoluteness
+absolutes
+absolution
+absolutism
+absolutist
+absolutists
+absolve
+absolved
+absolves
+absolving
+absorb
+absorbed
+absorbency
+absorbent
+absorber
+absorbers
+absorbing
+absorbingly
+absorbs
+absorption
+absorptions
+absorptive
+absorptivity
+abstain
+abstained
+abstainer
+abstainers
+abstaining
+abstains
+abstemious
+abstemiously
+abstemiousness
+abstention
+abstentions
+abstinence
+abstinent
+abstract
+abstracted
+abstractedly
+abstracting
+abstraction
+abstractions
+abstractly
+abstracts
+abstruse
+abstrusely
+absurd
+absurder
+absurdest
+absurdist
+absurdities
+absurdity
+absurdly
+abundance
+abundances
+abundant
+abundantly
+abuse
+abused
+abuser
+abusers
+abuses
+abusing
+abusive
+abusively
+abusiveness
+abut
+abutment
+abutments
+abutted
+abutting
+abuzz
+aby
+abysmal
+abysmally
+abyss
+abyssal
+abysses
+acacia
+academe
+academia
+academic
+academical
+academically
+academician
+academicians
+academics
+academies
+academy
+acanthus
+acapulco
+accede
+acceded
+acceding
+accelerate
+accelerated
+accelerates
+accelerating
+acceleration
+accelerations
+accelerator
+accelerators
+accelerometer
+accelerometers
+accent
+accented
+accenting
+accents
+accentuate
+accentuated
+accentuates
+accentuating
+accentuation
+accept
+acceptability
+acceptable
+acceptably
+acceptance
+acceptances
+accepted
+accepting
+acceptor
+acceptors
+accepts
+access
+accessed
+accesses
+accessibility
+accessible
+accessing
+accession
+accessions
+accessories
+accessory
+accidence
+accident
+accidental
+accidentally
+accidentprone
+accidents
+acclaim
+acclaimed
+acclaims
+acclamation
+acclamations
+acclimatisation
+acclimatise
+acclimatised
+acclimatising
+accolade
+accolades
+accommodate
+accommodated
+accommodates
+accommodating
+accommodation
+accommodations
+accompanied
+accompanies
+accompaniment
+accompaniments
+accompanist
+accompany
+accompanying
+accomplice
+accomplices
+accomplish
+accomplished
+accomplishes
+accomplishing
+accomplishment
+accomplishments
+accord
+accordance
+accorded
+according
+accordingly
+accordion
+accordionist
+accordions
+accords
+accost
+accosted
+accosting
+accosts
+account
+accountability
+accountable
+accountancy
+accountant
+accountants
+accounted
+accounting
+accounts
+accra
+accredit
+accreditation
+accredited
+accrediting
+accredits
+accreted
+accretion
+accretions
+accrual
+accruals
+accrue
+accrued
+accrues
+accruing
+accumulate
+accumulated
+accumulates
+accumulating
+accumulation
+accumulations
+accumulative
+accumulator
+accumulators
+accuracies
+accuracy
+accurate
+accurately
+accursed
+accusal
+accusals
+accusation
+accusations
+accusative
+accusatory
+accuse
+accused
+accuser
+accusers
+accuses
+accusing
+accusingly
+accustom
+accustomed
+accustoming
+ace
+aced
+acentric
+acerbic
+acerbity
+acers
+aces
+acetal
+acetate
+acetates
+acetic
+acetone
+acetylene
+ache
+ached
+aches
+achievable
+achieve
+achieved
+achievement
+achievements
+achiever
+achievers
+achieves
+achieving
+aching
+achingly
+achings
+achromatic
+achy
+acid
+acidic
+acidification
+acidified
+acidify
+acidifying
+acidity
+acidly
+acidophiles
+acidrain
+acids
+acknowledge
+acknowledged
+acknowledgement
+acknowledgements
+acknowledges
+acknowledging
+acknowledgment
+acknowledgments
+acme
+acne
+acolyte
+acolytes
+aconite
+acorn
+acorns
+acoustic
+acoustical
+acoustically
+acoustics
+acquaint
+acquaintance
+acquaintances
+acquainted
+acquainting
+acquaints
+acquiesce
+acquiesced
+acquiescence
+acquiescent
+acquiescing
+acquire
+acquired
+acquirer
+acquirers
+acquires
+acquiring
+acquisition
+acquisitions
+acquisitive
+acquisitiveness
+acquit
+acquited
+acquites
+acquits
+acquittal
+acquittals
+acquittance
+acquitted
+acquitting
+acre
+acreage
+acres
+acrid
+acrimonious
+acrimoniously
+acrimony
+acrobat
+acrobatic
+acrobatics
+acrobats
+acronym
+acronyms
+across
+acrostic
+acrostics
+acrylic
+acrylics
+act
+acted
+acting
+actings
+actinides
+action
+actionable
+actions
+activate
+activated
+activates
+activating
+activation
+activations
+activator
+activators
+active
+actively
+actives
+activism
+activist
+activists
+activities
+activity
+actor
+actors
+actress
+actresses
+acts
+actual
+actualisation
+actualise
+actualised
+actualities
+actuality
+actually
+actuarial
+actuaries
+actuary
+actuate
+actuated
+actuates
+actuating
+actuation
+actuator
+actuators
+acuity
+acumen
+acupuncture
+acupuncturist
+acupuncturists
+acute
+acutely
+acuteness
+acuter
+acutest
+acyclic
+adage
+adages
+adagio
+adam
+adamant
+adamantly
+adapt
+adaptability
+adaptable
+adaptation
+adaptations
+adapted
+adapter
+adapters
+adapting
+adaptive
+adaptively
+adaptivity
+adaptor
+adaptors
+adapts
+add
+added
+addenda
+addendum
+adder
+adders
+addict
+addicted
+addiction
+addictions
+addictive
+addictiveness
+addicts
+adding
+addition
+additional
+additionally
+additions
+additive
+additively
+additives
+addle
+addled
+addles
+addling
+address
+addressability
+addressable
+addressed
+addressee
+addressees
+addresses
+addressing
+adds
+adduce
+adduced
+adduces
+adducing
+adelaide
+aden
+adenine
+adenoid
+adenoids
+adenoma
+adenomas
+adept
+adepts
+adequacy
+adequate
+adequately
+adhere
+adhered
+adherence
+adherent
+adherents
+adherer
+adherers
+adheres
+adhering
+adhesion
+adhesions
+adhesive
+adhesiveness
+adhesives
+adhoc
+adiabatic
+adiabatically
+adieu
+adieus
+adieux
+adios
+adipose
+adit
+adjacency
+adjacent
+adjacently
+adjectival
+adjective
+adjectives
+adjoin
+adjoined
+adjoining
+adjoins
+adjourn
+adjourned
+adjourning
+adjournment
+adjourns
+adjudge
+adjudged
+adjudges
+adjudicate
+adjudicated
+adjudicates
+adjudicating
+adjudication
+adjudications
+adjudicator
+adjudicators
+adjunct
+adjuncts
+adjure
+adjust
+adjustable
+adjusted
+adjuster
+adjusting
+adjustment
+adjustments
+adjusts
+adjutant
+adlib
+adlibs
+adman
+admen
+admin
+administer
+administered
+administering
+administers
+administrate
+administrated
+administrating
+administration
+administrations
+administrative
+administratively
+administrator
+administrators
+admirable
+admirably
+admiral
+admirals
+admiration
+admire
+admired
+admirer
+admirers
+admires
+admiring
+admiringly
+admissibility
+admissible
+admission
+admissions
+admit
+admits
+admittance
+admittances
+admitted
+admittedly
+admitting
+admix
+admixture
+admonish
+admonished
+admonishes
+admonishing
+admonishment
+admonition
+admonitions
+admonitory
+ado
+adobe
+adolescence
+adolescent
+adolescents
+adonis
+adopt
+adopted
+adopter
+adopting
+adoption
+adoptions
+adoptive
+adopts
+adorable
+adorably
+adoration
+adore
+adored
+adorer
+adorers
+adores
+adoring
+adoringly
+adorn
+adorned
+adorning
+adornment
+adornments
+adorns
+adrenal
+adrenalin
+adrenaline
+adrift
+adroit
+adroitly
+adroitness
+adsorb
+adsorbed
+adsorption
+adulation
+adulatory
+adult
+adulterate
+adulterated
+adulterates
+adulterating
+adulteration
+adulterations
+adulterer
+adulterers
+adulteress
+adulteresses
+adulterous
+adultery
+adulthood
+adults
+adumbrate
+adumbrated
+adumbrating
+advance
+advanced
+advancement
+advancements
+advancer
+advances
+advancing
+advantage
+advantaged
+advantageous
+advantageously
+advantages
+advent
+advents
+adventure
+adventured
+adventurer
+adventurers
+adventures
+adventuring
+adventurism
+adventurous
+adventurously
+adverb
+adverbial
+adverbs
+adversarial
+adversaries
+adversary
+adverse
+adversely
+adversities
+adversity
+advert
+adverted
+advertise
+advertised
+advertisement
+advertisements
+advertiser
+advertisers
+advertises
+advertising
+adverts
+advice
+advices
+advisability
+advisable
+advise
+advised
+advisedly
+adviser
+advisers
+advises
+advising
+advisory
+advocacy
+advocate
+advocated
+advocates
+advocating
+adze
+aegean
+aegina
+aegis
+aeolian
+aeon
+aeons
+aerate
+aerated
+aerates
+aerating
+aeration
+aerator
+aerial
+aerially
+aerials
+aerify
+aerobatic
+aerobatics
+aerobe
+aerobes
+aerobic
+aerobically
+aerobics
+aerobraking
+aerodrome
+aerodromes
+aerodynamic
+aerodynamically
+aerodynamics
+aerofoil
+aerofoils
+aeronaut
+aeronautic
+aeronautical
+aeronautics
+aeroplane
+aeroplanes
+aerosol
+aerosols
+aerospace
+aesop
+aesthete
+aesthetes
+aesthetic
+aesthetically
+aestheticism
+aestheticsy
+afar
+affability
+affable
+affably
+affair
+affairs
+affect
+affectation
+affectations
+affected
+affectedly
+affecting
+affection
+affectionate
+affectionately
+affections
+affective
+affects
+afferent
+affidavit
+affidavits
+affiliate
+affiliated
+affiliates
+affiliating
+affiliation
+affiliations
+affine
+affinities
+affinity
+affirm
+affirmation
+affirmations
+affirmative
+affirmatively
+affirmed
+affirming
+affirms
+affix
+affixed
+affixes
+affixing
+afflict
+afflicted
+afflicting
+affliction
+afflictions
+afflicts
+affluence
+affluent
+afflux
+afford
+affordability
+affordable
+afforded
+affording
+affords
+afforestation
+afforested
+affray
+affront
+affronted
+affronts
+afghan
+afghani
+afghans
+afield
+afire
+aflame
+afloat
+afoot
+aforementioned
+aforesaid
+aforethought
+afraid
+afresh
+africa
+african
+africans
+afro
+afros
+aft
+after
+afterbirth
+aftercare
+aftereffect
+aftereffects
+afterglow
+afterlife
+afterlives
+aftermath
+afternoon
+afternoons
+aftershave
+aftershocks
+aftertaste
+afterthought
+afterthoughts
+afterward
+afterwards
+aga
+again
+against
+agakhan
+agape
+agar
+agaragar
+agave
+agaves
+age
+aged
+ageing
+ageings
+ageism
+ageless
+agencies
+agency
+agenda
+agendas
+agendums
+agent
+agents
+ageold
+ages
+agglomerated
+agglomerating
+agglomeration
+agglomerations
+agglutinative
+aggravate
+aggravated
+aggravates
+aggravating
+aggravation
+aggravations
+aggregate
+aggregated
+aggregates
+aggregating
+aggregation
+aggregations
+aggression
+aggressions
+aggressive
+aggressively
+aggressiveness
+aggressor
+aggressors
+aggrieved
+aggrievedly
+aghast
+agile
+agiler
+agility
+aging
+agings
+agio
+agitate
+agitated
+agitatedly
+agitates
+agitating
+agitation
+agitations
+agitator
+agitators
+agitprop
+agleam
+aglow
+agnostic
+agnosticism
+agnostics
+ago
+agog
+agonies
+agonise
+agonised
+agonises
+agonising
+agonisingly
+agonist
+agonists
+agony
+agora
+agoraphobia
+agoraphobic
+agouti
+agrarian
+agree
+agreeable
+agreeableness
+agreeably
+agreed
+agreeing
+agreement
+agreements
+agrees
+agribusiness
+agricultural
+agriculturalist
+agriculturalists
+agriculturally
+agriculture
+agrimony
+agrochemical
+agrochemicals
+agronomist
+agronomists
+agronomy
+aground
+ague
+ah
+aha
+ahead
+ahem
+ahoy
+aid
+aide
+aided
+aidedecamp
+aider
+aiders
+aides
+aidesdecamp
+aiding
+aids
+ail
+aileron
+ailerons
+ailing
+ailment
+ailments
+ails
+aim
+aimed
+aimer
+aiming
+aimless
+aimlessly
+aimlessness
+aims
+aint
+air
+airbase
+airborne
+airbrush
+airbus
+airconditioned
+airconditioner
+airconditioning
+aircraft
+aircrew
+aircrews
+aire
+aired
+airfield
+airfields
+airflow
+airforce
+airframe
+airframes
+airgun
+airier
+airiest
+airily
+airiness
+airing
+airings
+airless
+airlift
+airlifted
+airlifting
+airlifts
+airline
+airliner
+airliners
+airlines
+airlock
+airlocks
+airmail
+airman
+airmen
+airplane
+airplay
+airport
+airports
+airraid
+airs
+airship
+airships
+airsick
+airsickness
+airspace
+airstream
+airstrip
+airstrips
+airtight
+airtime
+airwave
+airwaves
+airway
+airways
+airworthiness
+airworthy
+airy
+aisle
+aisles
+aitches
+ajar
+akimbo
+akin
+ala
+alabama
+alabaster
+alacarte
+alack
+alacrity
+aladdin
+alanine
+alarm
+alarmed
+alarming
+alarmingly
+alarmism
+alarmist
+alarms
+alas
+alaska
+alaskan
+alb
+albania
+albany
+albatross
+albatrosses
+albeit
+albinism
+albino
+album
+albumen
+albumin
+albums
+alchemical
+alchemist
+alchemists
+alchemy
+alcohol
+alcoholic
+alcoholics
+alcoholism
+alcohols
+alcove
+alcoves
+aldehyde
+aldehydes
+alder
+alderman
+aldermen
+aldrin
+ale
+alehouse
+alembic
+alert
+alerted
+alerting
+alertly
+alertness
+alerts
+ales
+alfalfa
+alfatah
+alga
+algae
+algal
+algebra
+algebraic
+algebraical
+algebraically
+algebraist
+algebras
+algeria
+algerian
+algiers
+algorithm
+algorithmic
+algorithmically
+algorithms
+alias
+aliases
+alibaba
+alibi
+alibis
+alien
+alienate
+alienated
+alienates
+alienating
+alienation
+aliened
+aliening
+aliens
+alight
+alighted
+alighting
+alights
+align
+aligned
+aligning
+alignment
+alignments
+aligns
+alike
+alimentary
+alimony
+aline
+alined
+alines
+alining
+aliphatic
+aliquot
+aliquots
+alive
+alkali
+alkalic
+alkaline
+alkalinity
+alkalis
+alkalise
+alkaloid
+alkaloids
+alkanes
+alkyl
+all
+allay
+allayed
+allaying
+allays
+allegation
+allegations
+allege
+alleged
+allegedly
+alleges
+allegiance
+allegiances
+alleging
+allegorical
+allegorically
+allegories
+allegory
+allegri
+allegro
+allele
+alleles
+allelic
+allergen
+allergens
+allergic
+allergies
+allergy
+alleviate
+alleviated
+alleviates
+alleviating
+alleviation
+alleviations
+alley
+alleys
+alleyway
+alleyways
+alliance
+alliances
+allied
+allies
+alligator
+alligators
+alliterate
+alliterated
+alliterating
+alliteration
+alliterations
+alliterative
+allocatable
+allocate
+allocated
+allocates
+allocating
+allocation
+allocations
+allocator
+allocators
+allophones
+allot
+allotment
+allotments
+allotrope
+allotropic
+allots
+allotted
+allotting
+allow
+allowable
+allowance
+allowances
+allowed
+allowing
+allows
+alloy
+alloyed
+alloying
+alloys
+allude
+alluded
+alludes
+alluding
+allure
+allured
+allurement
+allurements
+allures
+alluring
+alluringly
+allusion
+allusions
+allusive
+alluvia
+alluvial
+alluvium
+ally
+allying
+almanac
+almanacs
+almighty
+almond
+almonds
+almost
+alms
+almshouse
+almshouses
+aloe
+aloes
+aloft
+aloha
+alone
+aloneness
+along
+alongside
+aloof
+aloofness
+aloud
+alp
+alpaca
+alpacas
+alpha
+alphabet
+alphabetic
+alphabetical
+alphabetically
+alphabets
+alphanumeric
+alphas
+alpine
+alps
+already
+alright
+also
+alt
+altar
+altarpiece
+altarpieces
+altars
+alter
+alterable
+alteration
+alterations
+altercate
+altercation
+altercations
+altered
+alterego
+altering
+alternate
+alternated
+alternately
+alternates
+alternating
+alternation
+alternations
+alternative
+alternatively
+alternatives
+alternator
+alternators
+alters
+although
+altimeter
+altimeters
+altitude
+altitudes
+alto
+altogether
+altruism
+altruist
+altruistic
+altruistically
+alts
+alum
+aluminium
+aluminum
+alumni
+alumnus
+alveolar
+alveoli
+always
+am
+amalgam
+amalgamate
+amalgamated
+amalgamates
+amalgamating
+amalgamation
+amalgamations
+amalgams
+amanuensis
+amass
+amassed
+amasses
+amassing
+amateur
+amateurish
+amateurishly
+amateurishness
+amateurism
+amateurs
+amatory
+amaze
+amazed
+amazement
+amazes
+amazing
+amazingly
+amazon
+amazons
+ambassador
+ambassadorial
+ambassadors
+amber
+ambergris
+ambiance
+ambidextrous
+ambience
+ambient
+ambiguities
+ambiguity
+ambiguous
+ambiguously
+ambit
+ambition
+ambitions
+ambitious
+ambitiously
+ambivalence
+ambivalent
+ambivalently
+amble
+ambled
+ambler
+ambles
+ambling
+ambrosia
+ambulance
+ambulances
+ambulant
+ambulate
+ambulatory
+ambuscade
+ambuscades
+ambush
+ambushed
+ambushers
+ambushes
+ambushing
+ameliorate
+ameliorated
+ameliorates
+ameliorating
+amelioration
+amen
+amenability
+amenable
+amend
+amendable
+amended
+amending
+amendment
+amendments
+amends
+amenities
+amenity
+amenorrhoea
+amens
+america
+american
+americans
+americium
+amethyst
+amethystine
+amethysts
+amiability
+amiable
+amiableness
+amiably
+amicability
+amicable
+amicably
+amid
+amide
+amidships
+amidst
+amigo
+amine
+amines
+amino
+amir
+amiss
+amity
+amman
+ammeter
+ammeters
+ammo
+ammonia
+ammonites
+ammonium
+ammunition
+amnesia
+amnesiac
+amnesic
+amnesties
+amnesty
+amniotic
+amoeba
+amoebae
+amoebic
+amok
+among
+amongst
+amoral
+amorality
+amorist
+amorous
+amorously
+amorphous
+amortisation
+amortise
+amortised
+amount
+amounted
+amounting
+amounts
+amour
+amours
+amp
+ampere
+amperes
+ampersand
+ampersands
+amphetamine
+amphetamines
+amphibia
+amphibian
+amphibians
+amphibious
+amphitheatre
+amphitheatres
+amphora
+ample
+ampler
+amplification
+amplifications
+amplified
+amplifier
+amplifiers
+amplifies
+amplify
+amplifying
+amplitude
+amplitudes
+amply
+ampoules
+amps
+ampule
+ampules
+ampuls
+amputate
+amputated
+amputating
+amputation
+amputations
+amputee
+amputees
+amuck
+amulet
+amulets
+amuse
+amused
+amusement
+amusements
+amuses
+amusing
+amusingly
+an
+ana
+anabolic
+anachronism
+anachronisms
+anachronistic
+anachronistically
+anaconda
+anacondas
+anaemia
+anaemic
+anaerobic
+anaerobically
+anaesthesia
+anaesthetic
+anaesthetics
+anaesthetise
+anaesthetised
+anaesthetising
+anaesthetist
+anaesthetists
+anagram
+anagrammatic
+anagrammatically
+anagrams
+anal
+analgesia
+analgesic
+analgesics
+anally
+analogical
+analogies
+analogise
+analogous
+analogously
+analogue
+analogues
+analogy
+analysable
+analyse
+analysed
+analyser
+analysers
+analyses
+analysing
+analysis
+analyst
+analysts
+analytic
+analytical
+analytically
+anamorphic
+ananas
+anaphora
+anaphoric
+anarchic
+anarchical
+anarchism
+anarchist
+anarchistic
+anarchists
+anarchy
+anathema
+anatomic
+anatomical
+anatomically
+anatomies
+anatomist
+anatomists
+anatomy
+ancestor
+ancestors
+ancestral
+ancestries
+ancestry
+anchor
+anchorage
+anchorages
+anchored
+anchoring
+anchorite
+anchors
+anchovies
+anchovy
+ancient
+anciently
+ancients
+ancillary
+and
+andante
+andes
+andrew
+androgynous
+android
+androids
+anecdotal
+anecdotally
+anecdote
+anecdotes
+anechoic
+anemia
+anemic
+anemone
+anemones
+anergy
+aneroid
+aneurysm
+aneurysms
+anew
+angel
+angelic
+angelica
+angels
+angelus
+anger
+angered
+angering
+angers
+angina
+anginal
+angioplasty
+angle
+angled
+anglepoise
+angler
+anglers
+angles
+anglian
+anglican
+angling
+angola
+angolan
+angolans
+angora
+angoras
+angrier
+angriest
+angrily
+angry
+angst
+angstroms
+anguish
+anguished
+anguishes
+angular
+angularity
+anhydrous
+anil
+aniline
+animal
+animals
+animate
+animated
+animatedly
+animates
+animating
+animation
+animations
+animator
+animators
+animism
+animist
+animists
+animosities
+animosity
+animus
+anion
+anionic
+anions
+anise
+aniseed
+aniseeds
+anisotropic
+anisotropies
+anisotropy
+ankara
+ankle
+ankles
+anklet
+anklets
+anna
+annal
+annals
+anneal
+annealed
+annealer
+annealing
+annex
+annexation
+annexations
+annexe
+annexed
+annexes
+annexing
+annihilate
+annihilated
+annihilates
+annihilating
+annihilation
+anniversaries
+anniversary
+annotate
+annotated
+annotates
+annotating
+annotation
+annotations
+announce
+announced
+announcement
+announcements
+announcer
+announcers
+announces
+announcing
+annoy
+annoyance
+annoyances
+annoyed
+annoyer
+annoyers
+annoying
+annoyingly
+annoys
+annual
+annualised
+annually
+annuals
+annuities
+annuity
+annul
+annular
+annuli
+annulled
+annulling
+annulment
+annuls
+annulus
+annunciation
+anode
+anodes
+anodised
+anodyne
+anoint
+anointed
+anointing
+anoints
+anomalies
+anomalous
+anomalously
+anomaly
+anomic
+anon
+anonym
+anonymity
+anonymous
+anonymously
+anonyms
+anorak
+anoraks
+anorexia
+anorexic
+another
+answer
+answerable
+answered
+answerer
+answering
+answers
+ant
+antacid
+antacids
+antagonise
+antagonised
+antagonises
+antagonising
+antagonism
+antagonisms
+antagonist
+antagonistic
+antagonists
+ante
+anteater
+anteaters
+antecedent
+antecedents
+antechamber
+antedate
+antedates
+antedating
+antediluvian
+antelope
+antelopes
+antenatal
+antenna
+antennae
+antennas
+anterior
+anteriorly
+anteroom
+anthem
+anthems
+anther
+anthologies
+anthologise
+anthologised
+anthology
+anthracite
+anthrax
+anthropic
+anthropocentric
+anthropogenic
+anthropogenically
+anthropoid
+anthropological
+anthropologist
+anthropologists
+anthropology
+anthropometric
+anthropomorphic
+anthropomorphising
+anthropomorphism
+anti
+antiabortionists
+antiaircraft
+antibiotic
+antibiotics
+antibodies
+antibody
+antic
+anticipate
+anticipated
+anticipates
+anticipating
+anticipation
+anticipations
+anticipative
+anticipatory
+anticlimax
+anticlockwise
+anticoagulants
+anticonstitutional
+antics
+anticyclone
+antidepressant
+antidepressants
+antidote
+antidotes
+antifreeze
+antigen
+antigenic
+antigens
+antihistamines
+antilope
+antimatter
+antimony
+antioxidants
+antiparticles
+antipathetic
+antipathies
+antipathy
+antipodes
+antiquarian
+antiquarianism
+antiquarians
+antiquaries
+antiquary
+antiquated
+antique
+antiques
+antiquities
+antiquity
+antiseptic
+antiseptics
+antisocial
+antistatic
+antisymmetric
+antisymmetry
+antitheses
+antithesis
+antithetic
+antithetical
+antithetically
+antitrust
+antiviral
+antler
+antlers
+antlion
+antlions
+antonym
+antonyms
+antral
+antrum
+ants
+antwerp
+anus
+anvil
+anvils
+anxieties
+anxiety
+anxious
+anxiously
+any
+anybody
+anyhow
+anymore
+anyone
+anyplace
+anything
+anyway
+anyways
+anywhere
+aorist
+aorta
+aortas
+aortic
+apace
+apache
+apaches
+apart
+apartment
+apartments
+apartness
+apathetic
+apathetically
+apathy
+ape
+aped
+apeman
+aperies
+aperiodic
+aperiodically
+aperitif
+aperitifs
+aperture
+apertures
+apery
+apes
+apex
+aphasia
+aphelion
+aphid
+aphids
+aphorism
+aphorisms
+aphorist
+aphoristic
+aphrodisiac
+aphrodisiacs
+apian
+apiaries
+apiarist
+apiary
+apiece
+aping
+apis
+apish
+aplenty
+aplomb
+apnea
+apnoea
+apocalypse
+apocalyptic
+apocryphal
+apogee
+apolitical
+apollo
+apologetic
+apologetically
+apologia
+apologies
+apologise
+apologised
+apologises
+apologising
+apologist
+apologists
+apology
+apoplectic
+apoplexy
+apostasy
+apostate
+apostates
+apostle
+apostles
+apostolate
+apostolic
+apostrophe
+apostrophes
+apostrophised
+apothecaries
+apothecary
+apotheosis
+appal
+appalled
+appalling
+appallingly
+appals
+apparatchik
+apparatchiks
+apparatus
+apparatuses
+apparel
+apparelled
+apparent
+apparently
+apparition
+apparitions
+appeal
+appealed
+appealing
+appealingly
+appeals
+appear
+appearance
+appearances
+appeared
+appearing
+appears
+appease
+appeased
+appeasement
+appeaser
+appeasers
+appeases
+appeasing
+appellant
+appellants
+appellate
+appellation
+appellations
+append
+appendage
+appendages
+appended
+appendices
+appendicitis
+appending
+appendix
+appends
+appertain
+appertained
+appertaining
+appetiser
+appetising
+appetite
+appetites
+applaud
+applauded
+applauding
+applauds
+applause
+apple
+applecart
+applepie
+apples
+applet
+appliance
+appliances
+applicability
+applicable
+applicant
+applicants
+application
+applications
+applicative
+applicator
+applicators
+applied
+applier
+applies
+applique
+apply
+applying
+appoint
+appointed
+appointee
+appointees
+appointing
+appointment
+appointments
+appoints
+apportion
+apportioned
+apportioning
+apportionment
+apportions
+apposite
+apposition
+appraisal
+appraisals
+appraise
+appraised
+appraisees
+appraiser
+appraisers
+appraises
+appraising
+appraisingly
+appreciable
+appreciably
+appreciate
+appreciated
+appreciates
+appreciating
+appreciation
+appreciations
+appreciative
+appreciatively
+apprehend
+apprehended
+apprehending
+apprehends
+apprehension
+apprehensions
+apprehensive
+apprehensively
+apprentice
+apprenticed
+apprentices
+apprenticeship
+apprenticeships
+apprise
+apprised
+apprising
+appro
+approach
+approachability
+approachable
+approached
+approaches
+approaching
+approbation
+appropriate
+appropriated
+appropriately
+appropriateness
+appropriates
+appropriating
+appropriation
+appropriations
+approval
+approvals
+approve
+approved
+approves
+approving
+approvingly
+approximate
+approximated
+approximately
+approximates
+approximating
+approximation
+approximations
+apricot
+apricots
+april
+apriori
+apron
+aprons
+apropos
+apse
+apses
+apsis
+apt
+aptest
+aptitude
+aptitudes
+aptly
+aptness
+aqua
+aqualung
+aquamarine
+aquanaut
+aquaria
+aquarium
+aquariums
+aquatic
+aquatics
+aqueduct
+aqueducts
+aqueous
+aquifer
+aquifers
+aquiline
+arab
+arabesque
+arabesques
+arabia
+arabian
+arabians
+arabic
+arable
+arabs
+arachnid
+arachnids
+arachnoid
+arachnophobia
+arak
+araks
+ararat
+arbiter
+arbiters
+arbitrage
+arbitrageur
+arbitrageurs
+arbitral
+arbitrarily
+arbitrariness
+arbitrary
+arbitrate
+arbitrated
+arbitrates
+arbitrating
+arbitration
+arbitrations
+arbitrator
+arbitrators
+arbor
+arboreal
+arboretum
+arbour
+arc
+arcade
+arcades
+arcadia
+arcading
+arcana
+arcane
+arcanely
+arcaneness
+arced
+arch
+archaeological
+archaeologically
+archaeologist
+archaeologists
+archaeology
+archaeopteryx
+archaic
+archaism
+archaisms
+archangel
+archangels
+archbishop
+archbishops
+archdeacon
+archdeaconry
+archdeacons
+archdiocese
+archduke
+archdukes
+arched
+archenemies
+archenemy
+archer
+archers
+archery
+arches
+archetypal
+archetype
+archetypes
+archetypical
+arching
+archipelago
+architect
+architectonic
+architects
+architectural
+architecturally
+architecture
+architectures
+architrave
+architraves
+archival
+archive
+archived
+archives
+archiving
+archivist
+archivists
+archly
+archness
+archway
+archways
+arcing
+arcs
+arctic
+ardency
+ardent
+ardently
+ardour
+arduous
+are
+area
+areal
+areas
+arena
+arenas
+arent
+argent
+argon
+argot
+arguable
+arguably
+argue
+argued
+arguer
+arguers
+argues
+arguing
+argument
+argumentation
+argumentative
+argumentatively
+arguments
+argus
+aria
+arias
+arid
+aridity
+aridness
+aright
+arise
+arisen
+arises
+arising
+aristocracies
+aristocracy
+aristocrat
+aristocratic
+aristocrats
+arithmetic
+arithmetical
+arithmetically
+arizona
+ark
+arkansas
+arks
+arm
+armada
+armadas
+armadillo
+armament
+armaments
+armature
+armatures
+armband
+armbands
+armchair
+armchairs
+armed
+armenia
+armful
+armfuls
+armhole
+armholes
+armies
+arming
+armistice
+armless
+armlet
+armlets
+armour
+armoured
+armourer
+armourers
+armouries
+armourplated
+armoury
+armpit
+armpits
+armrest
+arms
+army
+aroma
+aromas
+aromatherapist
+aromatherapy
+aromatic
+aromaticity
+aromatics
+arose
+around
+arousal
+arousals
+arouse
+aroused
+arouses
+arousing
+arrange
+arrangeable
+arranged
+arrangement
+arrangements
+arranger
+arranges
+arranging
+arrant
+arrases
+array
+arrayed
+arraying
+arrays
+arrears
+arrest
+arrestable
+arrested
+arrester
+arresting
+arrests
+arrhythmia
+arrival
+arrivals
+arrive
+arrived
+arriver
+arrives
+arriving
+arrogance
+arrogant
+arrogantly
+arrow
+arrowed
+arrowhead
+arrowheads
+arrowing
+arrowroot
+arrows
+arsenal
+arsenals
+arsenic
+arsenide
+arson
+arsonist
+arsonists
+art
+artefact
+artefacts
+artefactual
+arterial
+arteries
+artery
+artful
+artfully
+artfulness
+arthritic
+arthritis
+arthropod
+arthropods
+arthur
+artichoke
+artichokes
+article
+articled
+articles
+articulacy
+articular
+articulate
+articulated
+articulately
+articulates
+articulating
+articulation
+articulations
+articulatory
+artier
+artifice
+artificial
+artificiality
+artificially
+artillery
+artisan
+artisans
+artist
+artiste
+artistes
+artistic
+artistically
+artistry
+artists
+artless
+artlessly
+artlessness
+arts
+artwork
+artworks
+arty
+arum
+as
+asbestos
+asbestosis
+ascend
+ascendancy
+ascendant
+ascended
+ascendency
+ascender
+ascending
+ascends
+ascension
+ascensions
+ascent
+ascents
+ascertain
+ascertainable
+ascertained
+ascertaining
+ascertainment
+ascertains
+ascetic
+asceticism
+ascetics
+ascorbic
+ascribable
+ascribe
+ascribed
+ascribes
+ascribing
+ascription
+ascriptions
+aseptic
+asexual
+ash
+ashamed
+ashamedly
+ashbin
+ashbins
+ashcans
+ashen
+ashes
+ashore
+ashtray
+ashtrays
+ashy
+asia
+asian
+asians
+asiatic
+aside
+asides
+asinine
+ask
+askance
+asked
+askers
+askew
+asking
+asks
+aslant
+asleep
+asocial
+asp
+asparagus
+aspect
+aspects
+asperity
+aspersion
+aspersions
+asphalt
+asphyxia
+asphyxiate
+asphyxiated
+asphyxiation
+aspic
+aspidistra
+aspirant
+aspirants
+aspirate
+aspirated
+aspirates
+aspirating
+aspiration
+aspirational
+aspirations
+aspirators
+aspire
+aspired
+aspires
+aspirin
+aspiring
+aspirins
+asps
+ass
+assail
+assailable
+assailant
+assailants
+assailed
+assailing
+assails
+assassin
+assassinate
+assassinated
+assassinating
+assassination
+assassinations
+assassins
+assault
+assaulted
+assaulting
+assaults
+assay
+assayed
+assayer
+assays
+assegai
+assegais
+assemblage
+assemblages
+assemble
+assembled
+assembler
+assemblers
+assembles
+assemblies
+assembling
+assembly
+assent
+assented
+assenting
+assents
+assert
+asserted
+asserting
+assertion
+assertions
+assertive
+assertively
+assertiveness
+asserts
+asses
+assess
+assessable
+assessed
+assesses
+assessing
+assessment
+assessments
+assessor
+assessors
+asset
+assets
+assiduity
+assiduous
+assiduously
+assign
+assignable
+assignation
+assignations
+assigned
+assignees
+assigner
+assigning
+assignment
+assignments
+assigns
+assimilable
+assimilate
+assimilated
+assimilates
+assimilating
+assimilation
+assist
+assistance
+assistant
+assistants
+assisted
+assisting
+assists
+assizes
+associate
+associated
+associates
+associateship
+associating
+association
+associational
+associations
+associative
+associatively
+associativity
+assonance
+assort
+assorted
+assortment
+assortments
+assuage
+assuaged
+assuages
+assuaging
+assume
+assumed
+assumes
+assuming
+assumption
+assumptions
+assurance
+assurances
+assure
+assured
+assuredly
+assures
+assuring
+assyria
+assyrian
+aster
+asterisk
+asterisked
+asterisks
+astern
+asteroid
+asteroids
+asters
+asthma
+asthmatic
+asthmatics
+astigmatic
+astigmatism
+astir
+astonish
+astonished
+astonishes
+astonishing
+astonishingly
+astonishment
+astound
+astounded
+astounding
+astoundingly
+astounds
+astraddle
+astral
+astrally
+astray
+astride
+astringent
+astrolabe
+astrolabes
+astrologer
+astrologers
+astrological
+astrology
+astronaut
+astronautical
+astronautics
+astronauts
+astronomer
+astronomers
+astronomic
+astronomical
+astronomically
+astronomy
+astrophysical
+astrophysicist
+astrophysicists
+astrophysics
+astute
+astutely
+astuteness
+asunder
+aswan
+asylum
+asylums
+asymmetric
+asymmetrical
+asymmetrically
+asymmetries
+asymmetry
+asymptomatic
+asymptote
+asymptotes
+asymptotic
+asymptotically
+asynchronous
+asynchronously
+at
+atavism
+atavistic
+ate
+atelier
+atheism
+atheist
+atheistic
+atheistically
+atheists
+athena
+athens
+atherosclerosis
+athlete
+athletes
+athletic
+athletically
+athleticism
+athletics
+atlanta
+atlantic
+atlantis
+atlas
+atlases
+atmosphere
+atmospheres
+atmospheric
+atmospherically
+atmospherics
+atoll
+atolls
+atom
+atombomb
+atomic
+atomically
+atomicity
+atomisation
+atomised
+atomistic
+atoms
+atonal
+atonality
+atone
+atoned
+atonement
+atones
+atonic
+atoning
+atop
+atrial
+atrium
+atrocious
+atrociously
+atrocities
+atrocity
+atrophied
+atrophies
+atrophy
+atrophying
+atropine
+attach
+attachable
+attache
+attached
+attaches
+attaching
+attachment
+attachments
+attack
+attacked
+attacker
+attackers
+attacking
+attacks
+attain
+attainable
+attained
+attaining
+attainment
+attainments
+attains
+attempt
+attempted
+attempting
+attempts
+attend
+attendance
+attendances
+attendant
+attendants
+attended
+attendees
+attender
+attenders
+attending
+attends
+attention
+attentional
+attentions
+attentive
+attentively
+attentiveness
+attenuate
+attenuated
+attenuates
+attenuating
+attenuation
+attenuator
+attenuators
+attest
+attestation
+attested
+attesting
+attests
+attic
+attics
+attila
+attire
+attired
+attiring
+attitude
+attitudes
+attitudinal
+attorney
+attorneys
+attract
+attracted
+attracting
+attraction
+attractions
+attractive
+attractively
+attractiveness
+attractor
+attractors
+attracts
+attributable
+attribute
+attributed
+attributes
+attributing
+attribution
+attributions
+attributive
+attrition
+attritional
+attune
+attuned
+atypical
+atypically
+aubergine
+aubergines
+auburn
+auction
+auctioned
+auctioneer
+auctioneers
+auctioning
+auctions
+audacious
+audaciously
+audacity
+audibility
+audible
+audibly
+audience
+audiences
+audio
+audiovisual
+audit
+audited
+auditing
+audition
+auditioned
+auditioning
+auditions
+auditive
+auditor
+auditorium
+auditors
+auditory
+audits
+auger
+augers
+augite
+augment
+augmentation
+augmentations
+augmented
+augmenting
+augments
+augur
+augured
+augurs
+augury
+august
+augustus
+auk
+auks
+aunt
+auntie
+aunties
+aunts
+aupair
+aupairs
+aura
+aural
+aurally
+auras
+aurevoir
+auric
+auriculas
+aurora
+aurorae
+auroral
+auroras
+auspice
+auspices
+auspicious
+auspiciously
+aussie
+aussies
+austere
+austerely
+austerity
+austral
+australian
+austria
+autarchy
+auteur
+authentic
+authentically
+authenticate
+authenticated
+authenticates
+authenticating
+authentication
+authenticator
+authenticators
+authenticity
+author
+authored
+authoress
+authorial
+authoring
+authorisation
+authorisations
+authorise
+authorised
+authorises
+authorising
+authoritarian
+authoritarianism
+authoritarians
+authoritative
+authoritatively
+authorities
+authority
+authors
+authorship
+autism
+autistic
+auto
+autobahn
+autobahns
+autobiographical
+autobiographically
+autobiographies
+autobiography
+autocracies
+autocracy
+autocrat
+autocratic
+autocratically
+autocrats
+autocue
+autograph
+autographed
+autographing
+autographs
+autoignition
+autoimmune
+automat
+automata
+automate
+automated
+automates
+automatic
+automatically
+automatics
+automating
+automation
+automaton
+automats
+automobile
+automorphism
+automorphisms
+automotive
+autonomic
+autonomous
+autonomously
+autonomy
+autopilot
+autopsies
+autopsy
+autosuggestion
+autumn
+autumnal
+autumns
+auxiliaries
+auxiliary
+avail
+availabilities
+availability
+available
+availed
+availing
+avails
+avalanche
+avalanches
+avalanching
+avantgarde
+avarice
+avaricious
+avariciousness
+ave
+avenge
+avenged
+avenger
+avengers
+avenges
+avenging
+avens
+avenue
+avenues
+aver
+average
+averaged
+averagely
+averages
+averaging
+averred
+averring
+avers
+averse
+aversion
+aversions
+aversive
+avert
+averted
+averting
+averts
+avian
+aviaries
+aviary
+aviate
+aviation
+aviator
+aviators
+avid
+avidity
+avidly
+avionics
+avocado
+avoid
+avoidable
+avoidance
+avoided
+avoiding
+avoids
+avoirdupois
+avow
+avowal
+avowals
+avowed
+avowedly
+avowing
+avulsion
+avuncular
+await
+awaited
+awaiting
+awaits
+awake
+awaken
+awakened
+awakening
+awakenings
+awakens
+awakes
+awaking
+award
+awarded
+awarding
+awards
+aware
+awareness
+awash
+away
+awe
+awed
+aweless
+awesome
+awesomely
+awesomeness
+awestruck
+awful
+awfully
+awfulness
+awhile
+awkward
+awkwardest
+awkwardly
+awkwardness
+awls
+awn
+awning
+awnings
+awoke
+awoken
+awol
+awry
+axe
+axed
+axehead
+axeheads
+axeman
+axes
+axial
+axially
+axillary
+axing
+axiom
+axiomatic
+axiomatically
+axiomatising
+axioms
+axis
+axle
+axles
+axolotl
+axon
+axons
+aye
+ayurvedic
+azalea
+azaleas
+azimuth
+azimuthal
+azores
+aztec
+aztecs
+azure
+baa
+baaing
+baal
+babas
+babble
+babbled
+babbler
+babblers
+babbles
+babbling
+babe
+babel
+babes
+babies
+baboon
+baboons
+baby
+babyface
+babyhood
+babying
+babyish
+babylon
+babysit
+babysitter
+babysitters
+babysitting
+baccarat
+bacchus
+bach
+bachelor
+bachelors
+bacilli
+bacillus
+back
+backache
+backbench
+backbencher
+backbenchers
+backbone
+backbones
+backchat
+backdate
+backdated
+backdrop
+backed
+backer
+backers
+backfire
+backfired
+backfires
+backfiring
+backgammon
+background
+backgrounds
+backhand
+backhanded
+backing
+backlash
+backless
+backlight
+backlit
+backlog
+backlogs
+backpack
+backpacker
+backpackers
+backpacking
+backpacks
+backpedal
+backpedalled
+backpedalling
+backrest
+backs
+backseat
+backside
+backsides
+backslapping
+backslash
+backsliding
+backspace
+backspaces
+backspacing
+backstabbing
+backstage
+backstairs
+backstreet
+backstreets
+backstroke
+backtrack
+backtracked
+backtracking
+backtracks
+backup
+backups
+backward
+backwardness
+backwards
+backwash
+backwater
+backwaters
+backwoods
+backwoodsmen
+backyard
+bacon
+bacteria
+bacterial
+bactericidal
+bacteriological
+bacteriologist
+bacteriologists
+bacteriology
+bacteriophage
+bacterium
+bad
+baddy
+bade
+bader
+badge
+badged
+badger
+badgered
+badgering
+badgers
+badges
+badinage
+badlands
+badly
+badminton
+badness
+badtempered
+baffle
+baffled
+bafflement
+baffler
+baffles
+baffling
+bafflingly
+bag
+bagatelle
+bagdad
+bagels
+bagful
+bagfuls
+baggage
+baggages
+bagged
+bagger
+baggier
+baggiest
+bagging
+baggy
+baghdad
+bagman
+bagmen
+bagpipe
+bagpiper
+bagpipes
+bags
+baguette
+baguettes
+bah
+bahamas
+bail
+bailed
+bailiff
+bailiffs
+bailing
+bailiwick
+bailout
+bails
+bait
+baited
+baiters
+baiting
+baitings
+baits
+bake
+baked
+bakehouse
+baker
+bakeries
+bakers
+bakery
+bakes
+baking
+bakings
+baklavas
+balaclava
+balaclavas
+balalaika
+balance
+balanced
+balancer
+balances
+balancing
+balconies
+balcony
+bald
+balder
+balderdash
+baldest
+balding
+baldly
+baldness
+baldy
+bale
+baled
+baleen
+baleful
+balefully
+bales
+bali
+baling
+ball
+ballad
+ballade
+ballades
+ballads
+ballast
+ballasts
+ballbearing
+ballbearings
+ballerina
+ballerinas
+ballet
+balletic
+ballets
+ballistic
+ballistics
+balloon
+ballooned
+ballooning
+balloonist
+balloonists
+balloons
+ballot
+balloted
+balloting
+ballots
+ballpen
+ballpens
+ballpoint
+ballroom
+ballrooms
+balls
+ballyhoo
+balm
+balmier
+balmiest
+balmoral
+balms
+balmy
+baloney
+balsa
+balsam
+baltic
+baluster
+balusters
+balustrade
+balustraded
+balustrades
+bambino
+bamboo
+bamboos
+bamboozle
+bamboozled
+bamboozles
+ban
+banal
+banalities
+banality
+banana
+bananas
+band
+bandage
+bandaged
+bandages
+bandaging
+bandanna
+banded
+bandied
+bandier
+bandiest
+banding
+bandit
+banditry
+bandits
+bandpass
+bands
+bandstand
+bandwagon
+bandwagons
+bandwidth
+bandwidths
+bane
+bang
+banged
+banger
+bangers
+banging
+bangkok
+bangle
+bangles
+bangs
+banish
+banished
+banishes
+banishing
+banishment
+banister
+banisters
+banjo
+bank
+bankable
+banked
+banker
+bankers
+banking
+banknote
+banknotes
+bankrupt
+bankruptcies
+bankruptcy
+bankrupted
+bankrupting
+bankrupts
+banks
+banned
+banner
+banners
+banning
+bannister
+bannisters
+banns
+banquet
+banqueting
+banquets
+bans
+banshee
+banshees
+bantam
+bantams
+bantamweight
+banter
+bantered
+bantering
+baobab
+baobabs
+bap
+baptise
+baptised
+baptises
+baptising
+baptism
+baptismal
+baptisms
+baptist
+baptists
+bar
+barb
+barbarian
+barbarians
+barbaric
+barbarically
+barbarism
+barbarities
+barbarity
+barbarous
+barbarously
+barbecue
+barbecued
+barbecues
+barbed
+barbell
+barbels
+barber
+barbers
+barbie
+barbiturate
+barbiturates
+barbs
+barcode
+bard
+bards
+bare
+bareback
+bared
+barefaced
+barefoot
+barefooted
+barely
+bareness
+barer
+bares
+barest
+bargain
+bargained
+bargainers
+bargaining
+bargains
+barge
+barged
+bargepole
+barges
+barging
+baring
+baritone
+baritones
+barium
+bark
+barked
+barker
+barkers
+barking
+barks
+barky
+barley
+barleycorn
+barleycorns
+barmaid
+barmaids
+barman
+barmen
+barn
+barnacle
+barnacles
+barns
+barnstorming
+barnyard
+barometer
+barometers
+barometric
+baron
+baronage
+baroness
+baronesses
+baronet
+baronets
+baronial
+baronies
+barons
+barony
+baroque
+barrack
+barracking
+barracks
+barracuda
+barrage
+barrages
+barre
+barred
+barrel
+barrelled
+barrels
+barren
+barrenness
+barricade
+barricaded
+barricades
+barrier
+barriers
+barring
+barrister
+barristers
+barrow
+barrows
+bars
+bart
+bartender
+barter
+bartered
+barterer
+bartering
+basal
+basalt
+basaltic
+basalts
+base
+baseball
+baseballs
+based
+baseless
+baseline
+baselines
+basely
+basement
+basements
+baseness
+baser
+bases
+basest
+bash
+bashed
+bashes
+bashful
+bashfully
+bashfulness
+bashing
+basic
+basically
+basics
+basify
+basil
+basilica
+basilicas
+basilisk
+basilisks
+basin
+basinful
+basing
+basins
+basis
+bask
+basked
+basket
+basketball
+basketful
+basketry
+baskets
+basking
+basks
+basque
+basrelief
+basreliefs
+bass
+basses
+bassist
+bassoon
+bassoons
+bastard
+bastardisation
+bastardise
+bastardised
+bastards
+bastardy
+baste
+basted
+basting
+bastion
+bastions
+bat
+batch
+batched
+batches
+batching
+bate
+bated
+bates
+bath
+bathe
+bathed
+bather
+bathers
+bathes
+bathetic
+bathhouse
+bathing
+bathos
+bathrobe
+bathroom
+bathrooms
+baths
+bathtub
+bathtubs
+bathurst
+bathwater
+batik
+batiks
+bating
+batman
+batmen
+baton
+batons
+bats
+batsman
+batsmen
+battalion
+battalions
+batted
+batten
+battened
+battening
+battens
+batter
+battered
+batteries
+battering
+batters
+battery
+batting
+battle
+battleaxe
+battlecry
+battled
+battledress
+battlefield
+battlefields
+battleground
+battlegrounds
+battlement
+battlemented
+battlements
+battler
+battlers
+battles
+battleship
+battleships
+battling
+batty
+bauble
+baubles
+baud
+baulk
+baulked
+baulking
+baulks
+baulky
+bauxite
+bavaria
+bavarian
+bawdier
+bawdiest
+bawdy
+bawl
+bawled
+bawling
+bawls
+bay
+bayed
+baying
+bayonet
+bayonets
+bays
+bazaar
+bazaars
+bazooka
+bazookas
+be
+beach
+beachcomber
+beached
+beaches
+beachhead
+beaching
+beachside
+beachy
+beacon
+beaconed
+beacons
+bead
+beaded
+beadier
+beadiest
+beading
+beadings
+beadle
+beadles
+beads
+beadwork
+beady
+beadyeyed
+beagle
+beagles
+beak
+beaked
+beaker
+beakers
+beaks
+beam
+beamed
+beaming
+beams
+beamy
+bean
+beanbag
+beanery
+beanie
+beanpole
+beans
+beanstalk
+beanstalks
+beany
+bear
+bearable
+bearably
+beard
+bearded
+beardless
+beards
+bearer
+bearers
+bearing
+bearings
+bearish
+bears
+bearskin
+bearskins
+beast
+beastliest
+beastliness
+beastly
+beasts
+beat
+beaten
+beater
+beaters
+beatific
+beatification
+beatifications
+beatified
+beatifies
+beatify
+beating
+beatings
+beatitude
+beatitudes
+beatnik
+beatniks
+beats
+beatup
+beau
+beaus
+beauteous
+beautician
+beauties
+beautified
+beautifier
+beautifiers
+beautifies
+beautiful
+beautifully
+beautify
+beauts
+beauty
+beaux
+beaver
+beavering
+beavers
+bebop
+becalm
+becalmed
+became
+because
+beck
+beckon
+beckoned
+beckoning
+beckons
+becks
+become
+becomes
+becoming
+bed
+bedazzle
+bedazzled
+bedbug
+bedbugs
+bedchamber
+bedclothes
+bedcover
+bedded
+bedder
+bedding
+beddings
+bedecked
+bedecks
+bedevil
+bedevilled
+bedevilment
+bedevils
+bedfellow
+bedfellows
+bedlam
+bedlinen
+bedmaker
+bedmakers
+bedouin
+bedouins
+bedpan
+bedpans
+bedpost
+bedraggled
+bedridden
+bedrock
+bedroom
+bedrooms
+beds
+bedsheets
+bedside
+bedsit
+bedsitter
+bedsitters
+bedsore
+bedsores
+bedspread
+bedspreads
+bedstead
+bedsteads
+bedtime
+bedtimes
+bee
+beech
+beeches
+beechnut
+beechwood
+beef
+beefburger
+beefburgers
+beefcake
+beefeater
+beefier
+beefiest
+beefs
+beefy
+beehive
+beehives
+beekeepers
+beeline
+beelines
+been
+beep
+beeper
+beeping
+beeps
+beer
+beermat
+beermats
+beers
+beery
+bees
+beeswax
+beet
+beetle
+beetles
+beetroot
+beets
+befall
+befallen
+befalling
+befalls
+befell
+befit
+befits
+befitted
+befitting
+befog
+before
+beforehand
+befoul
+befriend
+befriended
+befriending
+befriends
+befuddle
+befuddled
+befuddling
+beg
+began
+begat
+beget
+begets
+begetting
+beggar
+beggared
+beggarly
+beggars
+beggary
+begged
+begging
+beggings
+begin
+beginner
+beginners
+beginning
+beginnings
+begins
+begone
+begonias
+begot
+begotten
+begrudge
+begrudged
+begrudgingly
+begs
+beguile
+beguiled
+beguilement
+beguiling
+begun
+behalf
+behave
+behaved
+behaves
+behaving
+behaviour
+behavioural
+behaviourally
+behaviourism
+behaviourist
+behaviourists
+behaviours
+behead
+beheaded
+beheading
+beheld
+behemoth
+behest
+behind
+behindhand
+behinds
+behold
+beholden
+beholder
+beholders
+beholding
+beholds
+behoved
+behoves
+beige
+beijing
+being
+beings
+beirut
+bejewel
+bejewelled
+bel
+belabour
+belated
+belatedly
+belatedness
+belay
+belayed
+belays
+belch
+belched
+belches
+belching
+beleaguered
+belfast
+belfries
+belfry
+belgian
+belgians
+belgium
+belgrade
+belie
+belied
+belief
+beliefs
+belies
+believability
+believable
+believably
+believe
+believed
+believer
+believers
+believes
+believing
+belike
+belittle
+belittled
+belittles
+belittling
+bell
+belladonna
+bellbottoms
+belle
+belled
+belles
+bellicose
+bellicosity
+bellies
+belligerence
+belligerent
+belligerently
+belligerents
+bellow
+bellowed
+bellowing
+bellows
+bells
+belly
+bellyful
+belong
+belonged
+belonging
+belongings
+belongs
+beloved
+below
+belt
+belted
+belting
+beltings
+belts
+belying
+bemoan
+bemoaned
+bemoaning
+bemoans
+bemuse
+bemused
+bemusedly
+bemusement
+ben
+bench
+benches
+benchmark
+benchmarking
+benchmarks
+bend
+bendable
+bended
+bender
+benders
+bending
+bendings
+bends
+beneath
+benediction
+benedictions
+benefaction
+benefactions
+benefactor
+benefactors
+benefactress
+benefice
+beneficence
+beneficent
+beneficial
+beneficially
+beneficiaries
+beneficiary
+benefit
+benefited
+benefiting
+benefits
+benelux
+benevolence
+benevolent
+benevolently
+bengal
+benighted
+benightedly
+benign
+benignity
+benignly
+benjamin
+bent
+benzene
+bequeath
+bequeathed
+bequeathing
+bequest
+bequests
+berate
+berated
+berating
+berber
+bereave
+bereaved
+bereavement
+bereavements
+bereaving
+bereft
+beret
+berets
+bergs
+berk
+berlin
+berliner
+bermuda
+bern
+berries
+berry
+berserk
+berth
+berthed
+berths
+beryl
+beryllium
+beseech
+beseeched
+beseeches
+beseeching
+beseechingly
+beset
+besets
+besetting
+beside
+besides
+besiege
+besieged
+besieging
+besmirch
+besot
+besotted
+bespattered
+bespeak
+bespeaking
+bespeaks
+bespectacled
+bespoke
+best
+bestial
+bestiality
+bestiary
+bestir
+bestirred
+bestirring
+bestknown
+bestow
+bestowal
+bestowals
+bestowed
+bestowing
+bestows
+bestride
+bestrode
+bests
+bestseller
+bestsellers
+bestselling
+bet
+beta
+betel
+betide
+betimes
+betoken
+betokened
+betokens
+betray
+betrayal
+betrayals
+betrayed
+betrayer
+betrayers
+betraying
+betrays
+betroth
+betrothal
+betrothed
+betroths
+bets
+betted
+better
+bettered
+bettering
+betterment
+betters
+betting
+between
+betwixt
+bevel
+bevelled
+bevelling
+bevels
+beverage
+beverages
+bevvy
+bevy
+bewail
+bewailed
+bewailing
+bewails
+beware
+bewhiskered
+bewilder
+bewildered
+bewildering
+bewilderingly
+bewilderment
+bewilders
+bewitch
+bewitched
+bewitching
+beyond
+biannual
+bias
+biased
+biases
+biasing
+biassed
+biasses
+biassing
+bib
+bible
+bibles
+biblical
+biblically
+biblicists
+bibliographic
+bibliographical
+bibliographies
+bibliography
+bibliophile
+bibs
+bicameral
+bicarb
+bicarbonate
+bicentenary
+bicentennial
+biceps
+bicker
+bickering
+bickerings
+bicycle
+bicycled
+bicycles
+bicycling
+bid
+bidden
+bidder
+bidders
+bidding
+biddings
+bide
+bided
+bides
+bidet
+biding
+bidirectional
+bids
+biennial
+biennials
+bier
+bifocal
+bifocals
+bifurcated
+bifurcation
+bifurcations
+big
+bigamist
+bigamists
+bigamous
+bigamy
+bigapple
+bigben
+bigger
+biggest
+biggish
+bigheads
+bigness
+bigot
+bigoted
+bigotry
+bigots
+bijou
+bijoux
+bike
+biker
+bikes
+biking
+bikini
+bikinis
+bilabial
+bilateral
+bilaterally
+bile
+biles
+bilge
+bilges
+bilharzia
+biliary
+bilingual
+bilingualism
+bilinguals
+bilious
+bill
+billable
+billboard
+billboards
+billed
+billet
+billeted
+billeting
+billets
+billiard
+billiards
+billing
+billings
+billion
+billionaire
+billionaires
+billions
+billionth
+billow
+billowed
+billowing
+billows
+billowy
+billposters
+bills
+billy
+biltong
+bimbo
+bimodal
+bimonthly
+bin
+binaries
+binary
+bind
+binder
+binders
+bindery
+binding
+bindings
+binds
+bindweed
+bing
+binge
+bingo
+binnacle
+binocular
+binoculars
+binodal
+binomial
+bins
+biochemical
+biochemically
+biochemist
+biochemistry
+biochemists
+biodegradable
+biodiversity
+bioengineering
+biofeedback
+biogeographical
+biographer
+biographers
+biographical
+biographically
+biographies
+biography
+biological
+biologically
+biologist
+biologists
+biology
+biomass
+biomedical
+biometric
+biometrics
+biometry
+biomorph
+bionic
+bionics
+biophysical
+biopsies
+biopsy
+biorhythm
+biorhythms
+bioscope
+biosphere
+biospheres
+biosynthesis
+biota
+biotechnological
+biotechnologist
+biotechnologists
+biotechnology
+biotic
+bipartisan
+bipartite
+biped
+bipedal
+bipedalism
+bipeds
+biplane
+biplanes
+bipolar
+birch
+birched
+birches
+bird
+birdbath
+birdbaths
+birdcage
+birdcages
+birdie
+birdies
+birds
+birdsong
+birdtables
+birdwatcher
+birdwatchers
+birdwatching
+birefringence
+birefringent
+birth
+birthday
+birthdays
+birthmark
+birthmarks
+birthplace
+birthrate
+birthright
+birthrights
+births
+biscuit
+biscuits
+biscuity
+bisect
+bisected
+bisecting
+bisects
+bisexual
+bisexuality
+bisexuals
+bishop
+bishopric
+bishoprics
+bishops
+bismarck
+bismuth
+bison
+bisons
+bissau
+bistable
+bistro
+bit
+bitch
+bitches
+bitchiness
+bitching
+bitchy
+bite
+biter
+biters
+bites
+biting
+bitingly
+bitmap
+bits
+bitten
+bitter
+bitterest
+bitterly
+bittern
+bitterness
+bitters
+bittersweet
+bittiness
+bitts
+bitty
+bitumen
+bituminous
+bivalve
+bivalves
+bivouac
+bivouacked
+bivouacs
+biweekly
+biz
+bizarre
+bizarrely
+bizarreness
+blab
+blabbed
+blabber
+blabbering
+blabs
+black
+blackball
+blackballed
+blackballing
+blackberries
+blackberry
+blackbird
+blackbirds
+blackboard
+blackboards
+blackcurrant
+blackcurrants
+blacked
+blacken
+blackened
+blackening
+blackens
+blacker
+blackest
+blackfly
+blackguard
+blackhead
+blackheads
+blacking
+blackish
+blackjack
+blackleg
+blacklist
+blacklisted
+blacklisting
+blacklists
+blackly
+blackmail
+blackmailed
+blackmailer
+blackmailers
+blackmailing
+blackmails
+blackness
+blackout
+blackouts
+blacks
+blacksea
+blackshirts
+blacksmith
+blacksmiths
+blackthorn
+bladder
+bladders
+blade
+bladed
+blades
+blah
+blame
+blameable
+blamed
+blameful
+blameless
+blamelessly
+blamelessness
+blames
+blameworthy
+blaming
+blanch
+blanched
+blanching
+blancmange
+bland
+blandest
+blandishments
+blandly
+blandness
+blank
+blanked
+blanker
+blanket
+blanketed
+blanketing
+blankets
+blanking
+blankly
+blankness
+blanks
+blare
+blared
+blares
+blaring
+blase
+blaspheme
+blasphemed
+blasphemer
+blasphemers
+blasphemies
+blaspheming
+blasphemous
+blasphemously
+blasphemy
+blast
+blasted
+blaster
+blasters
+blasting
+blasts
+blat
+blatancy
+blatant
+blatantly
+blaze
+blazed
+blazer
+blazers
+blazes
+blazing
+bleach
+bleached
+bleacher
+bleachers
+bleaches
+bleaching
+bleak
+bleaker
+bleakest
+bleakly
+bleakness
+blearily
+bleary
+blearyeyed
+bleat
+bleated
+bleating
+bleats
+bled
+bleed
+bleeder
+bleeders
+bleeding
+bleeds
+bleep
+bleeped
+bleeper
+bleeping
+bleeps
+blemish
+blemished
+blemishes
+blench
+blenched
+blend
+blended
+blender
+blenders
+blending
+blends
+blesbok
+bless
+blessed
+blessedness
+blesses
+blessing
+blessings
+blew
+blight
+blighted
+blighting
+blights
+blimp
+blimps
+blind
+blinded
+blinder
+blindest
+blindfold
+blindfolded
+blindfolds
+blinding
+blindingly
+blindly
+blindness
+blinds
+blink
+blinked
+blinker
+blinkered
+blinkering
+blinkers
+blinking
+blinks
+blip
+blips
+bliss
+blissful
+blissfully
+blister
+blistered
+blistering
+blisteringly
+blisters
+blithe
+blithely
+blithering
+blitz
+blitzkrieg
+blizzard
+blizzards
+bloat
+bloated
+bloating
+blob
+blobs
+bloc
+block
+blockade
+blockaded
+blockades
+blockading
+blockage
+blockages
+blockbuster
+blockbusters
+blockbusting
+blocked
+blockers
+blockhead
+blockheads
+blocking
+blockish
+blocks
+blocky
+blocs
+bloke
+blokes
+blond
+blonde
+blonder
+blondes
+blondest
+blondhaired
+blonds
+blood
+bloodbath
+bloodcurdling
+blooded
+bloodhound
+bloodhounds
+bloodied
+bloodier
+bloodies
+bloodiest
+bloodily
+bloodless
+bloodlessness
+bloodletting
+bloodline
+bloodlust
+bloodred
+bloods
+bloodshed
+bloodshot
+bloodsport
+bloodsports
+bloodstain
+bloodstained
+bloodstains
+bloodstock
+bloodstone
+bloodstream
+bloodsuckers
+bloodthirstier
+bloodthirstiest
+bloodthirsty
+bloodworm
+bloody
+bloodymindedness
+bloom
+bloomed
+bloomer
+bloomers
+blooming
+blooms
+bloomy
+blossom
+blossomed
+blossoming
+blossoms
+blot
+blotch
+blotched
+blotches
+blotchy
+blots
+blotted
+blotter
+blotting
+blouse
+blouses
+blow
+blowdried
+blowdrying
+blowed
+blower
+blowers
+blowfly
+blowing
+blowlamp
+blown
+blowpipe
+blowpipes
+blows
+blowtorch
+blowtorches
+blowup
+blubber
+blubbered
+blubbering
+bludgeon
+bludgeoned
+bludgeoning
+bludgeons
+blue
+bluebell
+bluebells
+blueberries
+blueberry
+bluebird
+bluebirds
+blueblooded
+bluebottle
+bluebottles
+bluecollar
+blueish
+bluemoon
+blueness
+bluenile
+blueprint
+blueprints
+bluer
+blues
+bluest
+bluesy
+bluff
+bluffed
+bluffer
+bluffers
+bluffing
+bluffs
+bluish
+blunder
+blunderbuss
+blundered
+blundering
+blunderings
+blunders
+blunt
+blunted
+blunter
+bluntest
+blunting
+bluntly
+bluntness
+blunts
+blur
+blurb
+blurbs
+blurred
+blurring
+blurry
+blurs
+blurt
+blurted
+blurting
+blurts
+blush
+blushed
+blusher
+blushers
+blushes
+blushing
+blushingly
+bluster
+blustered
+blustering
+blusters
+blustery
+bmus
+boa
+boar
+board
+boarded
+boarder
+boarders
+boardgames
+boarding
+boardings
+boardroom
+boardrooms
+boards
+boars
+boas
+boast
+boasted
+boaster
+boasters
+boastful
+boastfully
+boastfulness
+boasting
+boasts
+boat
+boated
+boater
+boaters
+boathouse
+boathouses
+boating
+boatload
+boatman
+boatmen
+boats
+boatswain
+bob
+bobbed
+bobbies
+bobbin
+bobbing
+bobbins
+bobble
+bobbles
+bobby
+bobcat
+bobs
+bobsled
+bobtail
+bobtails
+bode
+boded
+bodes
+bodice
+bodices
+bodied
+bodies
+bodiless
+bodily
+boding
+bodkin
+body
+bodybuilding
+bodyguard
+bodyguards
+bodywork
+boer
+boers
+boerwar
+boffin
+boffins
+bog
+bogey
+bogeyman
+bogeymen
+bogeys
+bogged
+boggiest
+bogging
+boggle
+boggled
+boggles
+boggling
+bogglingly
+boggy
+bogies
+bogs
+bogus
+bogy
+bohemian
+boil
+boiled
+boiler
+boilermakers
+boilers
+boiling
+boils
+boisterous
+boisterously
+bola
+bold
+bolder
+boldest
+boldface
+boldly
+boldness
+bole
+bolero
+boleyn
+bolivia
+bollard
+bollards
+bologna
+bolster
+bolstered
+bolstering
+bolsters
+bolt
+bolted
+bolting
+bolts
+bomb
+bombard
+bombarded
+bombardier
+bombarding
+bombardment
+bombardments
+bombards
+bombast
+bombastic
+bombasts
+bombay
+bombed
+bomber
+bombers
+bombing
+bombings
+bombs
+bombshell
+bonanza
+bonanzas
+bonbon
+bonbons
+bond
+bondage
+bonded
+bondholders
+bonding
+bondings
+bonds
+bone
+boned
+boneless
+bonemeal
+bones
+boney
+bonfire
+bonfires
+bong
+bongs
+bonier
+boniest
+bonn
+bonnet
+bonneted
+bonnets
+bonnie
+bonniest
+bonny
+bonobo
+bonsai
+bonus
+bonuses
+bony
+boo
+boobies
+booboo
+booby
+boobytrap
+boobytrapped
+boobytraps
+booed
+boohoo
+booing
+book
+bookable
+bookbinder
+bookbinders
+bookbinding
+bookcase
+bookcases
+booked
+bookends
+bookers
+bookie
+bookies
+booking
+bookings
+bookish
+bookkeeper
+bookkeeping
+booklet
+booklets
+bookmaker
+bookmakers
+bookmaking
+bookmark
+bookmarks
+books
+bookseller
+booksellers
+bookshelf
+bookshelves
+bookshop
+bookshops
+bookstall
+bookstalls
+bookwork
+bookworm
+bookworms
+boom
+boomed
+boomer
+boomerang
+boomeranging
+boomerangs
+booming
+booms
+boon
+boons
+boor
+boorish
+boorishly
+boorishness
+boors
+boos
+boost
+boosted
+booster
+boosters
+boosting
+boosts
+boot
+booted
+bootees
+booth
+booths
+booting
+bootlace
+bootlaces
+bootleg
+bootless
+bootprints
+boots
+bootstrap
+bootstraps
+booty
+booze
+boozed
+boozer
+boozers
+boozes
+bop
+bops
+boracic
+borate
+borates
+borax
+bordeaux
+border
+bordered
+borderer
+bordering
+borderline
+borders
+bore
+boreal
+bored
+boredom
+borehole
+boreholes
+borer
+borers
+bores
+boring
+boringly
+born
+bornagain
+borne
+borneo
+boron
+borough
+boroughs
+borrow
+borrowable
+borrowed
+borrower
+borrowers
+borrowing
+borrowings
+borrows
+borstal
+borstals
+bosnia
+bosom
+bosoms
+boson
+bosons
+boss
+bossed
+bosses
+bossier
+bossiest
+bossiness
+bossing
+bossy
+boston
+bosun
+botanic
+botanical
+botanically
+botanist
+botanists
+botany
+botch
+botched
+both
+bother
+bothered
+bothering
+bothers
+bothersome
+bothy
+botswana
+bottle
+bottled
+bottlefed
+bottlefeed
+bottleneck
+bottlenecks
+bottler
+bottles
+bottling
+bottom
+bottomed
+bottoming
+bottomless
+bottommost
+bottoms
+botulism
+boudoir
+boudoirs
+bouffant
+bougainvillea
+bough
+boughs
+bought
+boulder
+boulders
+boulevard
+boulevards
+bounce
+bounced
+bouncer
+bouncers
+bounces
+bouncier
+bounciest
+bouncing
+bouncy
+bound
+boundaries
+boundary
+bounded
+boundedness
+bounder
+bounders
+bounding
+boundless
+bounds
+bounteous
+bounties
+bountiful
+bountifully
+bounty
+bouquet
+bouquets
+bourbon
+bourbons
+bourgeois
+bourgeoisie
+bout
+boutique
+boutiques
+bouts
+bovine
+bow
+bowdlerisation
+bowdlerised
+bowdlerising
+bowed
+bowel
+bowels
+bower
+bowers
+bowie
+bowing
+bowl
+bowlder
+bowled
+bowler
+bowlers
+bowlines
+bowling
+bowls
+bowman
+bowmen
+bows
+bowsprit
+bowstring
+box
+boxed
+boxer
+boxers
+boxes
+boxful
+boxing
+boxoffice
+boxtops
+boxwood
+boxy
+boy
+boycott
+boycotted
+boycotting
+boycotts
+boyfriend
+boyfriends
+boyhood
+boyish
+boyishly
+boys
+boyscout
+bra
+brabble
+brabbled
+brabbles
+brace
+braced
+bracelet
+bracelets
+bracer
+braces
+brachiopods
+bracing
+bracingly
+bracken
+bracket
+bracketed
+bracketing
+brackets
+brackish
+bradawl
+bradycardia
+brag
+braggart
+braggarts
+bragged
+bragging
+brags
+brahman
+brahms
+braid
+braided
+braiding
+braids
+brail
+braille
+brain
+braincell
+braincells
+brainchild
+braindamaged
+braindead
+brainier
+brainless
+brainlessly
+brainlessness
+brainpower
+brains
+brainstorm
+brainstorming
+brainstorms
+brainteasers
+brainteasing
+brainwash
+brainwashed
+brainwashing
+brainwave
+brainwaves
+brainy
+braise
+braised
+brake
+brake
+braked
+brakes
+braking
+bramble
+brambles
+bran
+branch
+branched
+branches
+branching
+branchy
+brand
+branded
+brandies
+branding
+brandish
+brandished
+brandishes
+brandishing
+brands
+brandy
+brans
+bras
+brash
+brasher
+brashly
+brashness
+brasiers
+brasil
+brasilia
+brass
+brasserie
+brasses
+brassiere
+brassy
+brat
+brats
+bratty
+bravado
+brave
+braved
+bravely
+braver
+bravery
+braves
+bravest
+braving
+bravo
+braw
+brawl
+brawled
+brawler
+brawling
+brawls
+brawn
+brawnier
+brawniest
+brawny
+bray
+brayed
+braying
+brays
+braze
+brazen
+brazened
+brazenly
+brazenness
+brazier
+braziers
+brazil
+brazing
+breach
+breached
+breaches
+breaching
+bread
+breadandbutter
+breadboard
+breadboards
+breadcrumbs
+breaded
+breadfruit
+breadline
+breads
+breadth
+breadths
+breadwinner
+breadwinners
+break
+breakable
+breakage
+breakages
+breakaway
+breakaways
+breakdown
+breakdowns
+breaker
+breakers
+breakfast
+breakfasted
+breakfasting
+breakfasts
+breakin
+breaking
+breakins
+breakneck
+breakout
+breakpoint
+breakpoints
+breaks
+breakthrough
+breakthroughs
+breakup
+breakups
+breakwater
+breakwaters
+bream
+breast
+breastbone
+breasted
+breastfeed
+breastfeeding
+breasting
+breastplate
+breasts
+breaststroke
+breath
+breathable
+breathalysed
+breathalyser
+breathalysers
+breathe
+breathed
+breather
+breathes
+breathing
+breathings
+breathingspace
+breathless
+breathlessly
+breathlessness
+breaths
+breathtaking
+breathtakingly
+breathy
+breccias
+brecciated
+bred
+breech
+breeches
+breed
+breeder
+breeders
+breeding
+breeds
+breeze
+breezed
+breezes
+breezier
+breeziest
+breezily
+breezing
+breezy
+brethren
+breton
+breviary
+brevity
+brew
+brewage
+brewed
+brewer
+breweries
+brewers
+brewery
+brewing
+brews
+briar
+bribe
+bribed
+briber
+bribers
+bribery
+bribes
+bribing
+bricabrac
+brick
+brickbat
+brickbats
+bricked
+bricking
+bricklayer
+bricklayers
+bricklaying
+brickred
+bricks
+brickwork
+bridal
+bridals
+bride
+bridegroom
+bridegrooms
+brides
+bridesmaid
+bridesmaids
+bridge
+bridgebuilding
+bridged
+bridgehead
+bridges
+bridging
+bridle
+bridled
+bridles
+bridleway
+bridleways
+bridling
+brief
+briefcase
+briefcases
+briefed
+briefer
+briefest
+briefing
+briefings
+briefly
+briefs
+briers
+brig
+brigade
+brigades
+brigadier
+brigadiers
+brigand
+brigands
+bright
+brighten
+brightened
+brightening
+brightens
+brighter
+brightest
+brighteyed
+brightly
+brightness
+brightnesses
+brighton
+brilliance
+brilliancy
+brilliant
+brilliantly
+brim
+brimmed
+brimming
+brims
+brimstone
+brindled
+brine
+brines
+bring
+bringer
+bringing
+brings
+brink
+brinkmanship
+brinks
+briny
+brio
+brioche
+briquettes
+brisbane
+brisk
+brisker
+briskest
+briskly
+briskness
+bristle
+bristled
+bristles
+bristling
+bristly
+brit
+britain
+british
+britons
+brittle
+brittleness
+broach
+broached
+broaches
+broaching
+broad
+broadband
+broadcast
+broadcaster
+broadcasters
+broadcasting
+broadcasts
+broaden
+broadened
+broadening
+broadens
+broader
+broadest
+broadleaved
+broadloom
+broadly
+broadminded
+broadmindedness
+broadness
+broadsheet
+broadsheets
+broadside
+broadsides
+broadsword
+broadswords
+broadway
+brocade
+brocaded
+broccoli
+brochure
+brochures
+brogue
+brogues
+broil
+broiled
+broiler
+broiling
+broils
+broke
+broken
+brokenhearted
+brokenly
+broker
+brokerage
+brokered
+brokers
+broking
+bromide
+bromides
+bromine
+bronchi
+bronchial
+bronchitis
+bronco
+brontosaurus
+bronze
+bronzed
+bronzes
+brooch
+brooches
+brood
+brooded
+broodiness
+brooding
+broodingly
+broods
+broody
+brook
+brooklyn
+brooks
+broom
+brooms
+broomstick
+broomsticks
+broth
+brothel
+brothels
+brother
+brotherhood
+brotherinlaw
+brotherly
+brothers
+brothersinlaw
+broths
+brought
+brouhaha
+brow
+browbeat
+browbeaten
+browbeating
+brown
+browned
+browner
+brownest
+brownie
+brownies
+browning
+brownish
+brownness
+browns
+brows
+browse
+browsed
+browser
+browsers
+browses
+browsing
+bruise
+bruised
+bruiser
+bruisers
+bruises
+bruising
+brunch
+brunches
+brunei
+brunet
+brunets
+brunette
+brunettes
+brunt
+brunts
+brush
+brushed
+brushes
+brushing
+brushoff
+brushup
+brushwood
+brushwork
+brushy
+brusque
+brusquely
+brusqueness
+brussels
+brutal
+brutalisation
+brutalise
+brutalised
+brutalising
+brutalism
+brutalities
+brutality
+brutally
+brute
+brutes
+brutish
+brutishness
+brutus
+bub
+bubble
+bubbled
+bubblegum
+bubbles
+bubblier
+bubbliest
+bubbling
+bubbly
+bubonic
+buccaneer
+buccaneering
+buccaneers
+buck
+bucked
+bucket
+bucketful
+bucketfuls
+bucketing
+buckets
+bucking
+buckle
+buckled
+buckler
+bucklers
+buckles
+buckling
+buckminsterfullerene
+buckpassing
+bucks
+buckshot
+buckskin
+bucolic
+bud
+budapest
+budded
+buddhism
+buddhist
+buddies
+budding
+buddings
+buddy
+budge
+budged
+budgerigar
+budget
+budgetary
+budgeted
+budgeting
+budgets
+budgie
+budgies
+budging
+buds
+buff
+buffalo
+buffer
+buffered
+buffering
+buffers
+buffet
+buffeted
+buffeting
+buffetings
+buffets
+buffing
+buffoon
+buffoonery
+buffoons
+buffs
+bug
+bugbear
+bugbears
+bugeyed
+bugged
+bugger
+buggered
+buggering
+buggers
+buggery
+buggies
+bugging
+buggy
+bugle
+bugler
+buglers
+bugles
+bugs
+build
+builder
+builders
+building
+buildings
+builds
+buildup
+buildups
+built
+builtin
+builtup
+bulb
+bulbous
+bulbs
+bulgaria
+bulge
+bulged
+bulges
+bulging
+bulgy
+bulimia
+bulimic
+bulk
+bulkhead
+bulkheads
+bulkier
+bulkiest
+bulks
+bulky
+bull
+bulldog
+bulldogs
+bulldoze
+bulldozed
+bulldozer
+bulldozers
+bulldozing
+bullet
+bulletin
+bulletins
+bulletproof
+bullets
+bullfight
+bullfighting
+bullfinch
+bullfrog
+bullied
+bullies
+bullion
+bullish
+bullock
+bullocks
+bulls
+bully
+bullying
+bulrushes
+bulwark
+bulwarks
+bum
+bumble
+bumbled
+bumbler
+bumblers
+bumbles
+bumbling
+bump
+bumped
+bumper
+bumpers
+bumpier
+bumpiest
+bumping
+bumpkin
+bumpkins
+bumps
+bumptious
+bumpy
+bums
+bun
+bunch
+bunched
+bunches
+bunching
+bundle
+bundled
+bundles
+bundling
+bung
+bungalow
+bungalows
+bungee
+bungle
+bungled
+bungler
+bunglers
+bungles
+bungling
+bunion
+bunions
+bunk
+bunked
+bunker
+bunkered
+bunkers
+bunks
+bunkum
+bunnies
+bunny
+buns
+bunting
+bunyan
+buoy
+buoyancy
+buoyant
+buoyantly
+buoyed
+buoys
+bur
+burble
+burbled
+burbles
+burbling
+burden
+burdened
+burdening
+burdens
+burdensome
+burdock
+bureau
+bureaucracies
+bureaucracy
+bureaucrat
+bureaucratic
+bureaucratically
+bureaucratisation
+bureaucrats
+bureaus
+bureaux
+burette
+burg
+burgeon
+burgeoned
+burgeoning
+burgeons
+burger
+burgers
+burghers
+burglar
+burglaries
+burglars
+burglary
+burgle
+burgled
+burgles
+burgling
+burgundy
+burial
+burials
+buried
+buries
+burlesque
+burlesquing
+burlier
+burliest
+burly
+burma
+burmese
+burn
+burned
+burner
+burners
+burning
+burnings
+burnished
+burnishing
+burns
+burnt
+burp
+burped
+burping
+burps
+burr
+burrow
+burrowed
+burrowing
+burrows
+burs
+bursar
+bursaries
+bursars
+bursary
+burst
+bursted
+bursting
+bursts
+burundi
+bury
+burying
+bus
+buses
+bush
+bushel
+bushels
+bushes
+bushfire
+bushier
+bushiest
+bushiness
+bushing
+bushland
+bushman
+bushmen
+bushy
+busied
+busier
+busies
+busiest
+busily
+business
+businesses
+businesslike
+businessman
+businessmen
+businesswoman
+busk
+busker
+buskers
+busking
+busman
+busmen
+bussed
+bussing
+bust
+bustard
+bustards
+busted
+busters
+bustier
+busting
+bustle
+bustled
+bustles
+bustling
+busts
+busty
+busy
+busybodies
+busybody
+busying
+but
+butane
+butcher
+butchered
+butchering
+butchers
+butchery
+butler
+butlers
+buts
+butt
+butted
+butter
+buttercup
+buttercups
+buttered
+butterfat
+butterflies
+butterfly
+buttering
+buttermilk
+butters
+butterscotch
+buttery
+butting
+buttock
+buttocks
+button
+buttoned
+buttonhole
+buttonholed
+buttonholes
+buttoning
+buttons
+buttress
+buttressed
+buttresses
+buttressing
+butts
+buxom
+buy
+buyer
+buyers
+buying
+buyout
+buys
+buzz
+buzzard
+buzzards
+buzzed
+buzzer
+buzzers
+buzzes
+buzzing
+buzzwords
+by
+bye
+byebye
+byelaw
+byelaws
+byelection
+byelections
+byes
+bygone
+bygones
+bylaw
+bylaws
+byline
+bypass
+bypassed
+bypasses
+bypassing
+bypath
+bypaths
+byproduct
+byproducts
+bystander
+bystanders
+byte
+bytes
+byway
+byways
+byword
+cab
+cabal
+cabals
+cabaret
+cabarets
+cabbage
+cabbages
+cabby
+cabin
+cabinet
+cabinetmaker
+cabinets
+cabins
+cable
+cabled
+cables
+cableway
+cabling
+cabman
+cabmen
+caboodle
+caboose
+cabriolet
+cabs
+cacao
+cache
+cached
+caches
+cachet
+caching
+cackle
+cackled
+cackles
+cackling
+cacophonous
+cacophony
+cacti
+cactus
+cactuses
+cad
+cadaver
+cadaverous
+cadavers
+caddie
+caddied
+caddies
+caddy
+caddying
+cade
+cadence
+cadences
+cadenza
+cadenzas
+cadet
+cadets
+cadge
+cadged
+cadger
+cadges
+cadmium
+cads
+caesar
+cafe
+cafes
+cafeteria
+cafeterias
+caftan
+caftans
+cage
+caged
+cages
+cagey
+cagiest
+caging
+cagoule
+cagoules
+cagy
+cahoots
+caiman
+caimans
+cain
+cairn
+cairns
+cairo
+cajole
+cajoled
+cajoling
+cake
+caked
+cakes
+caking
+calamities
+calamitous
+calamitously
+calamity
+calcareous
+calcification
+calcified
+calcify
+calcite
+calcium
+calculable
+calculate
+calculated
+calculatedly
+calculates
+calculating
+calculation
+calculations
+calculative
+calculator
+calculators
+calculus
+calcutta
+caldera
+caldron
+caldrons
+calendar
+calendars
+calf
+calibrate
+calibrated
+calibrates
+calibrating
+calibration
+calibrations
+calibrator
+calibrators
+calibre
+calico
+calif
+california
+caliper
+calipers
+caliph
+call
+callable
+called
+caller
+callers
+callgirl
+callgirls
+calligrapher
+calligraphic
+calligraphy
+calling
+callings
+calliper
+callipers
+callisthenics
+callous
+calloused
+callously
+callousness
+callow
+callowness
+calls
+callup
+callus
+calm
+calmed
+calmer
+calmest
+calming
+calmly
+calmness
+calms
+calorie
+calories
+calorific
+calorimeter
+calorimeters
+calorimetry
+calory
+calumniate
+calumnies
+calumny
+calvary
+calve
+calves
+calvin
+calving
+calypso
+cam
+camaraderie
+camber
+cambodia
+camcorder
+camcorders
+came
+camel
+camelhair
+camelot
+camels
+cameo
+camera
+cameraman
+cameramen
+cameras
+camerawork
+camisole
+camomile
+camouflage
+camouflaged
+camouflages
+camouflaging
+camp
+campaign
+campaigned
+campaigner
+campaigners
+campaigning
+campaigns
+campanile
+campanological
+campanologist
+campanology
+camped
+camper
+campers
+campfire
+campfires
+camphor
+camping
+camps
+campsite
+campsites
+campus
+campuses
+cams
+camshaft
+can
+canaan
+canada
+canadian
+canal
+canalisation
+canals
+canape
+canapes
+canard
+canaries
+canary
+canberra
+cancan
+cancel
+cancellation
+cancellations
+cancelled
+cancelling
+cancels
+cancer
+cancerous
+cancers
+candelabra
+candelas
+candid
+candidacy
+candidate
+candidates
+candidature
+candidatures
+candidly
+candies
+candle
+candlelight
+candlelit
+candlepower
+candles
+candlestick
+candlesticks
+candour
+candy
+cane
+caned
+canes
+canine
+canines
+caning
+canings
+canister
+canisters
+cannabis
+canned
+cannel
+cannery
+cannes
+cannibal
+cannibalise
+cannibalised
+cannibalising
+cannibalism
+cannibalistic
+cannibals
+cannily
+canning
+cannon
+cannonball
+cannonballs
+cannoned
+cannoning
+cannons
+cannot
+cannula
+canny
+canoe
+canoed
+canoeing
+canoeist
+canoeists
+canoes
+canon
+canonic
+canonical
+canonically
+canonisation
+canonise
+canonised
+canonry
+canons
+canopener
+canopied
+canopies
+canopy
+cans
+cant
+cantaloupe
+cantankerous
+cantata
+cantatas
+canted
+canteen
+canteens
+canter
+cantered
+cantering
+canters
+canticle
+canticles
+cantilever
+cantilevered
+canton
+cantons
+cantor
+canvas
+canvased
+canvases
+canvass
+canvassed
+canvasser
+canvassers
+canvasses
+canvassing
+canyon
+canyons
+cap
+capabilities
+capability
+capable
+capably
+capacious
+capacitance
+capacities
+capacitive
+capacitor
+capacitors
+capacity
+caparisoned
+cape
+caped
+caper
+capered
+capering
+capers
+capes
+capetown
+capillaries
+capillary
+capita
+capital
+capitalisation
+capitalise
+capitalised
+capitalises
+capitalising
+capitalism
+capitalist
+capitalistic
+capitalists
+capitally
+capitals
+capitate
+capitation
+capitol
+capitulate
+capitulated
+capitulates
+capitulating
+capitulation
+capped
+capping
+cappuccino
+capri
+caprice
+caprices
+capricious
+capriciously
+capriciousness
+capriole
+capris
+caps
+capsize
+capsized
+capsizes
+capsizing
+capstan
+capstans
+capsule
+capsules
+captain
+captaincy
+captained
+captaining
+captains
+caption
+captioned
+captions
+captious
+captivate
+captivated
+captivating
+captivation
+captive
+captives
+captivity
+captor
+captors
+capture
+captured
+captures
+capturing
+capybara
+car
+carabinieri
+caracal
+caracals
+carafe
+caramel
+caramelised
+caramels
+carapace
+carat
+carats
+caravan
+caravanning
+caravans
+caravel
+caraway
+carbide
+carbine
+carbines
+carbohydrate
+carbohydrates
+carbolic
+carbon
+carbonaceous
+carbonate
+carbonated
+carbonates
+carbonic
+carboniferous
+carbonise
+carbons
+carbonyl
+carborundum
+carboxyl
+carbuncle
+carbuncles
+carburettor
+carburettors
+carcase
+carcases
+carcass
+carcasses
+carcinogen
+carcinogenesis
+carcinogenic
+carcinogens
+carcinoma
+carcinomas
+card
+cardboard
+carded
+cardholders
+cardiac
+cardiff
+cardigan
+cardigans
+cardinal
+cardinality
+cardinals
+carding
+cardioid
+cardiologist
+cardiology
+cardiopulmonary
+cardiovascular
+cards
+care
+cared
+career
+careered
+careering
+careerism
+careerist
+careerists
+careers
+carefree
+careful
+carefully
+carefulness
+careless
+carelessly
+carelessness
+carer
+carers
+cares
+caress
+caressed
+caresses
+caressing
+caressingly
+caretaker
+caretakers
+carets
+careworn
+cargo
+caribou
+caricature
+caricatured
+caricatures
+caricaturisation
+caries
+caring
+carmine
+carnage
+carnages
+carnal
+carnality
+carnally
+carnation
+carnations
+carnival
+carnivals
+carnivore
+carnivores
+carnivorous
+carnivorousness
+carol
+carols
+carotene
+carotid
+carotin
+carouse
+carousel
+carousing
+carp
+carpal
+carpenter
+carpenters
+carpentry
+carpet
+carpeted
+carpeting
+carpets
+carping
+carport
+carports
+carps
+carrel
+carriage
+carriages
+carriageway
+carriageways
+carried
+carrier
+carriers
+carries
+carrion
+carrot
+carrots
+carroty
+carry
+carrycot
+carrying
+cars
+carsick
+cart
+carted
+cartel
+cartels
+carter
+carthorses
+cartilage
+carting
+cartload
+cartloads
+cartographer
+cartographers
+cartographic
+cartography
+carton
+cartons
+cartoon
+cartoonist
+cartoonists
+cartoons
+cartouche
+cartridge
+cartridges
+carts
+cartwheel
+cartwheels
+carve
+carved
+carver
+carvers
+carvery
+carves
+carving
+carvings
+caryatids
+casanova
+cascade
+cascaded
+cascades
+cascading
+cascara
+case
+casebook
+cased
+caseload
+caseloads
+casement
+casements
+cases
+casework
+cash
+cashbox
+cashed
+cashes
+cashew
+cashier
+cashiers
+cashing
+cashless
+cashmere
+casing
+casings
+casino
+cask
+casket
+caskets
+casks
+cassava
+casserole
+casseroles
+cassette
+cassettes
+cassock
+cassocks
+cassowary
+cast
+castanet
+castanets
+castaway
+castaways
+caste
+castellated
+caster
+casters
+castes
+castigate
+castigated
+castigates
+castigating
+casting
+castings
+castiron
+castle
+castled
+castles
+castling
+castoff
+castoffs
+castor
+castors
+castrate
+castrated
+castrating
+castration
+castrato
+casts
+casual
+casually
+casualness
+casuals
+casualties
+casualty
+casuistry
+cat
+cataclysm
+cataclysmic
+catacomb
+catacombs
+catalepsy
+catalogue
+catalogued
+cataloguer
+cataloguers
+catalogues
+cataloguing
+catalyse
+catalysed
+catalyses
+catalysing
+catalysis
+catalyst
+catalysts
+catalytic
+catamaran
+catamarans
+catanddog
+catapult
+catapulted
+catapulting
+catapults
+cataract
+cataracts
+catarrh
+catastrophe
+catastrophes
+catastrophic
+catastrophically
+catatonic
+catcalls
+catch
+catched
+catcher
+catchers
+catches
+catchier
+catchiest
+catching
+catchment
+catchphrase
+catchphrases
+catchword
+catchwords
+catchy
+catechism
+catechisms
+catechist
+catechists
+categorical
+categorically
+categories
+categorisation
+categorisations
+categorise
+categorised
+categorises
+categorising
+category
+cater
+catered
+caterer
+caterers
+catering
+caterpillar
+caterpillars
+caters
+caterwaul
+caterwauls
+catfish
+catgut
+catguts
+catharsis
+cathartic
+cathedral
+cathedrals
+catheter
+catheterisation
+catheters
+cathode
+cathodes
+catholic
+cation
+cationic
+cations
+catlike
+catnap
+catnip
+cats
+catsuit
+cattery
+cattle
+catwalk
+catwalks
+caucus
+caucuses
+caudal
+caught
+cauldron
+cauldrons
+cauliflower
+cauliflowers
+caulking
+causal
+causality
+causally
+causation
+causative
+cause
+caused
+causes
+causeway
+causeways
+causing
+caustic
+caustically
+caustics
+cauterise
+cauterising
+caution
+cautionary
+cautioned
+cautioning
+cautions
+cautious
+cautiously
+cautiousness
+cavalcade
+cavalier
+cavalierly
+cavaliers
+cavalry
+cavalryman
+cavalrymen
+cave
+caveat
+caveats
+caved
+cavein
+caveman
+cavemen
+caver
+cavern
+cavernous
+caverns
+cavers
+caves
+caviar
+caviare
+caviars
+caving
+cavitation
+cavities
+cavity
+cavort
+cavorted
+cavorting
+cavorts
+caw
+cawing
+cayman
+caymans
+cease
+ceased
+ceasefire
+ceasefires
+ceaseless
+ceaselessly
+ceases
+ceasing
+cedar
+cedars
+cedarwood
+cede
+ceded
+cedilla
+ceding
+ceilidh
+ceilidhs
+ceiling
+ceilings
+celandine
+celeb
+celebrant
+celebrants
+celebrate
+celebrated
+celebrates
+celebrating
+celebration
+celebrations
+celebratory
+celebrities
+celebrity
+celeriac
+celery
+celestial
+celestially
+celibacy
+celibate
+cell
+cellar
+cellars
+cellist
+cellists
+cello
+cellophane
+cells
+cellular
+cellulite
+celluloid
+cellulose
+celsius
+celtic
+cement
+cemented
+cementing
+cements
+cemeteries
+cemetery
+cenotaph
+censer
+censor
+censored
+censorial
+censoring
+censorious
+censoriousness
+censors
+censorship
+censure
+censured
+censures
+censuring
+census
+censuses
+cent
+centaur
+centaurs
+centenarians
+centenary
+centennial
+centigrade
+centime
+centimes
+centimetre
+centimetres
+centipede
+centipedes
+central
+centralisation
+centralise
+centralised
+centraliser
+centralisers
+centralises
+centralising
+centralism
+centralist
+centrality
+centrally
+centre
+centred
+centrefold
+centrefolds
+centreing
+centrepiece
+centrepieces
+centres
+centric
+centrifugal
+centrifugally
+centrifugation
+centrifuge
+centrifuged
+centrifuges
+centrifuging
+centring
+centripetal
+centrist
+centrists
+centroid
+centroids
+cents
+centuries
+centurion
+centurions
+century
+cephalopods
+ceramic
+ceramics
+ceramist
+cereal
+cereals
+cerebellum
+cerebral
+cerebrum
+ceremonial
+ceremonially
+ceremonials
+ceremonies
+ceremonious
+ceremoniously
+ceremony
+ceres
+cerise
+certain
+certainly
+certainties
+certainty
+certifiable
+certifiably
+certificate
+certificated
+certificates
+certification
+certified
+certifies
+certify
+certifying
+certitude
+certitudes
+cervical
+cervix
+cess
+cessation
+cessations
+cession
+cesspit
+cesspool
+cesspools
+cetacean
+ceylon
+chacha
+chad
+chafe
+chafed
+chafes
+chaff
+chaffed
+chaffinch
+chaffinches
+chaffing
+chafing
+chagrin
+chagrined
+chain
+chained
+chaining
+chains
+chainsaw
+chainsaws
+chainsmoke
+chainsmoked
+chainsmoking
+chair
+chaired
+chairing
+chairlift
+chairman
+chairmanship
+chairmanships
+chairmen
+chairperson
+chairpersons
+chairs
+chairwoman
+chairwomen
+chaldronxxxxxxxxxxxxxx
+chalet
+chalets
+chalice
+chalices
+chalk
+chalked
+chalking
+chalks
+chalky
+challenge
+challenged
+challenger
+challengers
+challenges
+challenging
+challengingly
+chamber
+chambered
+chamberlain
+chamberlains
+chambermaid
+chambermaids
+chamberpot
+chamberpots
+chambers
+chameleon
+chameleons
+chamfer
+chamfered
+chamois
+chamomile
+champ
+champagne
+champagnes
+champing
+champion
+championed
+championing
+champions
+championship
+championships
+champs
+chance
+chanced
+chancel
+chancellery
+chancellor
+chancellors
+chancellorship
+chancer
+chancery
+chances
+chancier
+chanciest
+chancing
+chancy
+chandelier
+chandeliers
+chandler
+change
+changeability
+changeable
+changed
+changeless
+changeling
+changeover
+changeovers
+changer
+changers
+changes
+changing
+channel
+channelled
+channelling
+channels
+chant
+chanted
+chanter
+chanteuse
+chanting
+chantings
+chantries
+chantry
+chants
+chaos
+chaotic
+chaotically
+chap
+chapel
+chapels
+chaperon
+chaperone
+chaperoned
+chaperones
+chaplain
+chaplaincy
+chaplains
+chaplainxxxxxxxx
+chapman
+chapped
+chapping
+chaps
+chapter
+chapters
+char
+charabanc
+character
+characterful
+characterisation
+characterisations
+characterise
+characterised
+characterises
+characterising
+characteristic
+characteristically
+characteristics
+characterless
+characters
+charade
+charades
+charcoal
+charcuterie
+chared
+charge
+chargeable
+charged
+charger
+chargers
+charges
+charging
+chariot
+charioteer
+charioteers
+chariots
+charisma
+charismas
+charismatic
+charismatically
+charismatics
+charitable
+charitably
+charities
+charity
+charlady
+charlatan
+charlatans
+charles
+charlie
+charm
+charmed
+charmer
+charmers
+charming
+charmingly
+charmless
+charms
+charon
+charred
+charring
+chars
+chart
+charted
+charter
+chartered
+chartering
+charters
+charting
+chartists
+charts
+charwoman
+chary
+chase
+chased
+chaser
+chasers
+chases
+chasing
+chasm
+chasms
+chassis
+chaste
+chastely
+chastened
+chastening
+chastise
+chastised
+chastisement
+chastises
+chastising
+chastity
+chat
+chateau
+chats
+chatted
+chattel
+chattels
+chatter
+chatterbox
+chattered
+chatterer
+chattering
+chatters
+chattily
+chatting
+chatty
+chauffeur
+chauffeured
+chauffeurs
+chauvinism
+chauvinist
+chauvinistic
+chauvinists
+cheap
+cheapen
+cheapened
+cheapening
+cheapens
+cheaper
+cheapest
+cheapish
+cheaply
+cheapness
+cheapskates
+cheat
+cheated
+cheater
+cheaters
+cheating
+cheats
+check
+checked
+checker
+checkered
+checkering
+checkers
+checkin
+checking
+checklist
+checklists
+checkmate
+checkout
+checkouts
+checkpoint
+checkpoints
+checks
+checkup
+checkups
+cheddar
+cheek
+cheekbone
+cheekbones
+cheeked
+cheekier
+cheekiest
+cheekily
+cheeking
+cheeks
+cheeky
+cheep
+cheeping
+cheer
+cheered
+cheerful
+cheerfully
+cheerfulness
+cheerier
+cheeriest
+cheerily
+cheering
+cheerio
+cheerleader
+cheerleaders
+cheerless
+cheerlessness
+cheers
+cheery
+cheese
+cheeseboard
+cheeseburger
+cheeseburgers
+cheesecake
+cheesecloth
+cheesemaking
+cheeses
+cheesy
+cheetah
+cheetahs
+chef
+chefs
+chekov
+chemic
+chemical
+chemically
+chemicals
+chemiluminescence
+chemiluminescent
+chemise
+chemist
+chemistry
+chemists
+chemosynthesis
+chemotherapeutic
+chemotherapy
+cheque
+chequebook
+chequebooks
+chequer
+chequerboard
+chequered
+chequering
+chequers
+cheques
+cherish
+cherished
+cherishes
+cherishing
+cheroot
+cheroots
+cherries
+cherry
+cherryred
+cherub
+cherubic
+cherubim
+cherubs
+chess
+chessboard
+chessboards
+chessmen
+chest
+chested
+chester
+chesterfield
+chestnut
+chestnuts
+chests
+chesty
+chevalier
+chevron
+chevrons
+chew
+chewable
+chewed
+chewer
+chewier
+chewiest
+chewing
+chews
+chewy
+chic
+chicago
+chicane
+chicanery
+chick
+chicken
+chickens
+chicks
+chicory
+chide
+chided
+chides
+chiding
+chief
+chiefly
+chiefs
+chieftain
+chieftains
+chiffon
+chihuahua
+chihuahuas
+chilblain
+chilblains
+child
+childbearing
+childbirth
+childcare
+childhood
+childhoods
+childish
+childishly
+childishness
+childless
+childlessness
+childlike
+childly
+childminders
+childproof
+children
+chilean
+chili
+chill
+chilled
+chiller
+chillers
+chilli
+chillier
+chillies
+chilliest
+chilliness
+chilling
+chillingly
+chills
+chilly
+chimaera
+chimaerical
+chime
+chimed
+chimera
+chimeras
+chimerical
+chimes
+chiming
+chimney
+chimneys
+chimp
+chimpanzee
+chimpanzees
+chimps
+chin
+china
+chinese
+chink
+chinked
+chinking
+chinks
+chinless
+chinoiserie
+chins
+chintz
+chintzy
+chip
+chipboard
+chipmunk
+chipped
+chipping
+chippings
+chips
+chiral
+chiropodist
+chiropody
+chiropractic
+chiropractor
+chiropractors
+chirp
+chirped
+chirping
+chirps
+chirpy
+chirruped
+chisel
+chiseled
+chiselled
+chiselling
+chisels
+chit
+chits
+chivalric
+chivalrous
+chivalrously
+chivalry
+chives
+chivvied
+chivvy
+chivvying
+chlamydia
+chlorate
+chloride
+chlorinated
+chlorination
+chlorine
+chlorofluorocarbon
+chlorofluorocarbons
+chloroform
+chloroformed
+chloroforming
+chlorophyll
+chloroquine
+chock
+chockablock
+chockfull
+chocks
+chocolate
+chocolates
+choice
+choices
+choicest
+choir
+choirboy
+choirboys
+choirmaster
+choirs
+choke
+choked
+choker
+chokes
+choking
+cholera
+cholesterol
+choline
+chomp
+chomped
+chomping
+chomps
+choose
+chooser
+choosers
+chooses
+choosey
+choosier
+choosing
+choosy
+chop
+chopin
+chopped
+chopper
+choppers
+choppier
+choppiest
+chopping
+choppy
+chops
+chopsticks
+choral
+chorale
+chorales
+chorals
+chord
+chordal
+chords
+chore
+chorea
+choreographed
+choreographer
+choreographers
+choreographic
+choreographing
+choreography
+chores
+chorister
+choristers
+chortle
+chortled
+chortles
+chortling
+chorus
+chorused
+choruses
+chose
+chosen
+choughs
+chow
+christ
+christen
+christened
+christening
+christenings
+christian
+chroma
+chromatic
+chromaticism
+chromatograph
+chromatographic
+chromatography
+chrome
+chromed
+chromite
+chromium
+chromosomal
+chromosome
+chromosomes
+chronic
+chronically
+chronicle
+chronicled
+chronicler
+chroniclers
+chronicles
+chronicling
+chronograph
+chronological
+chronologically
+chronologies
+chronology
+chronometer
+chronometric
+chrysalis
+chrysanthemum
+chrysanthemums
+chubbiness
+chubby
+chuck
+chucked
+chucking
+chuckle
+chuckled
+chuckles
+chuckling
+chucks
+chuff
+chuffed
+chug
+chugged
+chugging
+chugs
+chum
+chump
+chums
+chunk
+chunkier
+chunks
+chunky
+chunnel
+chuntering
+church
+churches
+churchgoer
+churchgoers
+churchman
+churchmen
+churchwarden
+churchwardens
+churchyard
+churchyards
+churlish
+churlishly
+churlishness
+churn
+churned
+churning
+churns
+chute
+chutes
+chutney
+chutzpah
+cicada
+cicadas
+cicero
+cider
+ciders
+cigar
+cigaret
+cigarette
+cigarettes
+cigars
+cilia
+cilium
+cinch
+cinder
+cinders
+cine
+cinema
+cinemas
+cinematic
+cinematographer
+cinematography
+cinnamon
+cipher
+ciphered
+ciphers
+circa
+circadian
+circle
+circled
+circles
+circlet
+circlets
+circling
+circuit
+circuitous
+circuitry
+circuits
+circulant
+circular
+circularise
+circularised
+circularity
+circularly
+circulars
+circulate
+circulated
+circulates
+circulating
+circulation
+circulations
+circulatory
+circumcise
+circumcised
+circumcision
+circumference
+circumferences
+circumferential
+circumflex
+circumflexes
+circumlocution
+circumlocutions
+circumlocutory
+circumnavigate
+circumnavigated
+circumnavigates
+circumnavigation
+circumnavigational
+circumscribe
+circumscribed
+circumscribing
+circumspect
+circumspection
+circumspectly
+circumstance
+circumstances
+circumstantial
+circumstantially
+circumvent
+circumventable
+circumvented
+circumventing
+circumvention
+circumventions
+circumvents
+circus
+circuses
+cirrhosis
+cirrhotic
+cirrus
+cist
+cistern
+cisterns
+citadel
+citadels
+citation
+citations
+cite
+cited
+cites
+cithers
+cities
+citing
+citizen
+citizenry
+citizens
+citizenship
+citrate
+citrates
+citric
+citron
+citrons
+citrus
+citruses
+cittern
+city
+cityscape
+civic
+civics
+civies
+civil
+civilian
+civilians
+civilisation
+civilisations
+civilise
+civilised
+civilising
+civilities
+civility
+civilly
+clacking
+clad
+cladding
+claim
+claimable
+claimant
+claimants
+claimed
+claiming
+claims
+clairvoyance
+clairvoyant
+clairvoyants
+clam
+clamber
+clambered
+clambering
+clambers
+clammed
+clamming
+clammy
+clamorous
+clamorously
+clamour
+clamoured
+clamouring
+clamours
+clamp
+clampdown
+clamped
+clamping
+clamps
+clams
+clan
+clandestine
+clandestinely
+clang
+clanged
+clangers
+clanging
+clank
+clanked
+clanking
+clannish
+clans
+clansmen
+clap
+clapped
+clapper
+clappers
+clapping
+claps
+claptrap
+claret
+clarets
+clarification
+clarifications
+clarified
+clarifies
+clarify
+clarifying
+clarinet
+clarinets
+clarinettist
+clarion
+clarity
+clash
+clashed
+clashes
+clashing
+clasp
+clasped
+clasper
+clasping
+clasps
+class
+classed
+classes
+classic
+classical
+classically
+classicism
+classicist
+classicists
+classics
+classier
+classiest
+classifiable
+classification
+classifications
+classificatory
+classified
+classifier
+classifiers
+classifies
+classify
+classifying
+classing
+classless
+classlessness
+classmate
+classmates
+classroom
+classrooms
+classy
+clatter
+clattered
+clattering
+clatters
+clausal
+clause
+clauses
+claustrophobia
+claustrophobic
+clavichord
+clavicle
+claw
+clawed
+clawing
+claws
+clay
+clayey
+claymore
+claymores
+clays
+clean
+cleancut
+cleaned
+cleaner
+cleaners
+cleanest
+cleaning
+cleanliness
+cleanliving
+cleanly
+cleanness
+cleans
+cleanse
+cleansed
+cleanser
+cleanses
+cleanshaven
+cleansing
+cleanup
+clear
+clearance
+clearances
+clearcut
+cleared
+clearer
+clearest
+clearheaded
+clearing
+clearings
+clearly
+clearness
+clears
+clearsighted
+clearup
+clearups
+clearway
+cleat
+cleavage
+cleavages
+cleave
+cleaved
+cleaver
+cleavers
+cleaves
+cleaving
+clef
+cleft
+clefts
+cleg
+clematis
+clemency
+clement
+clench
+clenched
+clenches
+clenching
+clergies
+clergy
+clergyman
+clergymen
+cleric
+clerical
+clerically
+clerics
+clerk
+clerks
+clever
+cleverer
+cleverest
+cleverly
+cleverness
+cliche
+cliches
+click
+clicked
+clicking
+clicks
+client
+clientele
+clients
+cliff
+cliffhanger
+cliffs
+climactic
+climate
+climates
+climatic
+climatically
+climatological
+climatologists
+climatology
+climax
+climaxed
+climaxes
+climaxing
+climb
+climbable
+climbdown
+climbed
+climber
+climbers
+climbing
+climbs
+climes
+clinch
+clinched
+clinches
+clinching
+cling
+clingers
+clinging
+clings
+clinic
+clinical
+clinically
+clinician
+clinicians
+clinics
+clink
+clinked
+clinker
+clinking
+clip
+clipboard
+clipboards
+clipped
+clipper
+clippers
+clipping
+clippings
+clips
+clique
+cliques
+cliquey
+clitoral
+clitoris
+cloaca
+cloak
+cloakanddagger
+cloaked
+cloaking
+cloakroom
+cloakrooms
+cloaks
+clobber
+clock
+clocked
+clocking
+clockmaker
+clocks
+clockwise
+clockwork
+clod
+clods
+clog
+clogged
+clogging
+clogs
+cloister
+cloistered
+cloisters
+clonal
+clone
+cloned
+clones
+cloning
+closable
+close
+closed
+closedcircuit
+closeknit
+closely
+closeness
+closer
+closers
+closes
+closest
+closet
+closeted
+closets
+closeup
+closeups
+closing
+closings
+closure
+closures
+clot
+cloth
+clothe
+clothed
+clothes
+clothespeg
+clothespegs
+clothier
+clothiers
+clothing
+cloths
+clots
+clotted
+clotting
+cloud
+cloudburst
+cloudbursts
+clouded
+cloudier
+cloudiest
+cloudiness
+clouding
+cloudless
+clouds
+cloudscape
+cloudscapes
+cloudy
+clout
+clouted
+clouts
+clove
+cloven
+clover
+cloves
+clown
+clowned
+clowning
+clownish
+clowns
+cloying
+cloyingly
+club
+clubbed
+clubbing
+clubfooted
+clubhouse
+clubman
+clubroom
+clubs
+cluck
+clucked
+clucking
+clucks
+clue
+clued
+cluedup
+clueless
+clues
+clumber
+clump
+clumped
+clumping
+clumps
+clumpy
+clumsier
+clumsiest
+clumsily
+clumsiness
+clumsy
+clung
+cluster
+clustered
+clustering
+clusters
+clutch
+clutched
+clutches
+clutching
+clutter
+cluttered
+cluttering
+clutters
+coach
+coached
+coaches
+coaching
+coachload
+coachloads
+coachman
+coachmen
+coachwork
+coacted
+coaction
+coacts
+coagulate
+coagulated
+coagulation
+coal
+coalblack
+coalesce
+coalesced
+coalescence
+coalesces
+coalescing
+coalface
+coalfield
+coalfields
+coalition
+coalitions
+coalminers
+coals
+coapts
+coarse
+coarsely
+coarseness
+coarsens
+coarser
+coarsest
+coast
+coastal
+coasted
+coaster
+coasters
+coastguard
+coastguards
+coasting
+coastlands
+coastline
+coastlines
+coasts
+coat
+coated
+coathanger
+coating
+coatings
+coats
+coauthor
+coauthored
+coauthoring
+coauthors
+coax
+coaxed
+coaxes
+coaxial
+coaxing
+coaxingly
+cob
+cobalt
+cobble
+cobbled
+cobbler
+cobblers
+cobbles
+cobblestones
+cobbling
+coble
+cobra
+cobras
+cobs
+cobweb
+cobwebbed
+cobwebby
+cobwebs
+coca
+cocain
+cocaine
+cochlea
+cochlear
+cock
+cockatoo
+cockatoos
+cockatrice
+cockatrices
+cockcrow
+cocked
+cockerel
+cockerels
+cockeyed
+cockier
+cockiest
+cockiness
+cocking
+cockle
+cockles
+cockney
+cockneys
+cockpit
+cockpits
+cockroach
+cockroaches
+cocks
+cockshies
+cocksure
+cocktail
+cocktails
+cocky
+cocoa
+coconut
+coconuts
+cocoon
+cocooned
+cocoons
+cod
+coda
+coddle
+coddling
+code
+codebreaker
+coded
+codeine
+codename
+codenamed
+coder
+coders
+codes
+codeword
+codewords
+codex
+codfish
+codices
+codicil
+codicils
+codification
+codifications
+codified
+codifies
+codify
+codifying
+coding
+codling
+codpiece
+cods
+coefficient
+coefficients
+coelenterates
+coerce
+coerced
+coercer
+coerces
+coercible
+coercing
+coercion
+coercions
+coercive
+coercively
+coeval
+coexist
+coexisted
+coexistence
+coexistent
+coexisting
+coexists
+coextensive
+coffee
+coffees
+coffer
+cofferdam
+cofferdams
+coffers
+coffin
+coffins
+cog
+cogency
+cogent
+cogently
+cogitate
+cogitated
+cogitating
+cogitation
+cogitations
+cogitative
+cognac
+cognacs
+cognate
+cognates
+cognisance
+cognisant
+cognition
+cognitive
+cognitively
+cognizance
+cognizant
+cognoscenti
+cogs
+cohabit
+cohabitation
+cohabitees
+cohabiting
+cohere
+cohered
+coherence
+coherency
+coherent
+coherently
+coheres
+cohesion
+cohesive
+cohesively
+cohesiveness
+cohort
+cohorts
+coiffure
+coil
+coiled
+coiling
+coils
+coin
+coinage
+coinages
+coincide
+coincided
+coincidence
+coincidences
+coincident
+coincidental
+coincidentally
+coincides
+coinciding
+coined
+coiner
+coiners
+coining
+coins
+coital
+coitus
+coke
+col
+cola
+colander
+colas
+cold
+coldblooded
+coldbloodedly
+colder
+coldest
+coldhearted
+coldish
+coldly
+coldness
+colds
+coldwar
+cole
+coleslaw
+colitis
+collaborate
+collaborated
+collaborates
+collaborating
+collaboration
+collaborationist
+collaborations
+collaborative
+collaboratively
+collaborator
+collaborators
+collage
+collagen
+collages
+collapse
+collapsed
+collapses
+collapsible
+collapsing
+collar
+collarbone
+collared
+collaring
+collarless
+collars
+collate
+collated
+collateral
+collaterally
+collates
+collating
+collation
+colleague
+colleagues
+collect
+collectability
+collectable
+collectables
+collected
+collecting
+collection
+collections
+collective
+collectively
+collectives
+collectivisation
+collectivism
+collectivist
+collectivity
+collector
+collectors
+collects
+college
+colleges
+collegial
+collegiate
+collide
+collided
+collides
+colliding
+collie
+collier
+collieries
+colliers
+colliery
+collies
+collimation
+collimator
+collinear
+collins
+collision
+collisional
+collisions
+collocated
+collocation
+collocational
+collocations
+colloid
+colloidal
+colloids
+colloquia
+colloquial
+colloquialism
+colloquialisms
+colloquially
+colloquium
+collude
+colluded
+colluding
+collusion
+colobus
+cologne
+colon
+colonel
+colonels
+colonial
+colonialism
+colonialist
+colonialists
+colonials
+colonic
+colonies
+colonisation
+colonisations
+colonise
+colonised
+colonisers
+colonising
+colonist
+colonists
+colonnade
+colonnaded
+colonnades
+colons
+colony
+colossal
+colossally
+colossus
+colostomies
+colostomy
+colour
+colourant
+colourants
+colouration
+colourblind
+coloure
+colourful
+colourfully
+colouring
+colourings
+colourisation
+colourise
+colourised
+colourising
+colourless
+colours
+coloury
+cols
+colt
+colts
+columbus
+column
+columnar
+columned
+columnist
+columnists
+columns
+coma
+comas
+comatose
+comb
+combat
+combatant
+combatants
+combated
+combating
+combative
+combativeness
+combats
+combed
+comber
+combination
+combinations
+combinatorial
+combine
+combined
+combines
+combing
+combining
+combs
+combusted
+combustible
+combustibles
+combustion
+combusts
+come
+comeback
+comedian
+comedians
+comedies
+comedown
+comedy
+comeliness
+comely
+comer
+comers
+comes
+comestible
+comestibles
+comet
+cometary
+comets
+comfort
+comfortable
+comfortably
+comforted
+comforter
+comforters
+comforting
+comfortingly
+comforts
+comfy
+comic
+comical
+comically
+comics
+coming
+comings
+comity
+comma
+command
+commandant
+commanded
+commandeer
+commandeered
+commandeering
+commander
+commanders
+commanding
+commandingly
+commandment
+commandments
+commando
+commands
+commas
+commemorate
+commemorated
+commemorates
+commemorating
+commemoration
+commemorations
+commemorative
+commence
+commenced
+commencement
+commences
+commencing
+commend
+commendable
+commendably
+commendation
+commendations
+commended
+commending
+commends
+commensurate
+commensurately
+comment
+commentaries
+commentary
+commentate
+commentating
+commentator
+commentators
+commented
+commenter
+commenting
+comments
+commerce
+commercial
+commercialisation
+commercialise
+commercialised
+commercialism
+commercially
+commercials
+commiserate
+commiserated
+commiserating
+commiseration
+commiserations
+commissar
+commissariat
+commissars
+commission
+commissionaire
+commissioned
+commissioner
+commissioners
+commissioning
+commissions
+commit
+commitment
+commitments
+commits
+committal
+committed
+committee
+committees
+committing
+commode
+commodes
+commodious
+commodities
+commodity
+commodore
+commodores
+common
+commonalities
+commonality
+commoner
+commoners
+commonest
+commonlaw
+commonly
+commonness
+commonplace
+commonplaces
+commons
+commonsense
+commonsensical
+commonwealth
+commotion
+commotions
+communal
+communality
+communally
+commune
+communed
+communes
+communicable
+communicant
+communicants
+communicate
+communicated
+communicates
+communicating
+communication
+communications
+communicative
+communicativeness
+communicator
+communicators
+communing
+communion
+communions
+communique
+communiques
+communism
+communist
+communists
+communitarian
+communities
+community
+commutation
+commutative
+commutativity
+commutator
+commute
+commuted
+commuter
+commuters
+commutes
+commuting
+compact
+compacted
+compacting
+compaction
+compactions
+compactly
+compactness
+compacts
+companies
+companion
+companionable
+companionably
+companions
+companionship
+company
+comparability
+comparable
+comparably
+comparative
+comparatively
+comparatives
+comparator
+comparators
+compare
+compared
+compares
+comparing
+comparison
+comparisons
+compartment
+compartmentalisation
+compartmentalised
+compartmentalising
+compartments
+compass
+compassed
+compasses
+compassion
+compassionate
+compassionately
+compatibilities
+compatibility
+compatible
+compatibles
+compatibly
+compatriot
+compatriots
+compel
+compelled
+compelling
+compellingly
+compels
+compendia
+compendium
+compendiums
+compensate
+compensated
+compensates
+compensating
+compensation
+compensations
+compensator
+compensatory
+compere
+compete
+competed
+competence
+competences
+competencies
+competency
+competent
+competently
+competes
+competing
+competition
+competitions
+competitive
+competitively
+competitiveness
+competitor
+competitors
+compilable
+compilation
+compilations
+compile
+compiled
+compiler
+compilers
+compiles
+compiling
+complacency
+complacent
+complacently
+complain
+complainant
+complainants
+complained
+complainer
+complaining
+complainingly
+complains
+complaint
+complaints
+complaisant
+complement
+complementarity
+complementary
+complemented
+complementing
+complements
+completable
+complete
+completed
+completely
+completeness
+completes
+completing
+completion
+completions
+complex
+complexes
+complexion
+complexioned
+complexions
+complexities
+complexity
+complexly
+compliance
+compliant
+complicate
+complicated
+complicates
+complicating
+complication
+complications
+complicit
+complicity
+complied
+complies
+compliment
+complimentary
+complimented
+complimenting
+compliments
+complot
+comply
+complying
+component
+components
+comport
+compose
+composed
+composedly
+composer
+composers
+composes
+composing
+composite
+composites
+composition
+compositional
+compositions
+compositor
+compositors
+compost
+composts
+composure
+compound
+compounded
+compounding
+compounds
+comprehend
+comprehended
+comprehending
+comprehends
+comprehensibility
+comprehensible
+comprehensibly
+comprehension
+comprehensive
+comprehensively
+comprehensiveness
+comprehensives
+compress
+compressed
+compresses
+compressibility
+compressible
+compressing
+compression
+compressional
+compressions
+compressive
+compressor
+compressors
+comprise
+comprised
+comprises
+comprising
+compromise
+compromised
+compromises
+compromising
+comptroller
+compulsion
+compulsions
+compulsive
+compulsively
+compulsorily
+compulsory
+compunction
+computability
+computable
+computably
+computation
+computational
+computationally
+computations
+compute
+computed
+computer
+computerisation
+computerise
+computerised
+computerising
+computerliterate
+computers
+computes
+computing
+comrade
+comradeinarms
+comradely
+comrades
+comradeship
+con
+conakry
+concatenate
+concatenated
+concatenates
+concatenating
+concatenation
+concatenations
+concave
+concavity
+conceal
+concealed
+concealing
+concealment
+conceals
+concede
+conceded
+concedes
+conceding
+conceit
+conceited
+conceits
+conceivability
+conceivable
+conceivably
+conceive
+conceived
+conceives
+conceiving
+concentrate
+concentrated
+concentrates
+concentrating
+concentration
+concentrations
+concentrator
+concentrators
+concentric
+concept
+conception
+conceptions
+concepts
+conceptual
+conceptualisation
+conceptualisations
+conceptualise
+conceptualised
+conceptualising
+conceptually
+concern
+concerned
+concernedly
+concerning
+concerns
+concert
+concerted
+concertgoers
+concerti
+concertina
+concerto
+concerts
+concession
+concessional
+concessionary
+concessions
+concierge
+conciliar
+conciliate
+conciliating
+conciliation
+conciliator
+conciliatory
+concise
+concisely
+conciseness
+conclave
+conclaves
+conclude
+concluded
+concludes
+concluding
+conclusion
+conclusions
+conclusive
+conclusively
+concoct
+concocted
+concocting
+concoction
+concoctions
+concocts
+concomitant
+concomitantly
+concord
+concordance
+concordances
+concordant
+concordat
+concords
+concourse
+concourses
+concrete
+concreted
+concretely
+concreteness
+concretes
+concreting
+concretions
+concubine
+concubines
+concur
+concurred
+concurrence
+concurrency
+concurrent
+concurrently
+concurring
+concurs
+concuss
+concussed
+concussion
+condemn
+condemnable
+condemnation
+condemnations
+condemnatory
+condemned
+condemning
+condemns
+condensate
+condensation
+condensations
+condense
+condensed
+condenser
+condensers
+condenses
+condensing
+condescend
+condescended
+condescending
+condescendingly
+condescends
+condescension
+condiment
+condiments
+condition
+conditional
+conditionality
+conditionally
+conditionals
+conditioned
+conditioner
+conditioners
+conditioning
+conditions
+condole
+condoled
+condolence
+condolences
+condoles
+condonable
+condone
+condoned
+condones
+condoning
+condor
+condors
+conducive
+conduct
+conductance
+conducted
+conducting
+conduction
+conductive
+conductivities
+conductivity
+conductor
+conductors
+conductress
+conducts
+conduit
+conduits
+cone
+coned
+cones
+confabulate
+confection
+confectioner
+confectioners
+confectionery
+confectionist
+confections
+confederacy
+confederate
+confederates
+confederation
+confederations
+confer
+conference
+conferences
+conferencing
+conferment
+conferred
+conferring
+confers
+confess
+confessed
+confesses
+confessing
+confession
+confessional
+confessionals
+confessions
+confessor
+confessors
+confetti
+confidant
+confidante
+confidantes
+confidants
+confide
+confided
+confidence
+confidences
+confident
+confidential
+confidentiality
+confidentially
+confidently
+confides
+confiding
+confidingly
+configurable
+configuration
+configurations
+configure
+configured
+configures
+configuring
+confine
+confined
+confinement
+confinements
+confines
+confining
+confirm
+confirmation
+confirmations
+confirmatory
+confirmed
+confirming
+confirms
+confiscate
+confiscated
+confiscates
+confiscating
+confiscation
+confiscations
+confiscatory
+conflagration
+conflagrations
+conflated
+conflates
+conflating
+conflation
+conflict
+conflicted
+conflicting
+conflictingly
+conflicts
+conflictual
+confluence
+confluent
+confocal
+conform
+conformable
+conformal
+conformance
+conformation
+conformational
+conformed
+conforming
+conformism
+conformist
+conformists
+conformity
+conforms
+confound
+confounded
+confoundedly
+confounding
+confounds
+confront
+confrontation
+confrontational
+confrontations
+confronted
+confronting
+confronts
+confusable
+confuse
+confused
+confusedly
+confuser
+confuses
+confusing
+confusingly
+confusion
+confusions
+conga
+congeal
+congealed
+congealing
+congeals
+congenial
+congeniality
+congenital
+congenitally
+conger
+congest
+congested
+congesting
+congestion
+congestive
+conglomerate
+conglomerated
+conglomerates
+conglomeration
+congo
+congratulate
+congratulated
+congratulates
+congratulating
+congratulation
+congratulations
+congratulatory
+congregate
+congregated
+congregating
+congregation
+congregational
+congregations
+congress
+congresses
+congressional
+congressman
+congressmen
+congruence
+congruences
+congruency
+congruent
+congruential
+congruity
+conic
+conical
+conics
+conifer
+coniferous
+conifers
+conjectural
+conjecture
+conjectured
+conjectures
+conjecturing
+conjoin
+conjoined
+conjoining
+conjoint
+conjugacy
+conjugal
+conjugate
+conjugated
+conjugates
+conjugating
+conjugation
+conjugations
+conjunct
+conjunction
+conjunctions
+conjunctive
+conjunctivitis
+conjunctures
+conjure
+conjured
+conjurer
+conjurers
+conjures
+conjuring
+conjuror
+conjurors
+conjury
+conk
+conker
+conkers
+conman
+conmen
+connect
+connected
+connectedness
+connecting
+connection
+connectionless
+connections
+connective
+connectives
+connectivity
+connector
+connectors
+connects
+conned
+connexion
+connexions
+connivance
+connive
+connived
+conniving
+connoisseur
+connoisseurs
+connoisseurship
+connotation
+connotations
+connote
+connoted
+connotes
+connoting
+conquer
+conquerable
+conquered
+conquering
+conqueror
+conquerors
+conquers
+conquest
+conquests
+conquistador
+conquistadores
+cons
+consanguineous
+consanguinity
+conscience
+consciences
+consciencestricken
+conscientious
+conscientiously
+conscientiousness
+conscionable
+conscious
+consciously
+consciousness
+consciousnesses
+conscript
+conscripted
+conscripting
+conscription
+conscripts
+consecrate
+consecrated
+consecrating
+consecration
+consecutive
+consecutively
+consensual
+consensually
+consensus
+consent
+consented
+consenting
+consents
+consequence
+consequences
+consequent
+consequential
+consequentially
+consequently
+conservation
+conservationist
+conservationists
+conservations
+conservatism
+conservative
+conservatively
+conservativeness
+conservatives
+conservatoire
+conservator
+conservatories
+conservators
+conservatory
+conserve
+conserved
+conserves
+conserving
+consider
+considerable
+considerably
+considerate
+considerately
+consideration
+considerations
+considered
+considering
+considers
+consign
+consigned
+consignee
+consigning
+consignment
+consignments
+consigns
+consist
+consisted
+consistencies
+consistency
+consistent
+consistently
+consisting
+consists
+consolation
+consolations
+console
+consoled
+consoles
+consolidate
+consolidated
+consolidates
+consolidating
+consolidation
+consolidations
+consoling
+consolingly
+consonance
+consonant
+consonantal
+consonants
+consort
+consorted
+consortia
+consorting
+consortium
+consorts
+conspecific
+conspicuous
+conspicuously
+conspicuousness
+conspiracies
+conspiracy
+conspirator
+conspiratorial
+conspiratorially
+conspirators
+conspire
+conspired
+conspires
+conspiring
+constable
+constables
+constabularies
+constabulary
+constancy
+constant
+constantly
+constants
+constellation
+constellations
+consternating
+consternation
+constipated
+constipation
+constituencies
+constituency
+constituent
+constituents
+constitute
+constituted
+constitutes
+constituting
+constitution
+constitutional
+constitutionalism
+constitutionalists
+constitutionality
+constitutionally
+constitutions
+constitutive
+constitutively
+constrain
+constrained
+constraining
+constrains
+constraint
+constraints
+constrict
+constricted
+constricting
+constriction
+constrictions
+constrictive
+constrictor
+constrictors
+constricts
+construct
+constructable
+constructed
+constructing
+construction
+constructional
+constructions
+constructive
+constructively
+constructivism
+constructivist
+constructor
+constructors
+constructs
+construe
+construed
+construes
+construing
+consul
+consular
+consulate
+consulates
+consuls
+consult
+consultancies
+consultancy
+consultant
+consultants
+consultation
+consultations
+consultative
+consulted
+consulting
+consults
+consumable
+consumables
+consume
+consumed
+consumer
+consumerism
+consumerist
+consumers
+consumes
+consuming
+consummate
+consummated
+consummately
+consummation
+consumption
+consumptions
+consumptive
+contact
+contactable
+contacted
+contacting
+contacts
+contagion
+contagious
+contain
+containable
+contained
+container
+containers
+containing
+containment
+contains
+contaminant
+contaminants
+contaminate
+contaminated
+contaminates
+contaminating
+contamination
+contemplate
+contemplated
+contemplates
+contemplating
+contemplation
+contemplations
+contemplative
+contemporaneity
+contemporaneous
+contemporaneously
+contemporaries
+contemporary
+contempt
+contemptible
+contemptibly
+contemptuous
+contemptuously
+contend
+contended
+contender
+contenders
+contending
+contends
+content
+contented
+contentedly
+contenting
+contention
+contentions
+contentious
+contentiously
+contentment
+contents
+contest
+contestable
+contestant
+contestants
+contested
+contesting
+contests
+context
+contexts
+contextual
+contextualisation
+contextually
+contiguity
+contiguous
+contiguously
+continence
+continent
+continental
+continentals
+continents
+contingencies
+contingency
+contingent
+contingently
+contingents
+continua
+continuable
+continual
+continually
+continuance
+continuation
+continuations
+continue
+continued
+continues
+continuing
+continuities
+continuity
+continuous
+continuously
+continuum
+contort
+contorted
+contorting
+contortion
+contortionist
+contortions
+contorts
+contour
+contoured
+contouring
+contours
+contra
+contraband
+contraception
+contraceptive
+contraceptives
+contract
+contracted
+contractible
+contractile
+contracting
+contraction
+contractions
+contractor
+contractors
+contracts
+contractual
+contractually
+contradict
+contradicted
+contradicting
+contradiction
+contradictions
+contradictorily
+contradictory
+contradicts
+contradistinction
+contraflow
+contraflows
+contraindication
+contraindications
+contralto
+contraption
+contraptions
+contrapuntal
+contrarily
+contrariness
+contrariwise
+contrary
+contras
+contrast
+contrasted
+contrasting
+contrastingly
+contrastive
+contrasts
+contrasty
+contravene
+contravened
+contravenes
+contravening
+contravention
+contraventions
+contretemps
+contribute
+contributed
+contributes
+contributing
+contribution
+contributions
+contributor
+contributors
+contributory
+contrite
+contritely
+contrition
+contrivance
+contrivances
+contrive
+contrived
+contrives
+contriving
+control
+controllable
+controlled
+controller
+controllers
+controlling
+controls
+controversial
+controversially
+controversies
+controversy
+controvert
+controverted
+contumely
+contuse
+contusion
+contusions
+conundrum
+conundrums
+conurbation
+conurbations
+convalesce
+convalescence
+convalescent
+convalescing
+convect
+convected
+convecting
+convection
+convectional
+convective
+convector
+convects
+convene
+convened
+convener
+convenes
+convenience
+conveniences
+convenient
+conveniently
+convening
+convenor
+convenors
+convent
+conventicle
+convention
+conventional
+conventionalism
+conventionalist
+conventionality
+conventionally
+conventions
+convents
+converge
+converged
+convergence
+convergences
+convergent
+converges
+converging
+conversant
+conversation
+conversational
+conversationalist
+conversationalists
+conversationally
+conversations
+conversazione
+converse
+conversed
+conversely
+converses
+conversing
+conversion
+conversions
+convert
+converted
+converter
+converters
+convertibility
+convertible
+convertibles
+converting
+convertor
+convertors
+converts
+convex
+convexity
+convey
+conveyance
+conveyancing
+conveyed
+conveying
+conveyor
+conveyors
+conveys
+convict
+convicted
+convicting
+conviction
+convictions
+convicts
+convince
+convinced
+convinces
+convincing
+convincingly
+convivial
+conviviality
+convocation
+convocations
+convoluted
+convolution
+convolutions
+convolve
+convolved
+convoy
+convoys
+convulse
+convulsed
+convulses
+convulsing
+convulsion
+convulsions
+convulsive
+convulsively
+cony
+coo
+cooed
+cooing
+cook
+cookbook
+cookbooks
+cooked
+cooker
+cookers
+cookery
+cookies
+cooking
+cooks
+cookware
+cool
+coolant
+coolants
+cooled
+cooler
+coolers
+coolest
+cooling
+coolness
+cools
+coon
+coons
+coop
+cooped
+cooper
+cooperate
+cooperated
+cooperates
+cooperating
+cooperation
+cooperative
+cooperatively
+cooperatives
+coopers
+coops
+coordinate
+coordinated
+coordinates
+coordinating
+coordination
+coordinator
+coordinators
+coos
+cop
+cope
+coped
+copes
+copied
+copier
+copiers
+copies
+copilot
+coping
+copious
+copiously
+coplanar
+copout
+copouts
+copper
+copperplate
+coppers
+coppery
+coppice
+coppiced
+coppices
+coppicing
+copra
+coprocessor
+coprocessors
+coproduced
+coprolite
+coprophagous
+cops
+copse
+copses
+copulate
+copulating
+copulation
+copulations
+copulatory
+copy
+copyable
+copycat
+copycats
+copying
+copyist
+copyists
+copyright
+copyrightable
+copyrighted
+copyrighting
+copyrights
+copywriter
+coquette
+coquettes
+coquettish
+coquettishly
+cor
+coracle
+coral
+coralline
+corals
+cord
+cordage
+cordate
+corded
+cordial
+cordiality
+cordially
+cordials
+cordillera
+cordite
+cordless
+cordon
+cordoned
+cordons
+cords
+corduroy
+corduroys
+core
+cores
+corespondent
+corgi
+corgis
+coriander
+corinth
+cork
+corkage
+corked
+corks
+corkscrew
+corkscrews
+corky
+cormorant
+cormorants
+corn
+corncrake
+cornea
+corneal
+corneas
+corned
+corner
+cornered
+cornering
+corners
+cornerstone
+cornerstones
+cornet
+cornets
+cornfield
+cornfields
+cornflake
+cornflakes
+cornflour
+cornflower
+cornflowers
+cornice
+cornices
+cornish
+cornmeal
+corns
+cornucopia
+corny
+corollaries
+corollary
+corona
+coronal
+coronaries
+coronary
+coronas
+coronation
+coronations
+coroner
+coroners
+coronet
+coronets
+corpora
+corporal
+corporals
+corporate
+corporately
+corporates
+corporation
+corporations
+corporatism
+corporatist
+corporeal
+corporeally
+corps
+corpse
+corpses
+corpulent
+corpus
+corpuscle
+corpuscles
+corpuscular
+corral
+corralled
+corrals
+correct
+correctable
+corrected
+correcting
+correction
+correctional
+corrections
+corrective
+correctly
+correctness
+corrector
+correctors
+corrects
+correlate
+correlated
+correlates
+correlating
+correlation
+correlations
+correlative
+correspond
+corresponded
+correspondence
+correspondences
+correspondent
+correspondents
+corresponding
+correspondingly
+corresponds
+corridor
+corridors
+corrigenda
+corroborate
+corroborated
+corroborates
+corroborating
+corroboration
+corroborative
+corroboratory
+corrode
+corroded
+corrodes
+corroding
+corrosion
+corrosive
+corrugated
+corrugations
+corrupt
+corrupted
+corruptible
+corrupting
+corruption
+corruptions
+corruptly
+corrupts
+corsage
+corse
+corset
+corsets
+corsica
+corslet
+cortege
+cortex
+cortical
+corticosteroid
+corticosteroids
+cortisol
+cortisone
+coruscates
+corvette
+corvettes
+cosier
+cosiest
+cosily
+cosine
+cosines
+cosiness
+cosmetic
+cosmetically
+cosmetics
+cosmic
+cosmical
+cosmically
+cosmological
+cosmologically
+cosmologies
+cosmologist
+cosmologists
+cosmology
+cosmonaut
+cosmonauts
+cosmopolitan
+cosmopolitans
+cosmos
+cossacks
+cosset
+cosseted
+cossets
+cost
+costar
+costarred
+costarring
+costars
+costcutting
+costed
+costeffective
+costeffectiveness
+costefficient
+costing
+costings
+costive
+costless
+costlier
+costliest
+costliness
+costly
+costs
+costume
+costumed
+costumes
+cosy
+cot
+coterie
+coterminous
+cots
+cottage
+cottages
+cotton
+cottoned
+cottons
+couch
+couched
+couches
+couching
+cougar
+cougars
+cough
+coughed
+coughing
+coughs
+could
+couloir
+coulomb
+coulombs
+council
+councillor
+councillors
+councils
+counsel
+counselled
+counselling
+counsellor
+counsellors
+counsels
+count
+countability
+countable
+countably
+countdown
+counted
+countenance
+countenanced
+countenances
+countenancing
+counter
+counteract
+counteracted
+counteracting
+counteracts
+counterattack
+counterattacked
+counterattacks
+counterbalance
+counterbalanced
+counterbalancing
+countered
+counterfeit
+counterfeited
+counterfeiters
+counterfeiting
+counterfeits
+counterfoil
+counterfoils
+countering
+counterintelligence
+counterintuitive
+countermanded
+countermeasures
+counteroffensive
+counterpane
+counterpart
+counterparts
+counterpoint
+counterpointed
+counterpoints
+counterpoise
+counterproductive
+counterrevolution
+counterrevolutionaries
+counterrevolutionary
+counters
+countersign
+countersigned
+countersigns
+countess
+countesses
+counties
+counting
+countless
+countries
+country
+countryman
+countrymen
+countryside
+countrywide
+counts
+county
+coup
+coupe
+coupes
+couple
+coupled
+coupler
+couplers
+couples
+couplet
+couplets
+coupling
+couplings
+coupon
+coupons
+coups
+courage
+courageous
+courageously
+courgette
+courgettes
+courier
+couriers
+course
+coursebook
+coursed
+courses
+coursework
+coursing
+court
+courted
+courteous
+courteously
+courtesan
+courtesans
+courtesies
+courtesy
+courthouse
+courtier
+courtiers
+courting
+courtly
+courtmartial
+courtroom
+courtrooms
+courts
+courtship
+courtships
+courtyard
+courtyards
+couscous
+cousin
+cousinly
+cousins
+couther
+couture
+couturier
+couturiers
+covalent
+covalently
+covariance
+covariances
+cove
+coven
+covenant
+covenanted
+covenanters
+covenants
+covens
+cover
+coverage
+coverages
+coveralls
+covered
+covering
+coverings
+coverlet
+coverlets
+covers
+coversheet
+covert
+covertly
+coverts
+coverup
+coverups
+coves
+covet
+coveted
+coveting
+covetous
+covetousness
+covets
+cow
+coward
+cowardice
+cowardly
+cowards
+cowboy
+cowboys
+cowed
+cower
+cowered
+cowering
+cowers
+cowgirl
+cowgirls
+cowhand
+cowherd
+cowing
+cowl
+cowled
+cowling
+coworker
+coworkers
+cowriter
+cowritten
+cows
+cowshed
+cowsheds
+cowslip
+cowslips
+cox
+coxcomb
+coxcombs
+coxed
+coxes
+coxing
+coxswain
+coy
+coyly
+coyness
+coyote
+coyotes
+cozier
+crab
+crabby
+crabs
+crack
+crackable
+crackdown
+crackdowns
+cracked
+cracker
+crackers
+cracking
+crackle
+crackled
+crackles
+crackling
+crackly
+crackpot
+crackpots
+cracks
+cradle
+cradled
+cradles
+cradling
+craft
+crafted
+crafter
+craftier
+craftiest
+craftily
+crafting
+crafts
+craftsman
+craftsmanship
+craftsmen
+craftspeople
+crafty
+crag
+craggy
+crags
+cram
+crammed
+crammer
+cramming
+cramp
+cramped
+cramping
+crampon
+crampons
+cramps
+crams
+cran
+cranberries
+cranberry
+crane
+craned
+cranes
+cranial
+craning
+cranium
+crank
+cranked
+cranking
+cranks
+crankshaft
+cranky
+crannies
+cranny
+crap
+crash
+crashed
+crasher
+crashers
+crashes
+crashing
+crashingly
+crashland
+crashlanded
+crashlanding
+crass
+crasser
+crassly
+crassness
+crate
+crateful
+crater
+cratered
+craters
+crates
+cravat
+cravats
+crave
+craved
+craven
+cravenly
+craves
+craving
+cravings
+crawl
+crawled
+crawler
+crawlers
+crawling
+crawls
+craws
+crayfish
+crayon
+crayoned
+crayons
+craze
+crazed
+crazes
+crazier
+craziest
+crazily
+craziness
+crazy
+creak
+creaked
+creakier
+creakiest
+creaking
+creaks
+creaky
+cream
+creamed
+creamer
+creamery
+creamier
+creamiest
+creaming
+creams
+creamy
+crease
+creased
+creases
+creasing
+creatable
+create
+created
+creates
+creating
+creation
+creationism
+creationist
+creationists
+creations
+creative
+creatively
+creativeness
+creativity
+creator
+creators
+creature
+creatures
+creche
+creches
+credence
+credentials
+credibility
+credible
+credibly
+credit
+creditability
+creditable
+creditably
+credited
+crediting
+creditor
+creditors
+credits
+creditworthiness
+creditworthy
+credo
+credulity
+credulous
+creed
+creeds
+creek
+creeks
+creel
+creep
+creeper
+creepers
+creeping
+creeps
+creepy
+cremate
+cremated
+cremates
+cremation
+cremations
+crematoria
+crematorium
+creme
+crenellated
+crenellation
+crenellations
+creole
+creoles
+creosote
+crepe
+crept
+crepuscular
+crescendo
+crescent
+crescents
+cress
+crest
+crested
+crestfallen
+cresting
+crests
+cretaceous
+cretan
+cretans
+crete
+cretin
+cretinous
+cretins
+crevasse
+crevasses
+crevice
+crevices
+crew
+crewed
+crewing
+crewman
+crewmen
+crews
+crib
+cribbage
+cribbed
+cribbing
+cribs
+crick
+cricket
+cricketer
+cricketers
+cricketing
+crickets
+cried
+crier
+cries
+crim
+crime
+crimea
+crimes
+criminal
+criminalisation
+criminalise
+criminalised
+criminalising
+criminality
+criminally
+criminals
+criminological
+criminologist
+criminologists
+criminology
+crimp
+crimped
+crimping
+crimson
+cringe
+cringed
+cringes
+cringing
+crinkle
+crinkled
+crinkling
+crinkly
+crinoline
+cripple
+crippled
+cripples
+crippling
+cripplingly
+crises
+crisis
+crisp
+crisped
+crisper
+crispier
+crispiest
+crisply
+crispness
+crisps
+crispy
+crisscrossed
+crisscrosses
+criteria
+criterion
+critic
+critical
+critically
+criticise
+criticised
+criticises
+criticising
+criticism
+criticisms
+critics
+critique
+critiques
+critter
+croak
+croaked
+croakier
+croakiest
+croaking
+croaks
+croatia
+croatian
+crochet
+crocheted
+crochets
+crock
+crockery
+crocks
+crocodile
+crocodiles
+crocus
+crocuses
+croft
+crofter
+crofters
+crofting
+crofts
+croissant
+croissants
+crone
+crones
+cronies
+crony
+crook
+crooked
+crookedly
+crookedness
+crooking
+crooks
+croon
+crooned
+crooner
+crooners
+crooning
+croons
+crop
+cropped
+cropper
+croppers
+cropping
+crops
+croquet
+croqueted
+croqueting
+croquette
+crores
+crosier
+crosiers
+cross
+crossbar
+crossbars
+crossbones
+crossbow
+crossbows
+crossbred
+crosscheck
+crosschecked
+crosschecking
+crosschecks
+crosscountry
+crossed
+crosser
+crosses
+crossexamination
+crossexamine
+crossexamined
+crossexamines
+crossexamining
+crossfertilisation
+crossfire
+crossing
+crossings
+crossly
+crossness
+crossover
+crossovers
+crossreference
+crossreferenced
+crossreferences
+crossreferencing
+crossroads
+crosssection
+crosssectional
+crosssections
+crosstalk
+crossways
+crosswind
+crosswinds
+crossword
+crosswords
+crotch
+crotchet
+crotchetiness
+crotchety
+crotchless
+crouch
+crouched
+crouches
+crouching
+croup
+croupier
+croutons
+crow
+crowbar
+crowbars
+crowd
+crowded
+crowding
+crowds
+crowed
+crowing
+crown
+crowned
+crowning
+crowns
+crows
+crozier
+croziers
+crucial
+crucially
+cruciate
+crucible
+crucibles
+crucifiable
+crucified
+crucifix
+crucifixes
+crucifixion
+crucifixions
+cruciform
+crucify
+crucifying
+crude
+crudely
+crudeness
+cruder
+crudest
+crudities
+crudity
+cruel
+crueler
+cruelest
+crueller
+cruellest
+cruelly
+cruelness
+cruelties
+cruelty
+cruise
+cruised
+cruiser
+cruisers
+cruises
+cruising
+cruller
+crumb
+crumbing
+crumble
+crumbled
+crumbles
+crumblier
+crumbliest
+crumbling
+crumbly
+crumbs
+crumby
+crummy
+crumpet
+crumpets
+crumple
+crumpled
+crumples
+crumpling
+crunch
+crunched
+cruncher
+crunchers
+crunches
+crunchier
+crunchiest
+crunching
+crunchy
+crusade
+crusaded
+crusader
+crusaders
+crusades
+crusading
+crush
+crushed
+crusher
+crushers
+crushes
+crushing
+crushingly
+crust
+crustacean
+crustaceans
+crustal
+crusted
+crustier
+crustiest
+crusts
+crusty
+crutch
+crutches
+crux
+cruxes
+cry
+crying
+cryings
+cryogenic
+cryogenics
+cryostat
+crypt
+cryptanalysis
+cryptanalyst
+cryptanalytic
+cryptic
+cryptically
+cryptogram
+cryptographer
+cryptographers
+cryptographic
+cryptographically
+cryptography
+cryptology
+crypts
+crystal
+crystalclear
+crystalline
+crystallisation
+crystallise
+crystallised
+crystallises
+crystallising
+crystallographer
+crystallographers
+crystallographic
+crystallography
+crystals
+cub
+cuba
+cuban
+cubans
+cube
+cubed
+cubes
+cubic
+cubical
+cubically
+cubicle
+cubicles
+cubing
+cubism
+cubist
+cubistic
+cubists
+cubit
+cubits
+cuboid
+cubs
+cuckold
+cuckolded
+cuckoo
+cuckoos
+cucumber
+cucumbers
+cud
+cuddle
+cuddled
+cuddles
+cuddlier
+cuddliest
+cuddliness
+cuddling
+cuddly
+cudgel
+cudgels
+cuds
+cue
+cued
+cueing
+cues
+cuff
+cuffed
+cuffing
+cuffs
+cuing
+cuirass
+cuisine
+culdesac
+culinary
+cull
+culled
+culling
+culls
+culminate
+culminated
+culminates
+culminating
+culmination
+culpability
+culpable
+culpably
+culprit
+culprits
+cult
+cultivable
+cultivar
+cultivate
+cultivated
+cultivates
+cultivating
+cultivation
+cultivations
+cultivator
+cultivators
+cults
+cultural
+culturally
+culture
+cultured
+cultures
+culturing
+cultus
+culvert
+cumbersome
+cumbersomely
+cumlaude
+cummerbund
+cumulative
+cumulatively
+cumulus
+cuneiform
+cunnilingus
+cunning
+cunningly
+cup
+cupboard
+cupboards
+cupful
+cupid
+cupidinously
+cupidity
+cupola
+cupolas
+cupped
+cupping
+cuprous
+cups
+cur
+curable
+curare
+curate
+curated
+curates
+curative
+curator
+curatorial
+curators
+curatorships
+curb
+curbed
+curbing
+curbs
+curd
+curdle
+curdled
+curdles
+curdling
+curds
+cure
+cured
+curer
+cures
+curfew
+curfews
+curia
+curial
+curie
+curies
+curing
+curio
+curiosities
+curiosity
+curious
+curiously
+curl
+curled
+curlers
+curlew
+curlews
+curlicues
+curlier
+curliest
+curliness
+curling
+curls
+curly
+curmudgeons
+currant
+currants
+currencies
+currency
+current
+currently
+currents
+curricle
+curricula
+curricular
+curriculum
+curried
+curries
+curry
+currying
+curs
+curse
+cursed
+curses
+cursing
+cursive
+cursor
+cursorily
+cursors
+cursory
+curt
+curtail
+curtailed
+curtailing
+curtailment
+curtailments
+curtails
+curtain
+curtained
+curtaining
+curtains
+curtilage
+curtly
+curtness
+curtsey
+curtseyed
+curtseying
+curtseys
+curtsied
+curtsies
+curtsy
+curtsying
+curvaceous
+curvature
+curvatures
+curve
+curved
+curves
+curvilinear
+curving
+curvy
+cushion
+cushioned
+cushioning
+cushions
+cusp
+cusps
+cuss
+cussedness
+custard
+custards
+custodial
+custodian
+custodians
+custodianship
+custody
+custom
+customarily
+customary
+customer
+customers
+customisable
+customisation
+customisations
+customise
+customised
+customising
+customs
+cut
+cutback
+cutbacks
+cute
+cutely
+cuteness
+cutest
+cuticle
+cuticles
+cutlass
+cutlasses
+cutler
+cutlery
+cutlet
+cutlets
+cutout
+cutouts
+cutprice
+cutrate
+cuts
+cutter
+cutters
+cutthroat
+cutting
+cuttingly
+cuttings
+cuttle
+cuttlefish
+cyan
+cyanide
+cyanogen
+cybernetic
+cybernetics
+cyberpunk
+cyberspace
+cyborg
+cycad
+cycads
+cycle
+cycled
+cycles
+cycleway
+cycleways
+cyclic
+cyclical
+cyclically
+cycling
+cyclist
+cyclists
+cycloid
+cyclone
+cyclones
+cyclops
+cyclotron
+cyclotrons
+cygnet
+cygnets
+cylinder
+cylinders
+cylindrical
+cylindrically
+cymbal
+cymbals
+cynic
+cynical
+cynically
+cynicism
+cynics
+cypher
+cyphers
+cypress
+cypresses
+cyprian
+cyprians
+cypriot
+cypriots
+cyprus
+cyst
+cysteine
+cystic
+cystine
+cystitis
+cysts
+cytochrome
+cytogenetic
+cytological
+cytology
+cytoplasm
+cytoplasmic
+cytosine
+cytotoxic
+czar
+czars
+czech
+czechs
+dab
+dabbed
+dabbing
+dabble
+dabbled
+dabbler
+dabbles
+dabbling
+dabs
+dace
+dacha
+dachau
+dachshund
+dactyl
+dactylic
+dactyls
+dad
+daddies
+daddy
+daddylonglegs
+dado
+dads
+daemon
+daemonic
+daemons
+daffodil
+daffodils
+daffy
+daft
+dafter
+daftest
+daftness
+dagama
+dagga
+dagger
+daggers
+dahlia
+dahlias
+dahomey
+dailies
+daily
+daintier
+daintiest
+daintily
+daintiness
+dainty
+dairies
+dairy
+dairying
+dairyman
+dairymen
+dais
+daisies
+daisy
+dakar
+dakoits
+dale
+dales
+dallas
+dalliance
+dallied
+dally
+dallying
+dam
+damage
+damaged
+damages
+damaging
+damagingly
+damascus
+damask
+dame
+dames
+dammed
+damming
+damn
+damnable
+damnably
+damnation
+damned
+damnify
+damning
+damningly
+damns
+damp
+damped
+dampen
+dampened
+dampening
+dampens
+damper
+dampers
+dampest
+damping
+dampish
+damply
+dampness
+damps
+dams
+damsel
+damsels
+damson
+damsons
+dan
+dance
+danceable
+danced
+dancer
+dancers
+dances
+dancing
+dandelion
+dandelions
+dandies
+dandruff
+dandy
+dane
+danes
+danger
+dangerous
+dangerously
+dangerousness
+dangers
+dangle
+dangled
+dangles
+dangling
+daniel
+danish
+dank
+dankest
+dante
+danube
+danzig
+dapper
+dapple
+dappled
+dapples
+dare
+dared
+daredevil
+dares
+daring
+daringly
+dark
+darken
+darkened
+darkening
+darkens
+darker
+darkest
+darkish
+darkly
+darkness
+darkroom
+darkrooms
+darling
+darlings
+darn
+darned
+darning
+darns
+dart
+dartboard
+dartboards
+darted
+darter
+darters
+darting
+darts
+darwin
+dash
+dashboard
+dashed
+dashes
+dashing
+dassie
+dassies
+dastardly
+data
+database
+databases
+datable
+date
+dated
+dateline
+dates
+dating
+dative
+datum
+daub
+daubed
+dauber
+daubing
+daughter
+daughterinlaw
+daughters
+daughtersinlaw
+daunt
+daunted
+daunting
+dauntingly
+dauntless
+daunts
+dauphin
+dauphins
+david
+davinci
+dawdle
+dawdled
+dawdling
+dawn
+dawned
+dawning
+dawns
+day
+daybreak
+daycare
+daydream
+daydreaming
+daydreams
+daylight
+daylights
+daylong
+dayold
+days
+daytime
+daze
+dazed
+dazedly
+dazing
+dazzle
+dazzled
+dazzler
+dazzles
+dazzling
+dazzlingly
+dday
+deacon
+deaconess
+deaconesses
+deacons
+deactivate
+deactivated
+deactivates
+deactivating
+deactivation
+dead
+deadbeat
+deaden
+deadend
+deadened
+deadening
+deadens
+deader
+deadlier
+deadliest
+deadline
+deadlines
+deadlock
+deadlocked
+deadlocking
+deadlocks
+deadly
+deadness
+deadon
+deadpan
+deadsea
+deaf
+deafanddumb
+deafen
+deafened
+deafening
+deafeningly
+deafens
+deafer
+deafest
+deafness
+deal
+dealer
+dealers
+dealership
+dealerships
+dealing
+dealings
+deals
+dealt
+dean
+deanery
+deans
+dear
+dearer
+dearest
+dearie
+dearies
+dearly
+dearness
+dears
+dearth
+deary
+death
+deathbed
+deathless
+deathly
+deaths
+deb
+debacle
+debacles
+debar
+debark
+debarred
+debars
+debase
+debased
+debasement
+debaser
+debasing
+debatable
+debate
+debated
+debater
+debaters
+debates
+debating
+debauch
+debauched
+debauchery
+debenture
+debentures
+debilitate
+debilitated
+debilitating
+debility
+debit
+debited
+debiting
+debits
+debonair
+debone
+deboned
+debones
+debrief
+debriefed
+debriefing
+debris
+debt
+debtor
+debtors
+debts
+debug
+debugged
+debugger
+debuggers
+debugging
+debugs
+debunk
+debunks
+debut
+debutant
+debutante
+debutantes
+debutants
+debuts
+decade
+decadence
+decadent
+decades
+decaf
+decaffeinate
+decaffeinated
+decagon
+decagons
+decamp
+decamped
+decant
+decanted
+decanter
+decanters
+decanting
+decants
+decapitate
+decapitated
+decapitates
+decapitating
+decapitation
+decapitations
+decapod
+decathlon
+decay
+decayed
+decaying
+decays
+decease
+deceased
+deceases
+deceit
+deceitful
+deceitfulness
+deceits
+deceive
+deceived
+deceiver
+deceives
+deceiving
+decelerate
+decelerated
+decelerates
+decelerating
+deceleration
+decelerations
+december
+decency
+decent
+decently
+decentralisation
+decentralise
+decentralised
+decentralising
+deception
+deceptions
+deceptive
+deceptively
+decibel
+decibels
+decidability
+decidable
+decide
+decided
+decidedly
+decider
+decides
+deciding
+deciduous
+decile
+deciles
+decilitre
+decimal
+decimalisation
+decimalise
+decimals
+decimate
+decimated
+decimating
+decimation
+decimetres
+decipher
+decipherable
+deciphered
+deciphering
+decipherment
+decipherments
+decision
+decisions
+decisive
+decisively
+decisiveness
+deck
+deckchair
+deckchairs
+decked
+decker
+decking
+decks
+declaim
+declaimed
+declaiming
+declaims
+declamation
+declamatory
+declaration
+declarations
+declarative
+declaratory
+declare
+declared
+declarer
+declarers
+declares
+declaring
+declassification
+declassified
+declension
+declensions
+declination
+declinations
+decline
+declined
+declines
+declining
+declivity
+deco
+decode
+decoded
+decoder
+decoders
+decodes
+decoding
+decoke
+decolonisation
+decommission
+decommissioned
+decommissioning
+decomposable
+decompose
+decomposed
+decomposes
+decomposing
+decomposition
+decompositions
+decompress
+decompressed
+decompressing
+decompression
+decongestants
+deconstruct
+deconstructed
+deconstructing
+deconstruction
+deconstructionist
+deconstructive
+decontaminated
+decontaminating
+decontamination
+deconvolution
+deconvolve
+decor
+decorate
+decorated
+decorates
+decorating
+decoration
+decorations
+decorative
+decoratively
+decorator
+decorators
+decorous
+decorously
+decors
+decorum
+decouple
+decoupled
+decoupling
+decoy
+decoyed
+decoying
+decoys
+decrease
+decreased
+decreases
+decreasing
+decreasingly
+decree
+decreed
+decreeing
+decrees
+decrement
+decremental
+decremented
+decrementing
+decrements
+decrepit
+decrepitude
+decried
+decries
+decriminalisation
+decriminalise
+decriminalised
+decriminalising
+decry
+decrying
+decrypt
+decrypted
+decrypting
+decryption
+decrypts
+decustomised
+dedicate
+dedicated
+dedicates
+dedicating
+dedication
+dedications
+deduce
+deduced
+deduces
+deducible
+deducing
+deduct
+deducted
+deductible
+deducting
+deduction
+deductions
+deductive
+deductively
+deducts
+dee
+deed
+deeds
+deejay
+deem
+deemed
+deeming
+deems
+deep
+deepen
+deepened
+deepening
+deepens
+deeper
+deepest
+deepfreeze
+deepfreezing
+deepfried
+deepfrozen
+deepish
+deeply
+deepness
+deeprooted
+deeps
+deepsea
+deepseated
+deer
+deerstalker
+deerstalkers
+deerstalking
+deface
+defaced
+defaces
+defacing
+defacto
+defamation
+defamatory
+defame
+defamed
+defamer
+defames
+defaming
+default
+defaulted
+defaulter
+defaulters
+defaulting
+defaults
+defeat
+defeated
+defeater
+defeating
+defeatism
+defeatist
+defeats
+defecate
+defecating
+defect
+defected
+defecting
+defection
+defections
+defective
+defectiveness
+defectives
+defector
+defectors
+defects
+defence
+defenceless
+defencelessness
+defences
+defend
+defendant
+defendants
+defended
+defender
+defenders
+defending
+defends
+defenestrate
+defenestrated
+defenestration
+defenses
+defensibility
+defensible
+defensive
+defensively
+defensiveness
+defer
+deference
+deferential
+deferentially
+deferment
+deferral
+deferred
+deferring
+defers
+defiance
+defiant
+defiantly
+defibrillator
+defibrillators
+deficiencies
+deficiency
+deficient
+deficit
+deficits
+defied
+defier
+defies
+defile
+defiled
+defilement
+defiles
+defiling
+definable
+definably
+define
+defined
+definer
+defines
+defining
+definite
+definitely
+definiteness
+definition
+definitional
+definitions
+definitive
+definitively
+definitiveness
+deflatable
+deflate
+deflated
+deflates
+deflating
+deflation
+deflationary
+deflect
+deflected
+deflecting
+deflection
+deflections
+deflector
+deflectors
+deflects
+deflower
+deflowering
+defoliants
+defoliation
+deforestation
+deforested
+deform
+deformable
+deformation
+deformations
+deformed
+deforming
+deformities
+deformity
+deforms
+defragmentation
+defraud
+defrauded
+defrauding
+defrauds
+defray
+defrayed
+defrost
+defrosted
+defrosting
+defrosts
+deft
+defter
+deftly
+deftness
+defunct
+defuse
+defused
+defuses
+defusing
+defy
+defying
+degas
+degauss
+degaussed
+degaussing
+degeneracies
+degeneracy
+degenerate
+degenerated
+degenerates
+degenerating
+degeneration
+degenerative
+degradable
+degradation
+degradations
+degrade
+degraded
+degrades
+degrading
+degrease
+degree
+degrees
+dehorn
+dehumanised
+dehumanises
+dehumanising
+dehumidifier
+dehydrate
+dehydrated
+dehydrating
+dehydration
+deification
+deified
+deifies
+deify
+deifying
+deism
+deist
+deists
+deities
+deity
+deject
+dejected
+dejectedly
+dejection
+dejects
+deklerk
+delate
+delay
+delayed
+delaying
+delays
+delectable
+delectation
+delegate
+delegated
+delegates
+delegating
+delegation
+delegations
+deletable
+delete
+deleted
+deleter
+deleterious
+deleteriously
+deletes
+deleting
+deletion
+deletions
+delhi
+deli
+deliberate
+deliberated
+deliberately
+deliberating
+deliberation
+deliberations
+deliberative
+delible
+delicacies
+delicacy
+delicate
+delicately
+delicatessen
+delicatessens
+delicious
+deliciously
+delict
+delight
+delighted
+delightedly
+delightful
+delightfully
+delighting
+delights
+delilah
+delimit
+delimited
+delimiter
+delimiters
+delimiting
+delimits
+delineate
+delineated
+delineates
+delineating
+delineation
+delinquency
+delinquent
+delinquents
+deliquesced
+deliquescent
+delirious
+deliriously
+delirium
+deliver
+deliverable
+deliverance
+delivered
+deliverer
+deliverers
+deliveries
+delivering
+delivers
+delivery
+dell
+dells
+delphi
+delphiniums
+delta
+deltas
+deltoid
+deltoids
+delude
+deluded
+deludes
+deluding
+deluge
+deluged
+deluges
+deluging
+delusion
+delusional
+delusions
+delusive
+deluxe
+delve
+delved
+delves
+delving
+demagnetisation
+demagnetise
+demagog
+demagogic
+demagogue
+demagoguery
+demagogues
+demagogy
+demand
+demanded
+demander
+demanding
+demands
+demarcate
+demarcated
+demarcating
+demarcation
+demarcations
+dematerialise
+dematerialised
+dematerialises
+demean
+demeaned
+demeaning
+demeanour
+demeans
+dement
+demented
+dementedly
+dementia
+demerge
+demerit
+demigod
+demigods
+demijohns
+demilitarisation
+demilitarised
+demise
+demised
+demises
+demist
+demists
+demo
+demobilisation
+demobilised
+demobs
+democracies
+democracy
+democrat
+democratic
+democratically
+democratisation
+democratising
+democrats
+demodulator
+demographer
+demographers
+demographic
+demographically
+demographics
+demography
+demolish
+demolished
+demolisher
+demolishes
+demolishing
+demolition
+demolitions
+demon
+demonic
+demonise
+demonology
+demons
+demonstrable
+demonstrably
+demonstrate
+demonstrated
+demonstrates
+demonstrating
+demonstration
+demonstrations
+demonstrative
+demonstratively
+demonstratives
+demonstrator
+demonstrators
+demoralisation
+demoralise
+demoralised
+demoralising
+demote
+demoted
+demotes
+demotic
+demotion
+demount
+demountable
+demounted
+demounting
+demur
+demure
+demurely
+demurred
+demurring
+demurs
+demystification
+demystify
+demystifying
+den
+denationalisation
+denatured
+denaturing
+dendrites
+dendritic
+dendrochronological
+dendrochronology
+deniable
+denial
+denials
+denied
+denier
+deniers
+denies
+denigrate
+denigrated
+denigrates
+denigrating
+denigration
+denigrations
+denim
+denims
+denizen
+denizens
+denmark
+denominated
+denomination
+denominational
+denominations
+denominator
+denominators
+denotation
+denotational
+denotations
+denote
+denoted
+denotes
+denoting
+denouement
+denounce
+denounced
+denouncements
+denounces
+denouncing
+dens
+dense
+densely
+denseness
+denser
+densest
+densities
+densitometry
+density
+dent
+dental
+dented
+dentin
+dentine
+denting
+dentist
+dentistry
+dentists
+dentition
+dents
+denture
+dentures
+denudation
+denude
+denuded
+denudes
+denunciation
+denunciations
+denver
+deny
+denying
+deodorant
+deodorants
+deodorised
+depart
+departed
+departer
+departing
+department
+departmental
+departmentally
+departments
+departs
+departure
+departures
+depend
+dependability
+dependable
+dependant
+dependants
+depended
+dependence
+dependencies
+dependency
+dependent
+depending
+depends
+depersonalisation
+depersonalising
+depict
+depicted
+depicting
+depiction
+depictions
+depicts
+deplete
+depleted
+depleting
+depletion
+deplorable
+deplorably
+deplore
+deplored
+deplores
+deploring
+deploy
+deployed
+deploying
+deployment
+deployments
+deploys
+depolarisation
+depolarisations
+depoliticisation
+deponent
+depopulated
+depopulation
+deport
+deportation
+deportations
+deported
+deportee
+deportees
+deporting
+deportment
+deports
+depose
+deposed
+deposing
+deposit
+depositary
+deposited
+depositing
+deposition
+depositional
+depositions
+depositories
+depositors
+depository
+deposits
+depot
+depots
+deprave
+depraved
+depraves
+depraving
+depravity
+deprecate
+deprecated
+deprecates
+deprecating
+deprecatingly
+deprecation
+deprecations
+deprecatory
+depreciate
+depreciated
+depreciating
+depreciation
+depredation
+depredations
+depress
+depressant
+depressants
+depressed
+depresses
+depressing
+depressingly
+depression
+depressions
+depressive
+depressives
+deprivation
+deprivations
+deprive
+deprived
+deprives
+depriving
+depth
+depths
+deputation
+deputations
+depute
+deputed
+deputes
+deputies
+deputise
+deputised
+deputises
+deputising
+deputy
+derail
+derailed
+derailing
+derailment
+derails
+derange
+deranged
+derangement
+derate
+derated
+derates
+derbies
+derby
+deregulate
+deregulated
+deregulating
+deregulation
+derelict
+dereliction
+derelictions
+deride
+derided
+deriders
+derides
+deriding
+derision
+derisive
+derisively
+derisory
+derivable
+derivation
+derivations
+derivative
+derivatively
+derivatives
+derive
+derived
+derives
+deriving
+dermal
+dermatitis
+dermatological
+dermatologist
+dermatologists
+dermatology
+dermic
+dermis
+derogate
+derogation
+derogations
+derogatory
+derrick
+dervishes
+desalination
+desalt
+desaturated
+descant
+descend
+descendant
+descendants
+descended
+descendent
+descender
+descenders
+descending
+descends
+descent
+descents
+describable
+describe
+described
+describer
+describers
+describes
+describing
+description
+descriptions
+descriptive
+descriptively
+descriptiveness
+descriptivism
+descriptor
+descriptors
+desecrate
+desecrated
+desecrates
+desecrating
+desecration
+desegregation
+deselected
+desensitising
+desert
+deserted
+deserter
+deserters
+desertification
+deserting
+desertion
+desertions
+deserts
+deserve
+deserved
+deservedly
+deserves
+deserving
+desiccated
+desiccation
+desiccator
+desiderata
+desideratum
+design
+designable
+designate
+designated
+designates
+designating
+designation
+designational
+designations
+designator
+designators
+designed
+designedly
+designer
+designers
+designing
+designs
+desirabilia
+desirability
+desirable
+desirableness
+desirably
+desire
+desired
+desires
+desiring
+desirous
+desist
+desisted
+desisting
+desk
+deskilling
+desks
+desktop
+desktops
+desolate
+desolated
+desolating
+desolation
+desorption
+despair
+despaired
+despairing
+despairingly
+despairs
+despatch
+despatched
+despatches
+despatching
+desperado
+desperate
+desperately
+desperation
+despicable
+despicably
+despisal
+despise
+despised
+despises
+despising
+despite
+despoil
+despoiled
+despoiling
+despond
+despondency
+despondent
+despondently
+despot
+despotic
+despotism
+despots
+dessert
+desserts
+dessicated
+dessication
+destabilisation
+destabilise
+destabilised
+destabilising
+destination
+destinations
+destine
+destined
+destinies
+destiny
+destitute
+destitution
+destroy
+destroyable
+destroyed
+destroyer
+destroyers
+destroying
+destroys
+destruct
+destruction
+destructive
+destructively
+destructiveness
+desuetude
+desultorily
+desultoriness
+desultory
+detach
+detachable
+detached
+detaches
+detaching
+detachment
+detachments
+detail
+detailed
+detailing
+details
+detain
+detained
+detainee
+detainees
+detainer
+detaining
+detains
+detect
+detectability
+detectable
+detectably
+detected
+detecting
+detection
+detections
+detective
+detectives
+detector
+detectors
+detects
+detent
+detente
+detention
+detentions
+deter
+detergent
+detergents
+deteriorate
+deteriorated
+deteriorates
+deteriorating
+deterioration
+determinable
+determinacy
+determinant
+determinants
+determinate
+determinately
+determination
+determinations
+determinative
+determine
+determined
+determinedly
+determiner
+determines
+determining
+determinism
+determinist
+deterministic
+deterministically
+deterred
+deterrence
+deterrent
+deterrents
+deterring
+deters
+detest
+detestable
+detestably
+detestation
+detested
+detester
+detesters
+detesting
+detests
+dethrone
+dethroned
+detonate
+detonated
+detonates
+detonating
+detonation
+detonations
+detonator
+detonators
+detour
+detoured
+detours
+detox
+detoxification
+detoxify
+detract
+detracted
+detracting
+detraction
+detractor
+detractors
+detracts
+detriment
+detrimental
+detrimentally
+detrital
+detritus
+detroit
+deuce
+deuced
+deuces
+deuterium
+deuteron
+devaluation
+devaluations
+devalue
+devalued
+devalues
+devaluing
+devastate
+devastated
+devastating
+devastatingly
+devastation
+develop
+developed
+developer
+developers
+developing
+development
+developmental
+developmentally
+developments
+develops
+deviance
+deviancy
+deviant
+deviants
+deviate
+deviated
+deviates
+deviating
+deviation
+deviations
+device
+devices
+devil
+devilish
+devilishly
+devilled
+devilment
+devilry
+devils
+devious
+deviously
+deviousness
+devisal
+devise
+devised
+deviser
+devises
+devising
+devoice
+devoid
+devoir
+devolution
+devolve
+devolved
+devolving
+devote
+devoted
+devotedly
+devotedness
+devotee
+devotees
+devotes
+devoting
+devotion
+devotional
+devotions
+devour
+devoured
+devourer
+devourers
+devouring
+devours
+devout
+devoutly
+devoutness
+dew
+dewdrop
+dewdrops
+dews
+dewy
+dexterity
+dexterous
+dexterously
+dextral
+dextrose
+dextrous
+dextrously
+dhow
+diabetes
+diabetic
+diabetics
+diabolic
+diabolical
+diabolically
+diabolism
+diachronic
+diaconal
+diacritical
+diacriticals
+diacritics
+diadem
+diadems
+diagnosable
+diagnose
+diagnosed
+diagnoses
+diagnosing
+diagnosis
+diagnostic
+diagnostically
+diagnostician
+diagnostics
+diagonal
+diagonalise
+diagonalised
+diagonalises
+diagonalising
+diagonally
+diagonals
+diagram
+diagrammatic
+diagrammatically
+diagrams
+dial
+dialect
+dialectal
+dialectic
+dialectical
+dialectically
+dialectics
+dialects
+dialing
+dialled
+dialler
+dialling
+dialog
+dialogue
+dialogues
+dials
+dialysis
+diamante
+diameter
+diameters
+diametric
+diametrically
+diamond
+diamonds
+diana
+diapason
+diaper
+diapers
+diaphanous
+diaphragm
+diaphragmatic
+diaphragms
+diaries
+diarist
+diarrhea
+diarrhoea
+diarrhoeal
+diary
+diaspora
+diastolic
+diathermy
+diatom
+diatomic
+diatoms
+diatonic
+diatribe
+diatribes
+dice
+diced
+dices
+dicey
+dichloride
+dichotomies
+dichotomous
+dichotomy
+diciest
+dicing
+dickens
+dictate
+dictated
+dictates
+dictating
+dictation
+dictator
+dictatorial
+dictatorially
+dictators
+dictatorship
+dictatorships
+diction
+dictionaries
+dictionary
+dictions
+dictum
+did
+didactic
+didnt
+die
+died
+diehard
+diehards
+dielectric
+dielectrics
+dies
+diesel
+dieselelectric
+diesels
+diet
+dietary
+dieted
+dieter
+dietetic
+dietician
+dieticians
+dieting
+dietitian
+dietitians
+diets
+differ
+differed
+difference
+differences
+differencing
+different
+differentiability
+differentiable
+differential
+differentially
+differentials
+differentiate
+differentiated
+differentiates
+differentiating
+differentiation
+differentiations
+differentiators
+differently
+differing
+differs
+difficult
+difficulties
+difficulty
+diffidence
+diffident
+diffidently
+diffract
+diffracted
+diffracting
+diffraction
+diffracts
+diffuse
+diffused
+diffuser
+diffusers
+diffuses
+diffusing
+diffusion
+diffusional
+diffusive
+diffusivity
+dig
+digest
+digested
+digester
+digestible
+digesting
+digestion
+digestions
+digestive
+digestives
+digests
+digger
+diggers
+digging
+diggings
+digit
+digital
+digitalis
+digitally
+digitisation
+digitise
+digitised
+digitiser
+digitisers
+digitising
+digits
+dignified
+dignify
+dignifying
+dignitaries
+dignitary
+dignities
+dignity
+digraphs
+digress
+digressed
+digressing
+digression
+digressions
+digs
+dihedral
+dikes
+diktat
+diktats
+dilapidated
+dilapidation
+dilatation
+dilate
+dilated
+dilates
+dilating
+dilation
+dilator
+dilatory
+dildo
+dilemma
+dilemmas
+dilettante
+dilettantes
+diligence
+diligent
+diligently
+dill
+dilly
+diluent
+dilute
+diluted
+diluter
+dilutes
+diluting
+dilution
+dilutions
+dim
+dime
+dimension
+dimensional
+dimensionality
+dimensionally
+dimensioned
+dimensioning
+dimensionless
+dimensions
+dimer
+dimers
+dimes
+diminish
+diminishable
+diminished
+diminishes
+diminishing
+diminuendo
+diminution
+diminutive
+diminutives
+dimly
+dimmed
+dimmer
+dimmers
+dimmest
+dimming
+dimness
+dimorphic
+dimorphism
+dimple
+dimpled
+dimples
+dims
+dimwit
+din
+dinar
+dinars
+dine
+dined
+diner
+diners
+dines
+ding
+dingdong
+dinged
+dinghies
+dinghy
+dingier
+dingiest
+dinginess
+dingle
+dingo
+dingy
+dining
+dinky
+dinner
+dinners
+dinosaur
+dinosaurs
+dint
+dints
+diocesan
+diocese
+diode
+diodes
+dioptre
+dioptres
+dioxide
+dioxides
+dioxin
+dioxins
+dip
+diphtheria
+diphthong
+diphthongs
+diplexers
+diploid
+diploma
+diplomacy
+diplomas
+diplomat
+diplomatic
+diplomatically
+diplomats
+dipolar
+dipole
+dipoles
+dipped
+dipper
+dipping
+dips
+dipsomania
+dipsomaniac
+dipsomaniacs
+dipstick
+dipsticks
+dire
+direct
+directed
+directing
+direction
+directional
+directionality
+directionally
+directionless
+directions
+directive
+directives
+directly
+directness
+director
+directorate
+directorates
+directorial
+directories
+directors
+directorship
+directorships
+directory
+directs
+direly
+direness
+direst
+dirge
+dirges
+dirigible
+dirigiste
+dirt
+dirtied
+dirtier
+dirties
+dirtiest
+dirtily
+dirtiness
+dirts
+dirty
+dirtying
+disabilities
+disability
+disable
+disabled
+disablement
+disables
+disabling
+disabuse
+disabused
+disadvantage
+disadvantaged
+disadvantageous
+disadvantageously
+disadvantages
+disaffected
+disaffection
+disaffiliate
+disaffiliated
+disaffiliating
+disaffiliation
+disaggregate
+disaggregated
+disaggregation
+disagree
+disagreeable
+disagreeably
+disagreed
+disagreeing
+disagreement
+disagreements
+disagrees
+disallow
+disallowed
+disallowing
+disallows
+disambiguate
+disambiguated
+disambiguating
+disambiguation
+disappear
+disappearance
+disappearances
+disappeared
+disappearing
+disappears
+disappoint
+disappointed
+disappointing
+disappointingly
+disappointment
+disappointments
+disappoints
+disapprobation
+disapproval
+disapprove
+disapproved
+disapproves
+disapproving
+disapprovingly
+disarm
+disarmament
+disarmed
+disarmer
+disarming
+disarmingly
+disarms
+disarranging
+disarray
+disarrayed
+disassemble
+disassembled
+disassembler
+disassembles
+disassembling
+disassembly
+disassociate
+disassociated
+disassociating
+disassociation
+disaster
+disasters
+disastrous
+disastrously
+disavow
+disavowal
+disavowed
+disavowing
+disband
+disbanded
+disbanding
+disbandment
+disbands
+disbars
+disbelief
+disbelieve
+disbelieved
+disbeliever
+disbelievers
+disbelieving
+disbelievingly
+disburse
+disbursed
+disbursement
+disbursements
+disc
+discant
+discard
+discarded
+discarding
+discards
+discern
+discerned
+discernible
+discernibly
+discerning
+discernment
+discerns
+discharge
+discharged
+discharges
+discharging
+disciple
+disciples
+discipleship
+disciplinarian
+disciplinarians
+disciplinary
+discipline
+disciplined
+disciplines
+disciplining
+disclaim
+disclaimed
+disclaimer
+disclaimers
+disclaiming
+disclaims
+disclose
+disclosed
+discloses
+disclosing
+disclosure
+disclosures
+disco
+discography
+discolour
+discolouration
+discoloured
+discolours
+discomfit
+discomfited
+discomfiture
+discomfort
+discomforting
+discomforts
+disconcert
+disconcerted
+disconcerting
+disconcertingly
+disconnect
+disconnected
+disconnecting
+disconnection
+disconnections
+disconnects
+disconsolate
+disconsolately
+disconsolation
+discontent
+discontented
+discontentedly
+discontents
+discontinuance
+discontinuation
+discontinue
+discontinued
+discontinues
+discontinuing
+discontinuities
+discontinuity
+discontinuous
+discontinuously
+discord
+discordance
+discordant
+discords
+discotheque
+discotheques
+discount
+discountability
+discountable
+discounted
+discounting
+discounts
+discourage
+discouraged
+discouragement
+discouragements
+discourages
+discouraging
+discouragingly
+discourse
+discoursed
+discourses
+discoursing
+discourteous
+discourteously
+discourtesy
+discover
+discoverable
+discovered
+discoverer
+discoverers
+discoveries
+discovering
+discovers
+discovery
+discredit
+discreditable
+discredited
+discrediting
+discredits
+discreet
+discreetly
+discreetness
+discrepancies
+discrepancy
+discrepant
+discrete
+discretely
+discretion
+discretionary
+discriminant
+discriminants
+discriminate
+discriminated
+discriminates
+discriminating
+discrimination
+discriminative
+discriminator
+discriminators
+discriminatory
+discs
+discursive
+discursively
+discus
+discuss
+discussable
+discussed
+discusses
+discussing
+discussion
+discussions
+disdain
+disdained
+disdainful
+disdainfully
+disdaining
+disease
+diseased
+diseases
+disembark
+disembarkation
+disembarked
+disembarking
+disembodied
+disembodiment
+disembowel
+disembowelled
+disembowelment
+disembowels
+disenchanted
+disenchantment
+disenfranchise
+disenfranchised
+disenfranchisement
+disenfranchises
+disenfranchising
+disengage
+disengaged
+disengagement
+disengaging
+disentangle
+disentangled
+disentangles
+disentangling
+disequilibrium
+disestablish
+disestablished
+disestablishing
+disestablishment
+disfavour
+disfigure
+disfigured
+disfigurement
+disfigurements
+disfigures
+disfiguring
+disfranchise
+disgorge
+disgorged
+disgorging
+disgrace
+disgraced
+disgraceful
+disgracefully
+disgraces
+disgracing
+disgruntled
+disgruntlement
+disguise
+disguised
+disguises
+disguising
+disgust
+disgusted
+disgustedly
+disgusting
+disgustingly
+disgusts
+dish
+disharmonious
+disharmony
+dishcloth
+disheartened
+disheartening
+dished
+dishes
+dishevelled
+dishier
+dishing
+dishonest
+dishonestly
+dishonesty
+dishonour
+dishonourable
+dishonourably
+dishonoured
+dishpan
+dishwasher
+dishwashers
+dishwater
+dishy
+disillusion
+disillusioned
+disillusioning
+disillusionment
+disincentive
+disincentives
+disinclination
+disinclined
+disinfect
+disinfectant
+disinfectants
+disinfected
+disinfecting
+disinfection
+disinformation
+disingenuous
+disingenuously
+disinherit
+disinherited
+disintegrate
+disintegrated
+disintegrates
+disintegrating
+disintegration
+disinter
+disinterest
+disinterested
+disinterestedly
+disinterestedness
+disinterred
+disinvest
+disinvestment
+disjoin
+disjoint
+disjointed
+disjointedly
+disjointness
+disjunct
+disjunction
+disjunctions
+disjunctive
+diskette
+diskettes
+dislike
+disliked
+dislikes
+disliking
+dislocate
+dislocated
+dislocates
+dislocating
+dislocation
+dislocations
+dislodge
+dislodged
+dislodges
+dislodging
+disloyal
+disloyalty
+dismal
+dismally
+dismantle
+dismantled
+dismantles
+dismantling
+dismay
+dismayed
+dismaying
+dismays
+dismember
+dismembered
+dismembering
+dismemberment
+dismembers
+dismiss
+dismissal
+dismissals
+dismissed
+dismisses
+dismissible
+dismissing
+dismissive
+dismissively
+dismount
+dismounted
+dismounting
+dismounts
+disobedience
+disobedient
+disobey
+disobeyed
+disobeying
+disobeys
+disorder
+disordered
+disorderly
+disorders
+disorganisation
+disorganise
+disorganised
+disorganising
+disorient
+disorientated
+disorientating
+disorientation
+disoriented
+disown
+disowned
+disowning
+disowns
+disparage
+disparaged
+disparagement
+disparaging
+disparagingly
+disparate
+disparities
+disparity
+dispassionate
+dispassionately
+dispatch
+dispatched
+dispatcher
+dispatchers
+dispatches
+dispatching
+dispel
+dispelled
+dispelling
+dispels
+dispensable
+dispensaries
+dispensary
+dispensation
+dispensations
+dispense
+dispensed
+dispenser
+dispensers
+dispenses
+dispensing
+dispersal
+dispersant
+disperse
+dispersed
+disperser
+dispersers
+disperses
+dispersing
+dispersion
+dispersions
+dispersive
+dispersively
+dispirited
+dispiritedly
+dispiriting
+displace
+displaced
+displacement
+displacements
+displacer
+displaces
+displacing
+display
+displayable
+displayed
+displaying
+displays
+displease
+displeased
+displeasing
+displeasure
+disporting
+disposable
+disposables
+disposal
+disposals
+dispose
+disposed
+disposer
+disposers
+disposes
+disposing
+disposition
+dispositions
+dispossess
+dispossessed
+dispossession
+disproof
+disproofs
+disproportional
+disproportionally
+disproportionate
+disproportionately
+disprovable
+disprove
+disproved
+disproves
+disproving
+disputable
+disputant
+disputants
+disputation
+disputatious
+dispute
+disputed
+disputes
+disputing
+disqualification
+disqualifications
+disqualified
+disqualifies
+disqualify
+disqualifying
+disquiet
+disquieting
+disquietude
+disquisition
+disquisitions
+disregard
+disregarded
+disregarding
+disregards
+disrepair
+disreputable
+disrepute
+disrespect
+disrespectful
+disrespectfully
+disrespects
+disrobe
+disrobing
+disrupt
+disrupted
+disrupting
+disruption
+disruptions
+disruptive
+disruptively
+disruptor
+disrupts
+dissatisfaction
+dissatisfactions
+dissatisfied
+dissatisfies
+dissatisfy
+dissatisfying
+dissect
+dissected
+dissecting
+dissection
+dissections
+dissector
+dissects
+dissemble
+dissembled
+dissembling
+disseminate
+disseminated
+disseminating
+dissemination
+dissension
+dissensions
+dissent
+dissented
+dissenter
+dissenters
+dissenting
+dissertation
+dissertations
+disservice
+dissidence
+dissident
+dissidents
+dissimilar
+dissimilarities
+dissimilarity
+dissimulation
+dissipate
+dissipated
+dissipates
+dissipating
+dissipation
+dissipative
+dissociate
+dissociated
+dissociating
+dissociation
+dissociative
+dissociatively
+dissolute
+dissolution
+dissolve
+dissolved
+dissolves
+dissolving
+dissonance
+dissonances
+dissonant
+dissuade
+dissuaded
+dissuades
+dissuading
+distaff
+distal
+distally
+distance
+distanced
+distances
+distancing
+distant
+distantly
+distaste
+distasteful
+distastefully
+distemper
+distempered
+distempers
+distended
+distension
+distil
+distillate
+distillation
+distillations
+distilled
+distiller
+distilleries
+distillers
+distillery
+distilling
+distils
+distinct
+distinction
+distinctions
+distinctive
+distinctively
+distinctiveness
+distinctly
+distinctness
+distinguish
+distinguishable
+distinguishably
+distinguished
+distinguishes
+distinguishing
+distort
+distorted
+distorter
+distorting
+distortion
+distortions
+distorts
+distract
+distracted
+distractedly
+distractedness
+distracting
+distractingly
+distraction
+distractions
+distracts
+distraught
+distress
+distressed
+distresses
+distressing
+distressingly
+distributable
+distribute
+distributed
+distributes
+distributing
+distribution
+distributional
+distributions
+distributive
+distributivity
+distributor
+distributors
+district
+districts
+distrust
+distrusted
+distrustful
+distrustfully
+distrusting
+distrusts
+disturb
+disturbance
+disturbances
+disturbed
+disturbing
+disturbingly
+disturbs
+disulphide
+disunion
+disunite
+disunity
+disuse
+disused
+disyllabic
+disyllable
+ditch
+ditched
+ditches
+ditching
+dither
+dithered
+dithering
+dithers
+ditties
+ditto
+ditty
+diuresis
+diuretic
+diuretics
+diurnal
+diva
+divan
+divans
+divas
+dive
+divebombing
+dived
+diver
+diverge
+diverged
+divergence
+divergences
+divergent
+diverges
+diverging
+divers
+diverse
+diversely
+diversification
+diversified
+diversifies
+diversify
+diversifying
+diversion
+diversionary
+diversions
+diversities
+diversity
+divert
+diverted
+diverticular
+diverting
+diverts
+dives
+divest
+divested
+divesting
+divide
+divided
+dividend
+dividends
+divider
+dividers
+divides
+dividing
+divination
+divine
+divined
+divinely
+diviner
+divines
+divinest
+diving
+divining
+divinities
+divinity
+divisibility
+divisible
+division
+divisional
+divisions
+divisive
+divisiveness
+divisor
+divisors
+divorce
+divorced
+divorcee
+divorcees
+divorces
+divorcing
+divot
+divots
+divulge
+divulged
+divulges
+divulging
+dizzier
+dizziest
+dizzily
+dizziness
+dizzy
+dizzying
+dizzyingly
+do
+doberman
+doc
+docile
+docilely
+docility
+dock
+dockage
+docked
+docker
+dockers
+docket
+dockets
+docking
+dockland
+docklands
+docks
+dockside
+dockyard
+dockyards
+docs
+doctor
+doctoral
+doctorate
+doctorates
+doctored
+doctoring
+doctors
+doctrinaire
+doctrinal
+doctrinally
+doctrine
+doctrines
+document
+documentaries
+documentary
+documentation
+documented
+documenting
+documents
+dodecahedra
+dodecahedral
+dodecahedron
+dodge
+dodged
+dodgem
+dodgems
+dodger
+dodgers
+dodges
+dodgier
+dodging
+dodgy
+dodo
+doe
+doer
+doers
+does
+doesnt
+doffed
+doffing
+dog
+dogdays
+doge
+dogeared
+doges
+dogfight
+dogfights
+dogfish
+dogged
+doggedly
+doggedness
+doggerel
+dogging
+doggy
+doglike
+dogma
+dogmas
+dogmatic
+dogmatically
+dogmatism
+dogmatist
+dogmatists
+dogood
+dogooder
+dogooders
+dogs
+dogsbody
+dogtag
+dogy
+doh
+dohs
+doily
+doing
+doings
+doityourself
+doldrums
+dole
+doled
+doleful
+dolefully
+dolerite
+doles
+doling
+doll
+dollar
+dollars
+dolled
+dollies
+dollop
+dolls
+dolly
+dolman
+dolmen
+dolomite
+dolorous
+dolphin
+dolphinarium
+dolphins
+dolt
+domain
+domains
+dome
+domed
+domes
+domestic
+domestically
+domesticated
+domestication
+domesticity
+domestics
+domicile
+domiciled
+domiciliary
+dominance
+dominant
+dominantly
+dominate
+dominated
+dominates
+dominating
+domination
+domineer
+domineered
+domineering
+dominion
+dominions
+domino
+don
+donate
+donated
+donates
+donating
+donation
+donations
+done
+dong
+donga
+donjuan
+donkey
+donkeys
+donned
+donning
+donor
+donors
+dons
+dont
+donut
+doodle
+doodled
+doodles
+doodling
+doom
+doomed
+dooming
+dooms
+doomsday
+door
+doorbell
+doorbells
+doorhandles
+doorkeeper
+doorkeepers
+doorknob
+doorknobs
+doorman
+doormat
+doormats
+doormen
+doornail
+doorpost
+doors
+doorstep
+doorsteps
+doorstop
+doorstops
+doorway
+doorways
+dopamine
+dope
+doped
+dopes
+dopey
+dopier
+doping
+dopy
+dor
+dorado
+dormancy
+dormant
+dormer
+dormers
+dormice
+dormitories
+dormitory
+dormouse
+dorsal
+dorsally
+dosage
+dosages
+dose
+dosed
+doses
+dosing
+dossier
+dossiers
+dot
+dotage
+dote
+doted
+dotes
+doting
+dots
+dotted
+dottiness
+dotting
+dotty
+double
+doublebarrelled
+doublecross
+doublecrossing
+doubled
+doubledealing
+doubledecker
+doubledeckers
+doubles
+doublet
+doubletalk
+doublets
+doubling
+doubly
+doubt
+doubted
+doubter
+doubters
+doubtful
+doubtfully
+doubting
+doubtingly
+doubtless
+doubtlessly
+doubts
+douche
+douching
+dough
+doughnut
+doughnuts
+doughs
+doughty
+dour
+dourly
+dourness
+douse
+doused
+dousing
+dove
+dovecot
+dovecote
+dover
+doves
+dovetail
+dovetails
+dowager
+dowagers
+dowdier
+dowdiest
+dowdy
+dowel
+dowelling
+dowels
+down
+downbeat
+downcast
+downed
+downfall
+downgrade
+downgraded
+downgrades
+downgrading
+downhearted
+downhill
+downing
+downland
+downlands
+download
+downloaded
+downloading
+downloads
+downpipe
+downpipes
+downplay
+downplayed
+downpour
+downpours
+downright
+downs
+downside
+downsize
+downsized
+downsizing
+downstage
+downstairs
+downstream
+downswing
+downtoearth
+downtrodden
+downturn
+downturns
+downward
+downwardly
+downwards
+downwind
+downy
+dowries
+dowry
+dowse
+dowser
+dowsers
+dowsing
+doyen
+doyenne
+doyens
+doze
+dozed
+dozen
+dozens
+dozes
+dozier
+dozing
+dozy
+dr
+drab
+drabness
+drachm
+drachma
+drachmas
+dracone
+draconian
+dracula
+draft
+drafted
+draftee
+draftees
+drafter
+drafters
+draftier
+drafting
+drafts
+draftsman
+drafty
+drag
+dragged
+dragging
+dragnet
+dragon
+dragonflies
+dragonfly
+dragons
+dragoon
+dragooned
+dragoons
+drags
+drain
+drainage
+drained
+drainer
+draining
+drainpipe
+drainpipes
+drains
+drake
+drakes
+dram
+drama
+dramas
+dramatic
+dramatically
+dramatics
+dramatisation
+dramatisations
+dramatise
+dramatised
+dramatising
+dramatist
+dramatists
+dramaturgical
+drank
+drape
+draped
+draper
+draperies
+drapers
+drapery
+drapes
+draping
+drastic
+drastically
+drat
+draught
+draughtier
+draughtiest
+draughts
+draughtsman
+draughtsmanship
+draughtsmen
+draughty
+draw
+drawable
+drawback
+drawbacks
+drawbridge
+drawbridges
+drawcord
+drawees
+drawer
+drawers
+drawing
+drawings
+drawl
+drawled
+drawling
+drawls
+drawn
+draws
+dray
+drays
+dread
+dreaded
+dreadful
+dreadfully
+dreadfulness
+dreading
+dreadlocks
+dreadnought
+dreads
+dream
+dreamed
+dreamer
+dreamers
+dreamier
+dreamiest
+dreamily
+dreaming
+dreamland
+dreamless
+dreamlike
+dreams
+dreamt
+dreamy
+drear
+drearier
+dreariest
+drearily
+dreariness
+dreary
+dredge
+dredged
+dredger
+dredges
+dredging
+dregs
+drench
+drenched
+drenches
+drenching
+dress
+dressage
+dressed
+dresser
+dressers
+dresses
+dressing
+dressings
+dressmaker
+dressmakers
+dressmaking
+dressy
+drew
+dribble
+dribbled
+dribbler
+dribbles
+dribbling
+dried
+drier
+driers
+dries
+driest
+drift
+drifted
+drifter
+drifters
+drifting
+drifts
+driftwood
+drill
+drilled
+driller
+drilling
+drills
+drily
+drink
+drinkable
+drinker
+drinkers
+drinking
+drinks
+drip
+dripdry
+dripped
+dripping
+drippy
+drips
+drivable
+drive
+drive
+drivein
+driveins
+drivel
+drivelled
+drivelling
+drivels
+driven
+driver
+driverless
+drivers
+drives
+driveway
+driveways
+driving
+drizzle
+drizzled
+drizzles
+drizzling
+drizzly
+droll
+droller
+drollery
+drollest
+dromedaries
+dromedary
+drone
+droned
+drones
+droning
+drool
+drooled
+drooling
+drools
+droop
+drooped
+droopier
+droopiest
+drooping
+droopingly
+droops
+droopy
+drop
+droplet
+droplets
+dropout
+dropouts
+dropped
+dropper
+dropping
+droppings
+drops
+dropsy
+dross
+drought
+droughts
+drove
+drover
+drovers
+droves
+droving
+drown
+drowned
+drowning
+drownings
+drowns
+drowse
+drowsed
+drowses
+drowsier
+drowsiest
+drowsily
+drowsiness
+drowsy
+drub
+drubbed
+drubbing
+drudge
+drudgery
+drudges
+drug
+drugged
+drugging
+druggist
+drugs
+druid
+druids
+drum
+drumbeat
+drumbeats
+drummed
+drummer
+drummers
+drumming
+drums
+drumsticks
+drunk
+drunkard
+drunkards
+drunken
+drunkenly
+drunkenness
+drunker
+drunks
+dry
+drycleaned
+drycleaning
+dryer
+dryers
+dryeyed
+drying
+dryish
+dryly
+dryness
+drystone
+dual
+dualism
+dualisms
+dualist
+dualistic
+dualities
+duality
+dually
+duals
+dub
+dubbed
+dubbing
+dubious
+dubiously
+dubiousness
+dublin
+dubs
+duce
+duchess
+duchesses
+duchies
+duchy
+duck
+duckbill
+duckbilled
+duckboards
+ducked
+ducking
+duckings
+duckling
+ducklings
+duckpond
+ducks
+duct
+ducted
+ductile
+ducting
+ducts
+dud
+dude
+dudes
+dudgeon
+duds
+due
+duel
+duelled
+dueller
+duellers
+duelling
+duellist
+duels
+dues
+duet
+duets
+duff
+duffel
+dug
+dugout
+dugouts
+duiker
+duke
+dukedom
+dukedoms
+dukes
+dulcet
+dulcimer
+dull
+dullard
+dullards
+dulled
+duller
+dullest
+dulling
+dullness
+dulls
+dully
+dulness
+duly
+dumb
+dumbbell
+dumber
+dumbest
+dumbfound
+dumbfounded
+dumbfounding
+dumbfounds
+dumbly
+dumbness
+dumbstruck
+dumfound
+dumfounded
+dumfounding
+dumfounds
+dummied
+dummies
+dummy
+dump
+dumped
+dumper
+dumping
+dumpling
+dumplings
+dumps
+dumpy
+dun
+dunce
+dunces
+dune
+dunes
+dung
+dungarees
+dungbeetle
+dungeon
+dungeons
+dunghill
+dunked
+dunking
+dunkirk
+duo
+duodenal
+duodenum
+duologue
+duomo
+duopoly
+dupe
+duped
+dupes
+duplex
+duplicability
+duplicate
+duplicated
+duplicates
+duplicating
+duplication
+duplications
+duplicator
+duplicators
+duplicities
+duplicitous
+duplicity
+durability
+durable
+durables
+durance
+duration
+durations
+durban
+duress
+during
+dusk
+duskier
+dusky
+dust
+dustbin
+dustbins
+dustcart
+dusted
+duster
+dusters
+dustier
+dustily
+dusting
+dustman
+dustmen
+dustpan
+dusts
+dusty
+dutch
+dutchman
+dutchmen
+duties
+dutiful
+dutifully
+dutifulness
+duty
+dutyfree
+duvet
+duvets
+dux
+dwarf
+dwarfed
+dwarfing
+dwarfish
+dwarfs
+dwarves
+dwell
+dwelled
+dweller
+dwellers
+dwelling
+dwellings
+dwells
+dwelt
+dwindle
+dwindled
+dwindles
+dwindling
+dyad
+dyadic
+dye
+dyed
+dyeing
+dyeings
+dyer
+dyers
+dyes
+dyestuff
+dyestuffs
+dying
+dyke
+dykes
+dynamic
+dynamical
+dynamically
+dynamics
+dynamism
+dynamite
+dynamited
+dynamo
+dynast
+dynastic
+dynasties
+dynasts
+dynasty
+dyne
+dysentery
+dysfunction
+dysfunctional
+dysfunctions
+dyslexia
+dyslexic
+dyslexically
+dyslexics
+dyspepsia
+dyspeptic
+dystrophy
+each
+eager
+eagerly
+eagerness
+eagle
+eagles
+eaglet
+eaglets
+ear
+earache
+earaches
+eardrop
+eardrops
+eardrum
+eardrums
+eared
+earful
+earholes
+earl
+earldom
+earldoms
+earlier
+earliest
+earlobe
+earlobes
+earls
+early
+earmark
+earmarked
+earmarking
+earn
+earned
+earner
+earners
+earnest
+earnestly
+earnestness
+earning
+earnings
+earns
+earphone
+earphones
+earpiece
+earpieces
+earplug
+earplugs
+earring
+earrings
+ears
+earshot
+earsplitting
+earth
+earthbound
+earthed
+earthen
+earthenware
+earthiness
+earthing
+earthling
+earthlings
+earthly
+earthquake
+earthquakes
+earths
+earthshaking
+earthshattering
+earthwards
+earthwork
+earthworks
+earthworm
+earthworms
+earthy
+earwax
+earwig
+earwigs
+ease
+eased
+easel
+easels
+easement
+easements
+eases
+easier
+easiest
+easily
+easiness
+easing
+east
+eastbound
+easter
+easterly
+eastern
+easterners
+easternmost
+easting
+eastward
+eastwards
+easy
+easygoing
+eat
+eatable
+eatage
+eaten
+eater
+eaters
+eatery
+eating
+eatings
+eats
+eaves
+eavesdrop
+eavesdropped
+eavesdropper
+eavesdroppers
+eavesdropping
+eavesdrops
+ebb
+ebbed
+ebbing
+ebbs
+ebbtide
+ebony
+ebullience
+ebullient
+eccentric
+eccentrically
+eccentricities
+eccentricity
+eccentrics
+ecclesiastic
+ecclesiastical
+ecclesiastically
+echelon
+echelons
+echidna
+echidnas
+echinoderm
+echinoderms
+echo
+echoed
+echoic
+echoing
+eclair
+eclairs
+eclectic
+eclecticism
+eclipse
+eclipsed
+eclipses
+eclipsing
+ecliptic
+ecological
+ecologically
+ecologist
+ecologists
+ecology
+econometric
+econometrics
+economic
+economical
+economically
+economics
+economies
+economisation
+economise
+economised
+economises
+economising
+economist
+economists
+economy
+ecosystem
+ecosystems
+ecstasies
+ecstasy
+ecstatic
+ecstatically
+ectopic
+ectoplasm
+ecuador
+ecumenical
+ecumenically
+ecumenism
+eczema
+eddied
+eddies
+eddy
+eddying
+edema
+eden
+edge
+edged
+edgeless
+edges
+edgeways
+edgewise
+edgier
+edgily
+edginess
+edging
+edgings
+edgy
+edibility
+edible
+edibles
+edict
+edicts
+edification
+edifice
+edifices
+edified
+edifies
+edify
+edifying
+edison
+edit
+editable
+edited
+editing
+edition
+editions
+editor
+editorial
+editorialised
+editorially
+editorials
+editors
+editorship
+editorships
+edits
+educate
+educated
+educates
+educating
+education
+educational
+educationalist
+educationalists
+educationally
+educationist
+educationists
+educations
+educative
+educator
+educators
+eduction
+eel
+eels
+eelworm
+eelworms
+eerie
+eerier
+eeriest
+eerily
+eeriness
+eery
+efface
+effaced
+effacing
+effect
+effected
+effecting
+effective
+effectively
+effectiveness
+effector
+effectors
+effects
+effectual
+effectually
+effeminacy
+effeminate
+efferent
+effervescence
+effervescent
+effete
+efficacious
+efficacy
+efficiencies
+efficiency
+efficient
+efficiently
+effigies
+effigy
+effluent
+effluents
+effluvia
+effluxion
+effort
+effortless
+effortlessly
+efforts
+effrontery
+effulgence
+effulgent
+effusion
+effusions
+effusive
+effusively
+eg
+egalitarian
+egalitarianism
+egalitarians
+egg
+egged
+eggheads
+egging
+eggs
+eggshell
+eggshells
+ego
+egocentric
+egocentricity
+egoism
+egoist
+egoistic
+egoists
+egomania
+egomaniac
+egomaniacs
+egotism
+egotist
+egotistic
+egotistical
+egotistically
+egotists
+egregious
+egress
+egret
+egrets
+egypt
+egyptian
+eh
+eider
+eiderdown
+eidetic
+eigenfunction
+eigenfunctions
+eigenstate
+eigenstates
+eigenvalue
+eigenvalues
+eight
+eighteen
+eighteenth
+eightfold
+eighth
+eighties
+eightieth
+eightpence
+eights
+eighty
+einstein
+eire
+eisteddfod
+either
+eject
+ejected
+ejecting
+ejection
+ejections
+ejector
+ejectors
+ejects
+eke
+eked
+eking
+elaborate
+elaborated
+elaborately
+elaborateness
+elaborates
+elaborating
+elaboration
+elaborations
+elal
+elan
+eland
+elands
+elapse
+elapsed
+elapses
+elapsing
+elastic
+elastically
+elasticated
+elasticities
+elasticity
+elastics
+elastin
+elastodynamics
+elate
+elated
+elates
+elation
+elbe
+elbow
+elbowed
+elbowing
+elbows
+elder
+elderberries
+elderberry
+elderflower
+elderly
+elders
+eldest
+eldorado
+elect
+electability
+electable
+elected
+electing
+election
+electioneering
+elections
+elective
+elector
+electoral
+electorally
+electorate
+electorates
+electors
+electric
+electrical
+electrically
+electrician
+electricians
+electricity
+electrics
+electrification
+electrified
+electrify
+electrifying
+electro
+electrocardiogram
+electrocardiographic
+electrochemical
+electrochemically
+electrocute
+electrocuted
+electrocutes
+electrocuting
+electrocution
+electrode
+electrodes
+electrodynamic
+electrodynamics
+electroencephalogram
+electroluminescent
+electrolyse
+electrolysed
+electrolysing
+electrolysis
+electrolyte
+electrolytes
+electrolytic
+electrolytically
+electromagnet
+electromagnetic
+electromagnetically
+electromagnetism
+electromechanical
+electromechanics
+electromotive
+electron
+electronegative
+electronic
+electronically
+electronics
+electrons
+electrophoresis
+electrostatic
+electrostatics
+electrotechnical
+elects
+elegance
+elegant
+elegantly
+elegiac
+elegies
+elegy
+element
+elemental
+elementally
+elementarily
+elementary
+elements
+elephant
+elephantiasis
+elephantine
+elephants
+elevate
+elevated
+elevates
+elevating
+elevation
+elevations
+elevator
+elevators
+eleven
+eleventh
+elf
+elfin
+elflike
+elgreco
+elicit
+elicitation
+elicited
+eliciting
+elicits
+elide
+elided
+elides
+eliding
+eligibility
+eligible
+eligibly
+elijah
+eliminate
+eliminated
+eliminates
+eliminating
+elimination
+eliminations
+eliminator
+elision
+elisions
+elite
+elites
+elitism
+elitist
+elitists
+elixir
+elixirs
+elk
+elks
+ell
+ellipse
+ellipses
+ellipsis
+ellipsoid
+ellipsoidal
+ellipsoids
+elliptic
+elliptical
+elliptically
+ells
+elm
+elms
+elnino
+elocution
+elongate
+elongated
+elongates
+elongating
+elongation
+elongations
+elope
+eloped
+elopement
+elopes
+eloping
+eloquence
+eloquent
+eloquently
+els
+else
+elsewhere
+elucidate
+elucidated
+elucidates
+elucidating
+elucidation
+elude
+eluded
+eludes
+eluding
+elusion
+elusions
+elusive
+elusively
+elusiveness
+eluted
+elution
+elven
+elves
+elvish
+elysee
+em
+emaciate
+emaciated
+emaciation
+email
+emailed
+emanate
+emanated
+emanates
+emanating
+emanation
+emanations
+emancipate
+emancipated
+emancipates
+emancipating
+emancipation
+emancipator
+emancipatory
+emasculate
+emasculated
+emasculating
+emasculation
+embalm
+embalmed
+embalmer
+embalmers
+embalming
+embalms
+embank
+embankment
+embankments
+embargo
+embargoed
+embark
+embarkation
+embarked
+embarking
+embarks
+embarrass
+embarrassed
+embarrassedly
+embarrasses
+embarrassing
+embarrassingly
+embarrassment
+embarrassments
+embassies
+embassy
+embattle
+embattled
+embed
+embeddable
+embedded
+embedding
+embeddings
+embeds
+embellish
+embellished
+embellishing
+embellishment
+embellishments
+ember
+embers
+embezzle
+embezzled
+embezzlement
+embezzler
+embezzlers
+embezzling
+embitter
+embittered
+embittering
+embitterment
+emblazoned
+emblem
+emblematic
+emblems
+embodied
+embodies
+embodiment
+embodiments
+embody
+embodying
+embolden
+emboldened
+emboldening
+emboldens
+embolism
+embosom
+emboss
+embossed
+embrace
+embraced
+embraces
+embracing
+embrasure
+embrocation
+embroider
+embroidered
+embroiderers
+embroideries
+embroidering
+embroidery
+embroil
+embroiled
+embroiling
+embryo
+embryological
+embryology
+embryonal
+embryonic
+emendation
+emendations
+emended
+emerald
+emeralds
+emerge
+emerged
+emergence
+emergencies
+emergency
+emergent
+emerges
+emerging
+emeritus
+emersion
+emery
+emetic
+emigrant
+emigrants
+emigrate
+emigrated
+emigrating
+emigration
+emigre
+emigres
+eminence
+eminences
+eminent
+eminently
+emir
+emirate
+emirates
+emirs
+emissaries
+emissary
+emission
+emissions
+emissivities
+emissivity
+emit
+emits
+emitted
+emitter
+emitters
+emitting
+emollient
+emolument
+emoluments
+emotion
+emotional
+emotionalism
+emotionality
+emotionally
+emotionless
+emotions
+emotive
+emotively
+empathetic
+empathetical
+empathic
+empathise
+empathising
+empathy
+emperor
+emperors
+emphases
+emphasis
+emphasise
+emphasised
+emphasises
+emphasising
+emphatic
+emphatically
+emphysema
+empire
+empires
+empiric
+empirical
+empirically
+empiricism
+empiricist
+empiricists
+emplacement
+emplacements
+employ
+employability
+employable
+employed
+employee
+employees
+employer
+employers
+employing
+employment
+employments
+employs
+emporia
+emporium
+empower
+empowered
+empowering
+empowerment
+empowers
+empress
+emptied
+emptier
+empties
+emptiest
+emptily
+emptiness
+empty
+emptyhanded
+emptying
+ems
+emu
+emulate
+emulated
+emulates
+emulating
+emulation
+emulations
+emulator
+emulators
+emulsifies
+emulsion
+emulsions
+emus
+enable
+enabled
+enables
+enabling
+enact
+enacted
+enacting
+enactment
+enactments
+enacts
+enamel
+enamelled
+enamels
+enamoured
+encage
+encamp
+encamped
+encampment
+encampments
+encapsulate
+encapsulated
+encapsulates
+encapsulating
+encapsulation
+encapsulations
+encase
+encased
+encases
+encashment
+encasing
+encephalitis
+encephalopathy
+enchain
+enchant
+enchanted
+enchanter
+enchanters
+enchanting
+enchantingly
+enchantment
+enchantments
+enchantress
+enchants
+enchiladas
+enciphering
+encircle
+encircled
+encirclement
+encirclements
+encircles
+encircling
+enclasp
+enclave
+enclaves
+enclose
+enclosed
+encloses
+enclosing
+enclosure
+enclosures
+encode
+encoded
+encoder
+encoders
+encodes
+encoding
+encomium
+encompass
+encompassed
+encompasses
+encompassing
+encore
+encored
+encores
+encounter
+encountered
+encountering
+encounters
+encourage
+encouraged
+encouragement
+encouragements
+encourager
+encourages
+encouraging
+encouragingly
+encroach
+encroached
+encroaches
+encroaching
+encroachment
+encroachments
+encrust
+encrustation
+encrusted
+encrusting
+encrypt
+encrypted
+encrypting
+encryption
+encrypts
+encumber
+encumbered
+encumbering
+encumbrance
+encumbrances
+encyclical
+encyclopaedia
+encyclopaedias
+encyclopaedic
+encyclopedia
+encyclopedias
+encyclopedic
+end
+endanger
+endangered
+endangering
+endangers
+endear
+endeared
+endearing
+endearingly
+endearment
+endearments
+endears
+endeavour
+endeavoured
+endeavouring
+endeavours
+ended
+endemic
+endemically
+endgame
+ending
+endings
+endive
+endless
+endlessly
+endlessness
+endocrine
+endogenous
+endogenously
+endometrial
+endometriosis
+endometrium
+endomorphism
+endomorphisms
+endoplasmic
+endorphins
+endorse
+endorsed
+endorsement
+endorsements
+endorser
+endorses
+endorsing
+endoscope
+endoscopic
+endoscopy
+endothermic
+endotoxin
+endow
+endowed
+endowing
+endowment
+endowments
+endows
+endpapers
+ends
+endued
+endues
+endungeoned
+endurable
+endurance
+endure
+endured
+endures
+enduring
+enema
+enemas
+enemies
+enemy
+energetic
+energetically
+energetics
+energies
+energise
+energised
+energiser
+energisers
+energising
+energy
+enervate
+enervated
+enervating
+enfeeble
+enfeebled
+enfeeblement
+enfold
+enfolded
+enfolding
+enfolds
+enforce
+enforceability
+enforceable
+enforced
+enforcement
+enforcements
+enforcer
+enforcers
+enforces
+enforcing
+enfranchise
+enfranchised
+enfranchisement
+enfranchiser
+enfranchising
+engage
+engaged
+engagement
+engagements
+engages
+engaging
+engagingly
+engarde
+engels
+engender
+engendered
+engendering
+engenders
+engine
+engined
+engineer
+engineered
+engineering
+engineers
+engines
+england
+english
+engorge
+engorged
+engrained
+engrave
+engraved
+engraver
+engravers
+engraves
+engraving
+engravings
+engross
+engrossed
+engrossing
+engulf
+engulfed
+engulfing
+engulfs
+enhance
+enhanceable
+enhanced
+enhancement
+enhancements
+enhancer
+enhancers
+enhances
+enhancing
+enharmonic
+enigma
+enigmas
+enigmatic
+enigmatically
+enjoin
+enjoined
+enjoining
+enjoins
+enjoy
+enjoyability
+enjoyable
+enjoyably
+enjoyed
+enjoyer
+enjoying
+enjoyment
+enjoyments
+enjoys
+enlace
+enlarge
+enlarged
+enlargement
+enlargements
+enlarger
+enlarges
+enlarging
+enlighten
+enlightened
+enlightening
+enlightenment
+enlightens
+enlist
+enlisted
+enlisting
+enlistment
+enlists
+enliven
+enlivened
+enlivening
+enlivens
+enmasse
+enmeshed
+enmities
+enmity
+enneads
+ennoble
+ennobled
+ennobles
+ennobling
+ennui
+enormities
+enormity
+enormous
+enormously
+enough
+enounced
+enounces
+enquire
+enquired
+enquirer
+enquirers
+enquires
+enquiries
+enquiring
+enquiringly
+enquiry
+enrage
+enraged
+enrages
+enraging
+enraptured
+enrich
+enriched
+enriches
+enriching
+enrichment
+enrichments
+enrobe
+enrobed
+enrol
+enroll
+enrolled
+enrolling
+enrolls
+enrolment
+enrolments
+enrols
+enroute
+ensconce
+ensconced
+ensemble
+ensembles
+enshrine
+enshrined
+enshrines
+enshrining
+enshroud
+enshrouded
+ensign
+ensigns
+enslave
+enslaved
+enslavement
+enslaves
+enslaving
+ensnare
+ensnared
+ensnaring
+ensnarl
+ensue
+ensued
+ensues
+ensuing
+ensure
+ensured
+ensures
+ensuring
+entablature
+entail
+entailed
+entailing
+entailment
+entails
+entangle
+entangled
+entanglement
+entanglements
+entangler
+entangles
+entangling
+entente
+enter
+entered
+entering
+enteritis
+enterprise
+enterprises
+enterprising
+enters
+entertain
+entertained
+entertainer
+entertainers
+entertaining
+entertainingly
+entertainment
+entertainments
+entertains
+enthalpies
+enthalpy
+enthralled
+enthralling
+enthrone
+enthroned
+enthronement
+enthuse
+enthused
+enthuses
+enthusiasm
+enthusiasms
+enthusiast
+enthusiastic
+enthusiastically
+enthusiasts
+enthusing
+entice
+enticed
+enticement
+enticements
+entices
+enticing
+enticingly
+entire
+entirely
+entires
+entirety
+entities
+entitle
+entitled
+entitlement
+entitlements
+entitles
+entitling
+entity
+entomb
+entombed
+entombment
+entombs
+entomological
+entomologist
+entomologists
+entomology
+entourage
+entrails
+entrain
+entrained
+entrainment
+entrance
+entranced
+entrances
+entrancing
+entrant
+entrants
+entrap
+entrapment
+entrapped
+entrapping
+entreat
+entreated
+entreaties
+entreating
+entreatingly
+entreats
+entreaty
+entree
+entrench
+entrenched
+entrenching
+entrenchment
+entrepreneur
+entrepreneurial
+entrepreneurs
+entrepreneurship
+entries
+entropic
+entropy
+entrust
+entrusted
+entrusting
+entrusts
+entry
+entwine
+entwined
+entwines
+entwining
+enumerable
+enumerate
+enumerated
+enumerates
+enumerating
+enumeration
+enumerations
+enumerator
+enumerators
+enunciate
+enunciated
+enunciating
+enunciation
+envelop
+envelope
+enveloped
+enveloper
+envelopers
+envelopes
+enveloping
+envelops
+enviable
+enviably
+envied
+envies
+envious
+enviously
+environ
+environment
+environmental
+environmentalism
+environmentalist
+environmentalists
+environmentally
+environments
+environs
+envisage
+envisaged
+envisages
+envisaging
+envision
+envisioned
+envoy
+envoys
+envy
+envying
+enwrap
+enzymatic
+enzyme
+enzymes
+eon
+eons
+eosin
+epaulettes
+ephemera
+ephemeral
+ephemeris
+ephor
+epic
+epically
+epicarp
+epicentre
+epics
+epicure
+epicurean
+epicycles
+epicycloid
+epidemic
+epidemics
+epidemiological
+epidemiologist
+epidemiologists
+epidemiology
+epidermal
+epidermis
+epidural
+epigenetic
+epigon
+epigones
+epigram
+epigrammatic
+epigrams
+epigraph
+epigraphical
+epigraphy
+epilepsy
+epileptic
+epileptics
+epilogue
+epinephrine
+epiphanies
+epiphenomena
+epiphenomenon
+episcopacy
+episcopal
+episcopalian
+episcopate
+episode
+episodes
+episodic
+episodically
+epistemic
+epistemological
+epistemology
+epistle
+epistles
+epistolary
+epitap
+epitaph
+epitaphs
+epitaxial
+epitaxy
+epithelial
+epithelium
+epithet
+epithetic
+epithets
+epitome
+epitomise
+epitomised
+epitomises
+epoch
+epochal
+epochs
+epoxies
+epoxy
+epsilon
+equable
+equably
+equal
+equalisation
+equalise
+equalised
+equaliser
+equalisers
+equalising
+equalities
+equality
+equalled
+equalling
+equally
+equals
+equanimity
+equate
+equated
+equates
+equating
+equation
+equations
+equator
+equatorial
+equerry
+equestrian
+equestrianism
+equiangular
+equidistant
+equilateral
+equilibrating
+equilibration
+equilibria
+equilibrium
+equine
+equinoctial
+equinox
+equinoxes
+equip
+equipartition
+equipment
+equipments
+equipped
+equipping
+equips
+equitable
+equitably
+equities
+equity
+equivalence
+equivalences
+equivalent
+equivalently
+equivalents
+equivocal
+equivocated
+equivocating
+equivocation
+equivocations
+era
+eradicate
+eradicated
+eradicating
+eradication
+eras
+erasable
+erase
+erased
+eraser
+erasers
+erases
+erasing
+erasure
+erasures
+erbium
+ere
+erect
+erected
+erecter
+erectile
+erecting
+erection
+erections
+erectly
+erects
+erg
+ergo
+ergodic
+ergonomic
+ergonomically
+ergonomics
+ergophobia
+ergot
+ergs
+erica
+ericas
+eritrea
+ermine
+erode
+eroded
+erodes
+eroding
+erogenous
+eros
+erose
+erosion
+erosional
+erosions
+erosive
+erotic
+erotica
+erotically
+eroticism
+err
+errand
+errands
+errant
+errata
+erratic
+erratically
+erratum
+erred
+erring
+erroneous
+erroneously
+error
+errors
+errs
+ersatz
+erst
+erstwhile
+erudite
+erudition
+erupt
+erupted
+erupting
+eruption
+eruptions
+eruptive
+erupts
+erysipelas
+esau
+escalade
+escalate
+escalated
+escalates
+escalating
+escalation
+escalator
+escalators
+escapade
+escapades
+escape
+escaped
+escapee
+escapees
+escapement
+escapes
+escaping
+escapism
+escapist
+escapology
+escarp
+escarpment
+escarpments
+escarps
+eschatological
+eschatology
+eschew
+eschewed
+eschewing
+eschews
+escort
+escorted
+escorting
+escorts
+escudo
+eskimo
+esoteric
+esoterica
+esoterically
+espadrilles
+especial
+especially
+espied
+espionage
+esplanade
+espousal
+espouse
+espoused
+espouses
+espousing
+espresso
+esprit
+espy
+espying
+esquire
+esquires
+essay
+essayed
+essayist
+essayists
+essays
+essen
+essence
+essences
+essential
+essentialism
+essentialist
+essentially
+essentials
+est
+establish
+established
+establishes
+establishing
+establishment
+establishments
+estate
+estates
+esteem
+esteemed
+esteems
+ester
+esters
+esthete
+esthetic
+estimable
+estimate
+estimated
+estimates
+estimating
+estimation
+estimations
+estimator
+estimators
+estonia
+estranged
+estrangement
+estrangements
+estuaries
+estuarine
+estuary
+eta
+etal
+etcetera
+etch
+etched
+etcher
+etchers
+etches
+etching
+etchings
+eternal
+eternally
+eternity
+ethane
+ethanol
+ether
+ethereal
+ethereally
+etherised
+ethic
+ethical
+ethically
+ethicist
+ethics
+ethiopia
+ethnic
+ethnical
+ethnically
+ethnicity
+ethnocentric
+ethnographer
+ethnographers
+ethnographic
+ethnography
+ethnological
+ethnology
+ethological
+ethologist
+ethologists
+ethology
+ethos
+ethyl
+ethylene
+etiquette
+etna
+etudes
+etui
+etymological
+etymologically
+etymologies
+etymologist
+etymologists
+etymology
+eucalyptus
+eugenic
+eugenics
+eukaryote
+eukaryotes
+eukaryotic
+eulogies
+eulogise
+eulogises
+eulogising
+eulogistic
+eulogy
+eunuch
+eunuchs
+euphemism
+euphemisms
+euphemistic
+euphemistically
+euphonious
+euphonium
+euphoniums
+euphony
+euphoria
+euphoric
+eurasia
+eurasian
+eureka
+eurekas
+euro
+europe
+european
+eurydice
+eutectic
+euthanasia
+evacuate
+evacuated
+evacuating
+evacuation
+evacuations
+evacuee
+evacuees
+evadable
+evade
+evaded
+evader
+evaders
+evades
+evading
+evaluable
+evaluate
+evaluated
+evaluates
+evaluating
+evaluation
+evaluational
+evaluations
+evaluative
+evaluator
+evaluators
+evanescent
+evangelical
+evangelicalism
+evangelicals
+evangelisation
+evangelise
+evangelising
+evangelism
+evangelist
+evangelistic
+evangelists
+evaporate
+evaporated
+evaporates
+evaporating
+evaporation
+evaporator
+evasion
+evasions
+evasive
+evasively
+evasiveness
+eve
+even
+evened
+evener
+evenhanded
+evening
+evenings
+evenly
+evenness
+evens
+evensong
+event
+eventful
+eventide
+eventing
+events
+eventual
+eventualities
+eventuality
+eventually
+ever
+everchanging
+everest
+evergreen
+evergreens
+everincreasing
+everlasting
+everlastingly
+everliving
+evermore
+everpresent
+eversion
+everting
+every
+everybody
+everyday
+everyone
+everything
+everywhere
+eves
+evict
+evicted
+evicting
+eviction
+evictions
+evicts
+evidence
+evidenced
+evidences
+evident
+evidential
+evidently
+evil
+evildoer
+evilly
+evilness
+evils
+evince
+evinced
+evinces
+evincing
+eviscerate
+evocation
+evocations
+evocative
+evocatively
+evoke
+evoked
+evokes
+evoking
+evolute
+evolution
+evolutionarily
+evolutionary
+evolutionism
+evolutionist
+evolutionists
+evolutions
+evolve
+evolved
+evolves
+evolving
+ewe
+ewes
+exacerbate
+exacerbated
+exacerbates
+exacerbating
+exacerbation
+exact
+exacted
+exacting
+exaction
+exactitude
+exactly
+exactness
+exacts
+exaggerate
+exaggerated
+exaggeratedly
+exaggerates
+exaggerating
+exaggeration
+exaggerations
+exalt
+exaltation
+exalted
+exalting
+exalts
+exam
+examinable
+examination
+examinations
+examine
+examined
+examinees
+examiner
+examiners
+examines
+examining
+example
+examples
+exams
+exasperate
+exasperated
+exasperatedly
+exasperating
+exasperation
+excavate
+excavated
+excavating
+excavation
+excavations
+excavator
+excavators
+exceed
+exceeded
+exceeding
+exceedingly
+exceeds
+excel
+excelled
+excellence
+excellencies
+excellency
+excellent
+excellently
+excelling
+excels
+excelsior
+except
+excepted
+excepting
+exception
+exceptionable
+exceptional
+exceptionally
+exceptions
+excepts
+excerpt
+excerpted
+excerpts
+excess
+excesses
+excessive
+excessively
+exchange
+exchangeable
+exchanged
+exchanger
+exchangers
+exchanges
+exchanging
+exchequer
+excise
+excised
+excising
+excision
+excitability
+excitable
+excitation
+excitations
+excite
+excited
+excitedly
+excitement
+excitements
+excites
+exciting
+excitingly
+exciton
+exclaim
+exclaimed
+exclaiming
+exclaims
+exclamation
+exclamations
+exclamatory
+exclude
+excluded
+excludes
+excluding
+exclusion
+exclusionary
+exclusions
+exclusive
+exclusively
+exclusiveness
+exclusivist
+exclusivity
+excommunicate
+excommunicated
+excommunicating
+excommunication
+excrete
+excruciating
+excruciatingly
+excruciation
+excursion
+excursionists
+excursions
+excursus
+excusable
+excuse
+excused
+excuses
+excusing
+executable
+execute
+executed
+executes
+executing
+execution
+executioner
+executioners
+executions
+executive
+executives
+executor
+executors
+exegesis
+exegetical
+exemplar
+exemplars
+exemplary
+exemplification
+exemplified
+exemplifies
+exemplify
+exemplifying
+exempt
+exempted
+exempting
+exemption
+exemptions
+exempts
+exercisable
+exercise
+exercised
+exerciser
+exercises
+exercising
+exert
+exerted
+exerting
+exertion
+exertions
+exerts
+exes
+exeunt
+exfoliation
+exhalation
+exhalations
+exhale
+exhaled
+exhales
+exhaling
+exhaust
+exhausted
+exhaustible
+exhausting
+exhaustion
+exhaustive
+exhaustively
+exhausts
+exhibit
+exhibited
+exhibiting
+exhibition
+exhibitioner
+exhibitioners
+exhibitionism
+exhibitionist
+exhibitionists
+exhibitions
+exhibitor
+exhibitors
+exhibits
+exhilarate
+exhilarated
+exhilarating
+exhilaration
+exhort
+exhortation
+exhortations
+exhorted
+exhorting
+exhorts
+exhumation
+exhume
+exhumed
+exhumes
+exhuming
+exhusband
+exigencies
+exigency
+exigent
+exiguous
+exile
+exiled
+exiles
+exiling
+exist
+existed
+existence
+existences
+existent
+existential
+existentialism
+existentialist
+existentialistic
+existentially
+existing
+exists
+exit
+exited
+exiting
+exits
+exmember
+exmembers
+exocrine
+exoderm
+exodus
+exogenous
+exogenously
+exonerate
+exonerated
+exonerates
+exonerating
+exoneration
+exorbitant
+exorbitantly
+exorcise
+exorcised
+exorcising
+exorcism
+exorcisms
+exorcist
+exoskeleton
+exothermic
+exothermically
+exotic
+exotica
+exotically
+exoticism
+expand
+expandability
+expandable
+expanded
+expander
+expanding
+expands
+expanse
+expanses
+expansible
+expansion
+expansionary
+expansionism
+expansionist
+expansions
+expansive
+expansively
+expansiveness
+expatriate
+expatriated
+expatriates
+expect
+expectancies
+expectancy
+expectant
+expectantly
+expectation
+expectational
+expectations
+expected
+expecting
+expectorate
+expectorated
+expectoration
+expects
+expedience
+expediency
+expedient
+expedients
+expedite
+expedited
+expedites
+expediting
+expedition
+expeditionary
+expeditions
+expeditious
+expeditiously
+expel
+expelled
+expelling
+expels
+expend
+expendable
+expended
+expending
+expenditure
+expenditures
+expends
+expense
+expenses
+expensive
+expensively
+experience
+experienced
+experiences
+experiencing
+experiential
+experiment
+experimental
+experimentalist
+experimentalists
+experimentally
+experimentation
+experimented
+experimenter
+experimenters
+experimenting
+experiments
+expert
+expertise
+expertly
+expertness
+experts
+expiate
+expiation
+expiatory
+expiration
+expiratory
+expire
+expired
+expires
+expiring
+expiry
+explain
+explainable
+explained
+explaining
+explains
+explanation
+explanations
+explanatory
+expletive
+expletives
+explicable
+explicate
+explicated
+explication
+explicative
+explicit
+explicitly
+explicitness
+explode
+exploded
+exploder
+exploders
+explodes
+exploding
+exploit
+exploitable
+exploitation
+exploitations
+exploitative
+exploited
+exploiter
+exploiters
+exploiting
+exploits
+explorable
+exploration
+explorations
+exploratory
+explore
+explored
+explorer
+explorers
+explores
+exploring
+explosion
+explosions
+explosive
+explosively
+explosiveness
+explosives
+expo
+exponent
+exponential
+exponentially
+exponentiation
+exponents
+export
+exportability
+exportable
+exported
+exporter
+exporters
+exporting
+exports
+expose
+exposed
+exposes
+exposing
+exposition
+expositions
+expository
+expostulate
+expostulated
+expostulating
+expostulation
+expostulations
+exposure
+exposures
+expound
+expounded
+expounding
+expounds
+express
+expressed
+expresses
+expressible
+expressing
+expression
+expressionism
+expressionist
+expressionistic
+expressionists
+expressionless
+expressionlessly
+expressions
+expressive
+expressively
+expressiveness
+expressly
+expropriate
+expropriated
+expropriation
+expropriations
+expulsion
+expulsions
+expunge
+expunged
+expunges
+expunging
+expurgate
+expurgated
+expurgating
+exquisite
+exquisitely
+exquisiteness
+ext
+extend
+extendability
+extendable
+extended
+extender
+extenders
+extendible
+extending
+extends
+extensibility
+extensible
+extension
+extensional
+extensionally
+extensions
+extensive
+extensively
+extensiveness
+extensors
+extent
+extents
+extenuate
+extenuated
+extenuating
+extenuation
+exterior
+exteriors
+exterminate
+exterminated
+exterminates
+exterminating
+extermination
+exterminations
+exterminator
+exterminators
+extern
+external
+externalised
+externally
+externals
+externs
+extinct
+extinction
+extinctions
+extinguish
+extinguished
+extinguisher
+extinguishers
+extinguishes
+extinguishing
+extinguishment
+extirpate
+extirpation
+extol
+extolled
+extolling
+extols
+extort
+extorted
+extorting
+extortion
+extortionate
+extortionately
+extortionists
+extorts
+extra
+extracellular
+extract
+extractable
+extracted
+extracting
+extraction
+extractions
+extractive
+extractor
+extracts
+extraditable
+extradite
+extradited
+extraditing
+extradition
+extragalactic
+extrajudicial
+extralinguistic
+extramarital
+extramural
+extraneous
+extraordinarily
+extraordinary
+extrapolate
+extrapolated
+extrapolating
+extrapolation
+extrapolations
+extras
+extrasolar
+extraterrestrial
+extraterrestrials
+extraterritorial
+extravagance
+extravagances
+extravagant
+extravagantly
+extravaganza
+extravaganzas
+extrema
+extremal
+extreme
+extremely
+extremes
+extremest
+extremism
+extremist
+extremists
+extremities
+extremity
+extricate
+extricated
+extricating
+extrication
+extrinsic
+extrinsically
+extroversion
+extrovert
+extroverts
+extrude
+extruded
+extrusion
+extrusions
+exuberance
+exuberant
+exuberantly
+exudate
+exude
+exuded
+exudes
+exuding
+exult
+exultant
+exultantly
+exultation
+exulted
+exulting
+exultingly
+exults
+exwife
+exwives
+eye
+eyeball
+eyeballs
+eyebrow
+eyebrows
+eyecatching
+eyed
+eyeful
+eyeglass
+eyeglasses
+eyeing
+eyelash
+eyelashes
+eyeless
+eyelet
+eyelets
+eyelevel
+eyelid
+eyelids
+eyelike
+eyeliner
+eyepatch
+eyepiece
+eyes
+eyeshadow
+eyesight
+eyesore
+eyesores
+eyeteeth
+eyetooth
+eyewash
+eyewitness
+eyewitnesses
+fab
+fable
+fabled
+fables
+fabric
+fabricate
+fabricated
+fabricates
+fabricating
+fabrication
+fabrications
+fabricator
+fabrics
+fabulists
+fabulous
+fabulously
+facade
+facades
+face
+faced
+faceless
+facelift
+faceplate
+facer
+facers
+faces
+facet
+faceted
+faceting
+facetious
+facetiously
+facetiousness
+facets
+facia
+facial
+facials
+facile
+facilitate
+facilitated
+facilitates
+facilitating
+facilitation
+facilitative
+facilitator
+facilitators
+facilities
+facility
+facing
+facings
+facsimile
+facsimiles
+fact
+faction
+factional
+factionalism
+factions
+factious
+factitious
+factor
+factored
+factorial
+factorials
+factories
+factoring
+factorisable
+factorisation
+factorisations
+factorise
+factorised
+factorises
+factorising
+factors
+factory
+factotum
+facts
+factual
+factually
+faculties
+faculty
+fad
+fade
+faded
+fadeout
+fades
+fading
+fads
+faecal
+faeces
+fag
+faggot
+faggots
+fagot
+fags
+fail
+failed
+failing
+failings
+fails
+failure
+failures
+faint
+fainted
+fainter
+faintest
+fainthearted
+fainting
+faintly
+faintness
+faints
+fair
+fairer
+fairest
+fairground
+fairgrounds
+fairies
+fairing
+fairish
+fairly
+fairness
+fairs
+fairsex
+fairway
+fairways
+fairy
+fairytale
+faith
+faithful
+faithfully
+faithfulness
+faithless
+faithlessness
+faiths
+fake
+faked
+fakers
+fakery
+fakes
+faking
+falcon
+falconer
+falconry
+falcons
+fall
+fallacies
+fallacious
+fallacy
+fallen
+faller
+fallers
+fallguy
+fallibility
+fallible
+falling
+fallopian
+fallout
+fallow
+falls
+false
+falsebay
+falsehood
+falsehoods
+falsely
+falseness
+falser
+falsetto
+falsifiability
+falsifiable
+falsification
+falsifications
+falsified
+falsifier
+falsifiers
+falsifies
+falsify
+falsifying
+falsities
+falsity
+falter
+faltered
+faltering
+falteringly
+falters
+fame
+famed
+familial
+familiar
+familiarisation
+familiarise
+familiarised
+familiarising
+familiarities
+familiarity
+familiarly
+families
+family
+famine
+famines
+famish
+famished
+famous
+famously
+fan
+fanatic
+fanatical
+fanatically
+fanaticism
+fanatics
+fanbelt
+fanciable
+fancied
+fancier
+fanciers
+fancies
+fanciest
+fanciful
+fancifully
+fancy
+fancying
+fandango
+fanfare
+fanfares
+fang
+fangs
+fanlight
+fanned
+fanning
+fanny
+fans
+fantail
+fantails
+fantasia
+fantastic
+far
+farad
+faraday
+faraway
+farce
+farces
+farcical
+fare
+fared
+fares
+farewell
+farewells
+farfetched
+farflung
+faring
+farm
+farmed
+farmer
+farmers
+farmhouse
+farmhouses
+farming
+farmings
+farmland
+farms
+farmstead
+farmsteads
+farmyard
+farmyards
+faroff
+farout
+farrago
+farreaching
+farrier
+farriers
+farrow
+farseeing
+farsighted
+farther
+farthest
+farthing
+farthings
+fascia
+fascias
+fascinate
+fascinated
+fascinates
+fascinating
+fascinatingly
+fascination
+fascinations
+fascism
+fascist
+fascists
+fashion
+fashionable
+fashionably
+fashioned
+fashioning
+fashions
+fast
+fasted
+fasten
+fastened
+fastener
+fasteners
+fastening
+fastenings
+fastens
+faster
+fastest
+fastidious
+fastidiously
+fastidiousness
+fasting
+fastings
+fastness
+fastnesses
+fasts
+fat
+fatal
+fatalism
+fatalist
+fatalistic
+fatalistically
+fatalities
+fatality
+fatally
+fatcat
+fate
+fated
+fateful
+fates
+fatheadedness
+father
+fathered
+fatherhood
+fathering
+fatherinlaw
+fatherland
+fatherless
+fatherly
+fathers
+fathersinlaw
+fathom
+fathomed
+fathoming
+fathomless
+fathoms
+fatigue
+fatigued
+fatigues
+fatiguing
+fatless
+fatness
+fats
+fatted
+fatten
+fattened
+fattening
+fattens
+fatter
+fattest
+fattier
+fattiest
+fatty
+fatuity
+fatuous
+fatuously
+fatwa
+faucet
+faucets
+fault
+faulted
+faulting
+faultless
+faultlessly
+faults
+faulty
+faun
+fauna
+faunal
+faunas
+fauns
+faust
+faustus
+favour
+favourable
+favourably
+favoured
+favouring
+favourite
+favourites
+favouritism
+favours
+fawn
+fawned
+fawning
+fawningly
+fawns
+fax
+faxed
+faxes
+faxing
+fealty
+fear
+feared
+fearful
+fearfully
+fearfulness
+fearing
+fearless
+fearlessly
+fearlessness
+fears
+fearsome
+fearsomely
+fearsomeness
+feasibility
+feasible
+feasibly
+feast
+feasted
+feasting
+feasts
+feat
+feather
+feathered
+feathering
+featherlight
+feathers
+featherweight
+feathery
+feats
+feature
+featured
+featureless
+features
+featuring
+febrile
+february
+feckless
+fecklessness
+fecund
+fecundity
+fed
+federal
+federalism
+federalist
+federalists
+federally
+federate
+federated
+federation
+federations
+fedora
+feds
+fedup
+fee
+feeble
+feebleminded
+feebleness
+feebler
+feeblest
+feebly
+feed
+feedback
+feeder
+feeders
+feeding
+feedings
+feeds
+feedstock
+feedstuffs
+feel
+feeler
+feelers
+feeling
+feelingly
+feelings
+feels
+fees
+feet
+feign
+feigned
+feigning
+feigns
+feint
+feinted
+feinting
+feints
+feldspar
+feldspars
+felicia
+felicitation
+felicitations
+felicities
+felicitous
+felicity
+feline
+felines
+fell
+fellatio
+felled
+feller
+felling
+fellow
+fellows
+fellowship
+fellowships
+fells
+felon
+felonious
+felons
+felony
+felt
+feltpen
+female
+femaleness
+females
+feminine
+femininely
+femininity
+feminism
+feminist
+feminists
+femur
+femurs
+fen
+fence
+fenced
+fencepost
+fencer
+fencers
+fences
+fencing
+fencings
+fend
+fended
+fender
+fenders
+fending
+fends
+fenland
+fennel
+fens
+feral
+ferment
+fermentation
+fermented
+fermenting
+ferments
+fermion
+fermions
+fern
+ferns
+ferny
+ferocious
+ferociously
+ferociousness
+ferocity
+ferret
+ferreted
+ferreting
+ferrets
+ferric
+ferried
+ferries
+ferrite
+ferromagnetic
+ferrous
+ferrule
+ferry
+ferrying
+ferryman
+fertile
+fertilisation
+fertilise
+fertilised
+fertiliser
+fertilisers
+fertilises
+fertilising
+fertility
+fervent
+fervently
+fervid
+fervidly
+fervour
+fescue
+fest
+festal
+fester
+festered
+festering
+festers
+festival
+festivals
+festive
+festivities
+festivity
+festoon
+festooned
+festooning
+festoons
+fetal
+fetch
+fetched
+fetches
+fetching
+fete
+feted
+fetes
+fetid
+fetish
+fetishes
+fetishism
+fetishist
+fetishistic
+fetishists
+fetlock
+fetlocks
+fetter
+fettered
+fetters
+fettle
+fetus
+feud
+feudal
+feudalism
+feuded
+feuding
+feudist
+feuds
+fever
+fevered
+feverish
+feverishly
+fevers
+few
+fewer
+fewest
+fewness
+fez
+fiance
+fiancee
+fiasco
+fiat
+fib
+fibbed
+fibber
+fibbers
+fibbing
+fibers
+fibre
+fibreboard
+fibred
+fibreglass
+fibres
+fibrillating
+fibrillation
+fibroblast
+fibroblasts
+fibrosis
+fibrous
+fibs
+fibula
+fiche
+fiches
+fickle
+fickleness
+fiction
+fictional
+fictions
+fictitious
+fictive
+ficus
+fiddle
+fiddled
+fiddler
+fiddlers
+fiddles
+fiddlesticks
+fiddling
+fiddlings
+fiddly
+fidelity
+fidget
+fidgeted
+fidgeting
+fidgets
+fidgety
+fiduciary
+fief
+fiefdom
+fiefdoms
+fiefs
+field
+fielded
+fielder
+fielders
+fielding
+fields
+fieldwork
+fieldworker
+fieldworkers
+fiend
+fiendish
+fiendishly
+fiends
+fierce
+fiercely
+fierceness
+fiercer
+fiercest
+fierier
+fieriest
+fierily
+fiery
+fiesta
+fiestas
+fife
+fifes
+fifteen
+fifteenth
+fifth
+fifthly
+fifths
+fifties
+fiftieth
+fifty
+fig
+fight
+fightback
+fighter
+fighters
+fighting
+fights
+figleaf
+figment
+figments
+figs
+figtree
+figural
+figuration
+figurative
+figuratively
+figure
+figured
+figurehead
+figureheads
+figurer
+figures
+figurine
+figurines
+figuring
+fiji
+fijians
+filament
+filamentary
+filamentous
+filaments
+filch
+filched
+file
+filed
+filer
+filers
+files
+filet
+filial
+filibuster
+filigree
+filing
+filings
+fill
+filled
+filler
+fillers
+fillet
+fillets
+fillies
+filling
+fillings
+fillip
+fills
+filly
+film
+filmed
+filmic
+filming
+filmmakers
+films
+filmset
+filmy
+filter
+filtered
+filtering
+filters
+filth
+filthier
+filthiest
+filthily
+filthy
+filtrate
+filtration
+fin
+final
+finale
+finales
+finalisation
+finalise
+finalised
+finalising
+finalist
+finalists
+finality
+finally
+finals
+finance
+financed
+finances
+financial
+financially
+financier
+financiers
+financing
+finch
+finches
+find
+findable
+finder
+finders
+finding
+findings
+finds
+fine
+fined
+finely
+fineness
+finer
+finery
+fines
+finesse
+finest
+finetune
+finetuned
+finetunes
+finetuning
+finger
+fingerboard
+fingered
+fingering
+fingerings
+fingerless
+fingermarks
+fingernail
+fingernails
+fingerprint
+fingerprinted
+fingerprinting
+fingerprints
+fingers
+fingertip
+fingertips
+finial
+finicky
+fining
+finis
+finish
+finished
+finisher
+finishers
+finishes
+finishing
+finite
+finitely
+finiteness
+finland
+finn
+finned
+finnish
+fins
+fiord
+fiords
+fir
+fire
+firearm
+firearms
+fireball
+fireballs
+firebomb
+firebombed
+firebombing
+firebombs
+firebox
+firebrand
+firecontrol
+fired
+firefight
+firefighter
+firefighters
+firefighting
+fireflies
+firefly
+fireguard
+firelight
+firelighters
+fireman
+firemen
+fireplace
+fireplaces
+firepower
+fireproof
+fireproofed
+firer
+fires
+fireside
+firesides
+firewood
+firework
+fireworks
+firing
+firings
+firkin
+firm
+firmament
+firmed
+firmer
+firmest
+firming
+firmly
+firmness
+firms
+firmware
+firs
+first
+firstaid
+firstborn
+firstborns
+firsthand
+firstly
+firsts
+firth
+fiscal
+fiscally
+fish
+fished
+fisher
+fisheries
+fisherman
+fishermen
+fishers
+fishery
+fishes
+fishhook
+fishhooks
+fishier
+fishiest
+fishing
+fishings
+fishlike
+fishmonger
+fishmongers
+fishnet
+fishwife
+fishy
+fissile
+fission
+fissions
+fissure
+fissured
+fissures
+fist
+fisted
+fistful
+fisticuffs
+fists
+fistula
+fit
+fitful
+fitfully
+fitfulness
+fitly
+fitment
+fitments
+fitness
+fits
+fitted
+fitter
+fitters
+fittest
+fitting
+fittingly
+fittings
+five
+fivefold
+fiver
+fivers
+fives
+fix
+fixable
+fixate
+fixated
+fixates
+fixation
+fixations
+fixative
+fixed
+fixedly
+fixer
+fixers
+fixes
+fixing
+fixings
+fixture
+fixtures
+fizz
+fizzed
+fizzes
+fizzier
+fizziest
+fizzing
+fizzle
+fizzled
+fizzles
+fizzy
+fjord
+fjords
+flab
+flabbergasted
+flabbier
+flabbiest
+flabby
+flabs
+flaccid
+flaccidity
+flack
+flag
+flagella
+flagellate
+flagellation
+flagged
+flagging
+flagon
+flagons
+flagpole
+flagrant
+flagrantly
+flags
+flagship
+flagships
+flair
+flak
+flake
+flaked
+flakes
+flakiest
+flaking
+flaky
+flamboyance
+flamboyant
+flamboyantly
+flame
+flamed
+flamenco
+flameproof
+flames
+flaming
+flamingo
+flammability
+flammable
+flan
+flange
+flanged
+flanges
+flank
+flanked
+flanker
+flanking
+flanks
+flannel
+flannelette
+flannels
+flans
+flap
+flapjack
+flapped
+flapper
+flappers
+flapping
+flaps
+flare
+flared
+flares
+flareup
+flareups
+flaring
+flash
+flashback
+flashbacks
+flashbulb
+flashed
+flasher
+flashes
+flashier
+flashiest
+flashily
+flashing
+flashlight
+flashlights
+flashpoint
+flashpoints
+flashy
+flask
+flasks
+flat
+flatfish
+flatly
+flatmate
+flatmates
+flatness
+flats
+flatten
+flattened
+flattening
+flattens
+flatter
+flattered
+flatterer
+flatterers
+flattering
+flatteringly
+flatters
+flattery
+flattest
+flattish
+flatulence
+flatulent
+flatus
+flatworms
+flaunt
+flaunted
+flaunting
+flaunts
+flautist
+flavour
+flavoured
+flavouring
+flavourings
+flavours
+flaw
+flawed
+flawless
+flawlessly
+flaws
+flax
+flaxen
+flay
+flayed
+flayer
+flayers
+flaying
+flea
+fleabites
+fleas
+fleck
+flecked
+flecks
+fled
+fledge
+fledged
+fledgeling
+fledges
+fledgling
+fledglings
+flee
+fleece
+fleeced
+fleeces
+fleecing
+fleecy
+fleeing
+flees
+fleet
+fleeted
+fleeter
+fleeting
+fleetingly
+fleetly
+fleets
+flemish
+flesh
+fleshed
+flesher
+fleshes
+fleshier
+fleshiest
+fleshing
+fleshless
+fleshly
+fleshpots
+fleshy
+flew
+flex
+flexed
+flexes
+flexibilities
+flexibility
+flexible
+flexibly
+flexile
+flexing
+flexion
+flexor
+flick
+flicked
+flicker
+flickered
+flickering
+flickers
+flickery
+flicking
+flicks
+flier
+fliers
+flies
+flight
+flighted
+flightless
+flightpath
+flights
+flighty
+flimsier
+flimsiest
+flimsily
+flimsiness
+flimsy
+flinch
+flinched
+flinching
+fling
+flinging
+flings
+flint
+flintlock
+flintlocks
+flints
+flinty
+flip
+flipflop
+flipflops
+flippable
+flippancy
+flippant
+flippantly
+flipped
+flipper
+flippers
+flipping
+flips
+flirt
+flirtation
+flirtations
+flirtatious
+flirtatiously
+flirted
+flirting
+flirts
+flit
+fliting
+flits
+flitted
+flitting
+float
+floated
+floater
+floaters
+floating
+floats
+floaty
+flock
+flocked
+flocking
+flocks
+floe
+flog
+flogged
+flogger
+floggers
+flogging
+floggings
+flogs
+flood
+flooded
+floodgates
+flooding
+floodlight
+floodlighting
+floodlights
+floodlit
+floods
+floor
+floorboard
+floorboards
+floored
+flooring
+floors
+floorspace
+floozie
+floozies
+floozy
+flop
+flopped
+flopper
+floppier
+floppies
+floppiest
+flopping
+floppy
+flops
+flora
+floral
+floras
+floreat
+florence
+floret
+florid
+florida
+floridly
+florin
+florins
+florist
+florists
+floss
+flosses
+flossing
+flossy
+flotation
+flotations
+flotilla
+flotillas
+flotsam
+flounce
+flounced
+flounces
+flouncing
+flounder
+floundered
+floundering
+flounders
+flour
+floured
+flourish
+flourished
+flourishes
+flourishing
+flours
+floury
+flout
+flouted
+flouting
+flouts
+flow
+flowed
+flower
+flowered
+flowering
+flowerless
+flowerpot
+flowerpots
+flowers
+flowery
+flowing
+flown
+flows
+flub
+flubbed
+fluctuate
+fluctuated
+fluctuates
+fluctuating
+fluctuation
+fluctuations
+flue
+fluency
+fluent
+fluently
+flues
+fluff
+fluffed
+fluffier
+fluffiest
+fluffing
+fluffs
+fluffy
+fluid
+fluidised
+fluidity
+fluidly
+fluids
+fluke
+flukes
+flukey
+flukier
+flukiest
+flumes
+flumped
+flung
+flunked
+fluor
+fluoresce
+fluorescence
+fluorescent
+fluoresces
+fluorescing
+fluoridation
+fluoride
+fluorine
+fluorocarbon
+fluorocarbons
+flurried
+flurries
+flurry
+flush
+flushed
+flusher
+flushes
+flushing
+fluster
+flustered
+flute
+fluted
+flutes
+fluting
+flutist
+flutter
+fluttered
+fluttering
+flutters
+fluttery
+fluvial
+flux
+fluxes
+fly
+flyaway
+flyer
+flyers
+flyhalf
+flying
+flyover
+flyovers
+flypaper
+flypast
+flyway
+flyways
+flyweight
+flywheel
+foal
+foaled
+foaling
+foals
+foam
+foamed
+foamier
+foamiest
+foaming
+foams
+foamy
+fob
+fobbed
+fobbing
+fobs
+focal
+focally
+foci
+focus
+focused
+focuses
+focusing
+focussed
+focusses
+focussing
+fodder
+fodders
+foe
+foehns
+foes
+foetal
+foetid
+foetus
+foetuses
+fog
+fogbank
+fogey
+fogged
+foggier
+foggiest
+fogging
+foggy
+foghorn
+foghorns
+fogs
+fogy
+foible
+foibles
+foil
+foiled
+foiling
+foils
+foist
+foisted
+foisting
+fold
+folded
+folder
+folders
+folding
+folds
+foliage
+foliate
+foliated
+folio
+folk
+folkart
+folkish
+folklore
+folklorist
+folklorists
+folks
+folktale
+follicle
+follicles
+follicular
+follies
+follow
+followable
+followed
+follower
+followers
+following
+followings
+follows
+folly
+foment
+fomented
+fomenting
+fond
+fondant
+fonder
+fondest
+fondle
+fondled
+fondles
+fondling
+fondly
+fondness
+fondue
+fondues
+font
+fontanel
+fonts
+food
+foodless
+foods
+foodstuff
+foodstuffs
+fool
+fooled
+foolery
+foolhardily
+foolhardiness
+foolhardy
+fooling
+foolish
+foolishly
+foolishness
+foolproof
+fools
+foolscap
+foot
+footage
+footages
+football
+footballer
+footballers
+footballing
+footballs
+footbath
+footbridge
+footed
+footfall
+footfalls
+footgear
+foothill
+foothills
+foothold
+footholds
+footing
+footings
+footless
+footlights
+footloose
+footman
+footmarks
+footmen
+footnote
+footnotes
+footpads
+footpath
+footpaths
+footplate
+footprint
+footprints
+footrest
+foots
+footsie
+footsore
+footstep
+footsteps
+footstool
+footstools
+footway
+footwear
+footwork
+fop
+fops
+for
+forage
+foraged
+foragers
+forages
+foraging
+foramen
+foray
+forays
+forbad
+forbade
+forbear
+forbearance
+forbearing
+forbears
+forbid
+forbidden
+forbidding
+forbiddingly
+forbids
+forbore
+force
+forced
+forcefeed
+forcefeeding
+forceful
+forcefully
+forcefulness
+forceps
+forces
+forcible
+forcibly
+forcing
+ford
+forded
+fording
+fords
+fore
+forearm
+forearmed
+forearms
+forebear
+forebears
+foreboded
+foreboding
+forebodings
+forebrain
+forecast
+forecaster
+forecasters
+forecasting
+forecasts
+foreclose
+foreclosed
+foreclosure
+forecourt
+forecourts
+foredeck
+forefather
+forefathers
+forefinger
+forefingers
+forefront
+foregather
+foregathered
+forego
+foregoing
+foregone
+foreground
+foregrounded
+foregrounding
+foregrounds
+forehand
+forehead
+foreheads
+foreign
+foreigner
+foreigners
+foreignness
+foreknowledge
+foreland
+foreleg
+forelegs
+forelimbs
+forelock
+foreman
+foremen
+foremost
+forename
+forenames
+forensic
+forensically
+forepaw
+forepaws
+foreplay
+forerunner
+forerunners
+foresail
+foresaw
+foresee
+foreseeability
+foreseeable
+foreseeing
+foreseen
+foresees
+foreshadow
+foreshadowed
+foreshadowing
+foreshadows
+foreshore
+foreshores
+foreshortened
+foreshortening
+foresight
+foreskin
+foreskins
+forest
+forestall
+forestalled
+forestalling
+forestalls
+forested
+forester
+foresters
+forestry
+forests
+foretaste
+foretastes
+foretell
+foretelling
+forethought
+foretold
+forever
+forewarn
+forewarned
+forewarning
+foreword
+forewords
+forfeit
+forfeited
+forfeiting
+forfeits
+forfeiture
+forgave
+forge
+forged
+forger
+forgeries
+forgers
+forgery
+forges
+forget
+forgetful
+forgetfulness
+forgetmenot
+forgetmenots
+forgets
+forgettable
+forgetting
+forging
+forgings
+forgivable
+forgive
+forgiven
+forgiveness
+forgives
+forgiving
+forgo
+forgoing
+forgone
+forgot
+forgotten
+fork
+forked
+forking
+forks
+forlorn
+forlornly
+forlornness
+form
+formal
+formaldehyde
+formalin
+formalisation
+formalisations
+formalise
+formalised
+formalises
+formalising
+formalism
+formalisms
+formalist
+formalistic
+formalities
+formality
+formally
+formant
+format
+formated
+formation
+formations
+formative
+formats
+formatted
+formatting
+formed
+former
+formerly
+formers
+formic
+formidable
+formidably
+forming
+formless
+formlessness
+formosa
+forms
+formula
+formulae
+formulaic
+formulary
+formulas
+formulate
+formulated
+formulates
+formulating
+formulation
+formulations
+formulator
+fornicate
+fornicated
+fornicates
+fornicating
+fornication
+fornicator
+fornicators
+forsake
+forsaken
+forsakes
+forsaking
+forsook
+forswear
+forswearing
+forswore
+forsworn
+forsythia
+fort
+forte
+forth
+forthcoming
+forthright
+forthrightly
+forthrightness
+forthwith
+forties
+fortieth
+fortification
+fortifications
+fortified
+fortify
+fortifying
+fortissimo
+fortitude
+fortknox
+fortnight
+fortnightly
+fortnights
+fortress
+fortresses
+forts
+fortuitous
+fortuitously
+fortunate
+fortunately
+fortune
+fortunes
+fortuneteller
+fortunetellers
+fortunetelling
+forty
+forum
+forums
+forward
+forwarded
+forwarder
+forwarding
+forwardlooking
+forwardly
+forwardness
+forwards
+fossa
+fossil
+fossiliferous
+fossilise
+fossilised
+fossilising
+fossils
+foster
+fostered
+fostering
+fosters
+fought
+foul
+fouled
+fouler
+foulest
+fouling
+foully
+foulmouthed
+foulness
+fouls
+foulup
+foulups
+found
+foundation
+foundational
+foundations
+founded
+founder
+foundered
+foundering
+founders
+founding
+foundling
+foundries
+foundry
+founds
+fount
+fountain
+fountains
+founts
+four
+fourfold
+fours
+foursome
+fourteen
+fourteenth
+fourth
+fourthly
+fourths
+fowl
+fowls
+fox
+foxed
+foxes
+foxhole
+foxholes
+foxhounds
+foxhunt
+foxhunting
+foxhunts
+foxier
+foxiest
+foxily
+foxiness
+foxing
+foxtrot
+foxtrots
+foxy
+foyer
+foyers
+fracas
+fractal
+fractals
+fraction
+fractional
+fractionally
+fractionate
+fractionated
+fractionating
+fractionation
+fractions
+fractious
+fracture
+fractured
+fractures
+fracturing
+fragile
+fragility
+fragment
+fragmentary
+fragmentation
+fragmented
+fragmenting
+fragments
+fragrance
+fragrances
+fragrant
+frail
+frailer
+frailest
+frailly
+frailties
+frailty
+frame
+framed
+framer
+framers
+frames
+frameup
+framework
+frameworks
+framing
+franc
+france
+franchise
+franchised
+franchisee
+franchisees
+franchises
+franchising
+franchisor
+francophone
+francs
+frangipani
+frank
+franked
+franker
+frankest
+frankfurter
+frankincense
+franking
+frankly
+frankness
+franks
+frantic
+frantically
+fraternal
+fraternise
+fraternising
+fraternities
+fraternity
+fratricidal
+fratricide
+fraud
+frauds
+fraudster
+fraudsters
+fraudulent
+fraudulently
+fraught
+fray
+frayed
+fraying
+frays
+frazzle
+frazzled
+freak
+freaked
+freakish
+freaks
+freaky
+freckle
+freckled
+freckles
+free
+freebie
+freebooters
+freed
+freedom
+freedoms
+freefall
+freefalling
+freeforall
+freehand
+freehold
+freeholder
+freeholders
+freeholds
+freeing
+freelance
+freelancer
+freelancers
+freelances
+freelancing
+freely
+freeman
+freemasonry
+freemen
+freer
+freerange
+frees
+freesia
+freesias
+freestanding
+freestyle
+freeway
+freewheeling
+freewheels
+freeze
+freezer
+freezers
+freezes
+freezing
+freight
+freighted
+freighter
+freighters
+freights
+french
+frenetic
+frenetically
+frenzied
+frenziedly
+frenzies
+frenzy
+freon
+freons
+frequencies
+frequency
+frequent
+frequented
+frequenting
+frequently
+frequents
+fresco
+fresh
+freshen
+freshened
+freshener
+fresheners
+freshening
+freshens
+fresher
+freshers
+freshest
+freshly
+freshman
+freshmen
+freshness
+freshwater
+fret
+fretboard
+fretful
+fretfully
+fretfulness
+fretless
+frets
+fretsaw
+fretsaws
+fretted
+fretting
+fretwork
+freud
+freya
+friable
+friar
+friars
+friary
+fricative
+fricatives
+friction
+frictional
+frictionless
+frictions
+friday
+fridays
+fridge
+fridges
+fried
+friend
+friendless
+friendlessness
+friendlier
+friendlies
+friendliest
+friendlily
+friendliness
+friendly
+friends
+friendship
+friendships
+friers
+fries
+frieze
+friezes
+frigate
+frigates
+fright
+frighted
+frighten
+frightened
+frighteners
+frightening
+frighteningly
+frightens
+frightful
+frightfully
+frights
+frigid
+frigidity
+frigidly
+frijole
+frill
+frilled
+frillier
+frilliest
+frills
+frilly
+fringe
+fringed
+fringes
+fringing
+fringy
+frippery
+frisk
+frisked
+friskier
+friskiest
+friskily
+frisking
+frisks
+frisky
+frisson
+fritter
+frittered
+frittering
+fritters
+frivol
+frivolities
+frivolity
+frivolous
+frivolously
+frivols
+frizzle
+frizzles
+frizzy
+fro
+frock
+frocks
+frog
+froggy
+frogman
+frogmarched
+frogmen
+frogs
+frolic
+frolicked
+frolicking
+frolics
+frolicsome
+from
+frond
+fronds
+front
+frontage
+frontages
+frontal
+frontally
+frontals
+fronted
+frontier
+frontiers
+fronting
+frontispiece
+frontispieces
+frontline
+frontpage
+fronts
+frost
+frostbite
+frostbitten
+frosted
+frostier
+frostiest
+frostily
+frosting
+frosts
+frosty
+froth
+frothed
+frothier
+frothiest
+frothing
+froths
+frothy
+froward
+frown
+frowned
+frowning
+frowningly
+frowns
+froze
+frozen
+fructose
+frugal
+frugality
+frugally
+fruit
+fruitcake
+fruitcakes
+fruited
+fruiter
+fruitful
+fruitfully
+fruitfulness
+fruitier
+fruitiest
+fruitiness
+fruiting
+fruition
+fruitless
+fruitlessly
+fruitlessness
+fruits
+fruity
+frumps
+frumpy
+frustrate
+frustrated
+frustratedly
+frustrates
+frustrating
+frustratingly
+frustration
+frustrations
+frustum
+fry
+fryer
+fryers
+frying
+fryings
+fuchsia
+fuchsias
+fuddle
+fuddled
+fuddles
+fudge
+fudged
+fudges
+fudging
+fuel
+fuelled
+fuelling
+fuels
+fug
+fugal
+fugitive
+fugitives
+fugue
+fugues
+fuhrer
+fulcrum
+fulfil
+fulfilled
+fulfilling
+fulfilment
+fulfils
+full
+fullback
+fullbacks
+fullblooded
+fullblown
+fullbodied
+fullcolour
+fuller
+fullest
+fullgrown
+fulling
+fullish
+fulllength
+fullmoon
+fullness
+fullpage
+fullscale
+fullstop
+fullstops
+fulltime
+fulltimer
+fulltimers
+fully
+fulminant
+fulminate
+fulminating
+fulmination
+fulminations
+fulsome
+fulsomely
+fumarole
+fumaroles
+fumble
+fumbled
+fumbles
+fumbling
+fume
+fumed
+fumes
+fumigate
+fumigating
+fumigation
+fuming
+fumingly
+fun
+function
+functional
+functionalism
+functionalist
+functionalities
+functionality
+functionally
+functionaries
+functionary
+functioned
+functioning
+functionless
+functions
+fund
+fundamental
+fundamentalism
+fundamentalist
+fundamentalists
+fundamentally
+fundamentals
+funded
+fundholders
+fundholding
+funding
+fundings
+fundraiser
+fundraisers
+fundraising
+funds
+funeral
+funerals
+funerary
+funereal
+funfair
+fungal
+fungi
+fungicidal
+fungicide
+fungicides
+fungoid
+fungous
+fungus
+funguses
+funicular
+funk
+funked
+funkier
+funky
+funnel
+funnelled
+funnelling
+funnels
+funnier
+funnies
+funniest
+funnily
+funny
+fur
+furbished
+furbishing
+furies
+furious
+furiously
+furled
+furling
+furlong
+furlongs
+furlough
+furls
+furnace
+furnaces
+furnish
+furnished
+furnishers
+furnishes
+furnishing
+furnishings
+furniture
+furore
+furores
+furred
+furrier
+furriers
+furriest
+furriness
+furring
+furrow
+furrowed
+furrows
+furry
+furs
+further
+furtherance
+furthered
+furthering
+furthermore
+furthers
+furthest
+furtive
+furtively
+furtiveness
+fury
+furze
+fuse
+fused
+fuselage
+fuses
+fusible
+fusilier
+fusiliers
+fusillade
+fusing
+fusion
+fusions
+fuss
+fussed
+fusses
+fussier
+fussiest
+fussily
+fussiness
+fussing
+fussy
+fustian
+fusty
+futile
+futilely
+futility
+futon
+future
+futures
+futurism
+futurist
+futuristic
+futurists
+futurity
+futurologists
+fuzz
+fuzzed
+fuzzes
+fuzzier
+fuzziest
+fuzzily
+fuzziness
+fuzzy
+gab
+gabble
+gabbled
+gabbles
+gabbling
+gaberdine
+gable
+gabled
+gables
+gabon
+gad
+gadded
+gadding
+gadfly
+gadget
+gadgetry
+gadgets
+gaff
+gaffe
+gaffes
+gag
+gaga
+gage
+gagged
+gagging
+gaggle
+gaggled
+gaging
+gags
+gagster
+gaiety
+gaijin
+gaily
+gain
+gained
+gainer
+gainers
+gainful
+gainfully
+gaining
+gainly
+gains
+gainsay
+gainsaying
+gait
+gaiter
+gaiters
+gaits
+gal
+gala
+galactic
+galas
+galaxies
+galaxy
+gale
+galena
+gales
+galilean
+galileo
+gall
+gallant
+gallantly
+gallantries
+gallantry
+gallants
+galled
+galleon
+galleons
+galleried
+galleries
+gallery
+galley
+galleys
+gallic
+galling
+gallium
+gallivanted
+gallivanting
+gallon
+gallons
+gallop
+galloped
+galloping
+gallops
+gallows
+galls
+gallstones
+galop
+galore
+galoshes
+gals
+galvanic
+galvanise
+galvanised
+galvanising
+galvanometer
+galvanometric
+gambia
+gambian
+gambit
+gambits
+gamble
+gambled
+gambler
+gamblers
+gambles
+gambling
+gambol
+gambolling
+gambols
+game
+gamed
+gamekeeper
+gamekeepers
+gamely
+gamers
+games
+gamesmanship
+gamesmen
+gamete
+gametes
+gaming
+gamma
+gammon
+gamut
+gamy
+gander
+ganders
+gandhi
+gang
+ganged
+ganger
+gangers
+ganges
+ganging
+gangland
+ganglia
+gangling
+ganglion
+ganglionic
+gangly
+gangplank
+gangrene
+gangrenous
+gangs
+gangster
+gangsterism
+gangsters
+gangway
+gangways
+gannet
+gannets
+gantries
+gantry
+gaol
+gaoled
+gaoler
+gaolers
+gaols
+gap
+gape
+gaped
+gapes
+gaping
+gapingly
+gaps
+garage
+garaged
+garages
+garb
+garbage
+garbed
+garble
+garbled
+garbles
+garbling
+garbs
+garden
+gardener
+gardeners
+gardening
+gardens
+gargantuan
+gargle
+gargled
+gargles
+gargling
+gargoyle
+gargoyles
+garish
+garishly
+garland
+garlanded
+garlands
+garlic
+garment
+garments
+garner
+garnered
+garnering
+garnet
+garnets
+garnish
+garnished
+garnishing
+garotte
+garotted
+garottes
+garotting
+garret
+garrets
+garrison
+garrisoned
+garrisons
+garrotte
+garrotted
+garrottes
+garrotting
+garrulous
+garter
+garters
+gas
+gaseous
+gases
+gash
+gashed
+gashes
+gashing
+gasholder
+gasify
+gasket
+gaskets
+gaslight
+gasometer
+gasp
+gasped
+gasper
+gasping
+gasps
+gassed
+gasses
+gassier
+gassiest
+gassing
+gassy
+gastrectomy
+gastric
+gastritis
+gastroenteritis
+gastrointestinal
+gastronomic
+gastronomy
+gastropod
+gastropods
+gasworks
+gate
+gateau
+gateaus
+gateaux
+gatecrash
+gatecrashed
+gatecrasher
+gatecrashers
+gatecrashing
+gated
+gatehouse
+gatehouses
+gatekeeper
+gatekeepers
+gatepost
+gateposts
+gates
+gateway
+gateways
+gather
+gathered
+gatherer
+gatherers
+gathering
+gatherings
+gathers
+gating
+gauche
+gaucheness
+gaucherie
+gaud
+gaudiest
+gaudily
+gaudiness
+gaudy
+gauge
+gauged
+gauges
+gauging
+gaul
+gauls
+gaunt
+gaunter
+gauntlet
+gauntlets
+gauntly
+gauze
+gave
+gavel
+gavial
+gavials
+gavotte
+gawk
+gawking
+gawky
+gawpin
+gay
+gayest
+gays
+gaze
+gazebo
+gazed
+gazelle
+gazelles
+gazes
+gazette
+gazetteer
+gazettes
+gazing
+gdansk
+gear
+gearbox
+gearboxes
+geared
+gearing
+gears
+gearstick
+gecko
+geek
+geeks
+geese
+geezer
+geiger
+geisha
+geishas
+gel
+gelatin
+gelatine
+gelatinous
+gelding
+geldings
+gelignite
+gelled
+gels
+gem
+gemini
+gemmed
+gems
+gemsbok
+gemstone
+gemstones
+gen
+gender
+gendered
+genderless
+genders
+gene
+genealogical
+genealogies
+genealogist
+genealogy
+genera
+general
+generalisable
+generalisation
+generalisations
+generalise
+generalised
+generalises
+generalising
+generalist
+generalists
+generalities
+generality
+generally
+generals
+generalship
+generate
+generated
+generates
+generating
+generation
+generational
+generations
+generative
+generator
+generators
+generic
+generically
+generosities
+generosity
+generous
+generously
+genes
+genesis
+genetic
+genetically
+geneticist
+geneticists
+genetics
+genets
+geneva
+genial
+geniality
+genially
+genie
+genii
+genital
+genitalia
+genitals
+genitive
+genitives
+genius
+geniuses
+genoa
+genocidal
+genocide
+genome
+genomes
+genomic
+genotype
+genotypes
+genre
+genres
+gent
+genteel
+genteelest
+genteelly
+gentians
+gentile
+gentiles
+gentility
+gentle
+gentlefolk
+gentleman
+gentlemanly
+gentlemen
+gentleness
+gentler
+gentlest
+gentling
+gently
+gentrification
+gentrified
+gentrifying
+gentry
+gents
+genuflect
+genuflections
+genuine
+genuinely
+genuineness
+genus
+geocentric
+geochemical
+geochemistry
+geodesic
+geodesics
+geographer
+geographers
+geographic
+geographical
+geographically
+geography
+geologic
+geological
+geologically
+geologist
+geologists
+geology
+geomagnetic
+geomagnetically
+geomagnetism
+geometer
+geometers
+geometric
+geometrical
+geometrically
+geometries
+geometry
+geomorphological
+geomorphologists
+geomorphology
+geophysical
+geophysicist
+geophysicists
+geophysics
+geopolitical
+george
+georgia
+geoscientific
+geostationary
+geosynchronous
+geothermal
+geranium
+geraniums
+gerbil
+gerbils
+geriatric
+geriatrics
+germ
+german
+germane
+germanic
+germanium
+germans
+germany
+germicidal
+germicides
+germinal
+germinate
+germinated
+germinating
+germination
+germs
+gerontocracy
+gerontologist
+gerontology
+gerrymander
+gerrymandered
+gerund
+gerundive
+gestalt
+gestapo
+gestate
+gestating
+gestation
+gestational
+gesticulate
+gesticulated
+gesticulating
+gesticulation
+gesticulations
+gestural
+gesture
+gestured
+gestures
+gesturing
+get
+getable
+getaway
+getrichquick
+gets
+gettable
+getter
+getting
+geyser
+geysers
+ghana
+ghanian
+ghastlier
+ghastliest
+ghastliness
+ghastly
+gherkin
+gherkins
+ghetto
+ghost
+ghosted
+ghosting
+ghostlier
+ghostliest
+ghostlike
+ghostly
+ghosts
+ghoul
+ghoulish
+ghouls
+giant
+giantess
+giantism
+giantkiller
+giantkillers
+giants
+gibber
+gibbered
+gibbering
+gibberish
+gibbet
+gibbets
+gibbon
+gibbons
+gibbous
+gibed
+gibes
+giblets
+giddier
+giddiest
+giddily
+giddiness
+giddy
+gift
+gifted
+gifting
+gifts
+giftware
+gig
+gigabytes
+gigantic
+gigantically
+gigavolt
+giggle
+giggled
+giggles
+giggling
+giggly
+gigolo
+gilded
+gilders
+gilding
+gilds
+gill
+gillie
+gills
+gilt
+giltedged
+gilts
+gimcrack
+gimlet
+gimlets
+gimmick
+gimmickry
+gimmicks
+gimmicky
+gin
+ginger
+gingerbread
+gingerly
+gingers
+gingery
+gingham
+gingivitis
+gins
+ginseng
+gipsies
+gipsy
+giraffe
+giraffes
+gird
+girded
+girder
+girders
+girding
+girdle
+girdled
+girdles
+girdling
+girl
+girlfriend
+girlfriends
+girlhood
+girlie
+girlish
+girlishly
+girlishness
+girls
+giro
+girt
+girth
+girths
+gist
+give
+giveaway
+given
+giver
+givers
+gives
+giving
+givings
+gizzard
+glace
+glacial
+glacially
+glaciated
+glaciation
+glaciations
+glacier
+glaciers
+glaciological
+glaciologist
+glaciologists
+glaciology
+glad
+gladden
+gladdened
+gladdening
+gladdens
+gladder
+gladdest
+glade
+glades
+gladiator
+gladiatorial
+gladiators
+gladioli
+gladiolus
+gladly
+gladness
+glamorous
+glamour
+glance
+glanced
+glances
+glancing
+gland
+glands
+glandular
+glans
+glare
+glared
+glares
+glaring
+glaringly
+glasgow
+glasnost
+glass
+glassed
+glasses
+glassful
+glasshouse
+glasshouses
+glassier
+glassiest
+glassless
+glassware
+glassy
+glaucoma
+glaucous
+glaze
+glazed
+glazer
+glazes
+glazier
+glaziers
+glazing
+gleam
+gleamed
+gleaming
+gleams
+glean
+gleaned
+gleaning
+gleanings
+gleans
+glebe
+glee
+gleeful
+gleefully
+gleefulness
+glen
+glenn
+glens
+glia
+glib
+glibly
+glibness
+glide
+glided
+glider
+gliders
+glides
+gliding
+glim
+glimmer
+glimmered
+glimmering
+glimmerings
+glimmers
+glimpse
+glimpsed
+glimpses
+glimpsing
+glint
+glinted
+glinting
+glints
+glisten
+glistened
+glistening
+glistens
+glitter
+glittered
+glittering
+glitters
+glittery
+glitzy
+gloaming
+gloat
+gloated
+gloating
+glob
+global
+globalisation
+globally
+globe
+globed
+globes
+globetrotters
+globetrotting
+globose
+globular
+globule
+globules
+gloom
+gloomful
+gloomier
+gloomiest
+gloomily
+gloominess
+glooms
+gloomy
+gloried
+glories
+glorification
+glorified
+glorifies
+glorify
+glorifying
+glorious
+gloriously
+glory
+glorying
+gloss
+glossaries
+glossary
+glossed
+glosses
+glossier
+glossiest
+glossily
+glossing
+glossy
+glottal
+glove
+gloved
+gloves
+glow
+glowed
+glower
+glowered
+glowering
+glowers
+glowing
+glowingly
+glows
+glowworm
+glowworms
+glucose
+glue
+glued
+glueing
+glues
+gluey
+gluing
+glum
+glumly
+gluon
+glut
+glutamate
+gluten
+glutinous
+glutted
+glutton
+gluttonous
+gluttons
+gluttony
+glycerine
+glycerol
+glycine
+glycol
+glyph
+glyphs
+gnarl
+gnarled
+gnarling
+gnarls
+gnash
+gnashed
+gnashes
+gnashing
+gnat
+gnats
+gnaw
+gnawed
+gnawer
+gnawers
+gnawing
+gnaws
+gneiss
+gnome
+gnomes
+gnomic
+gnostic
+gnosticism
+gnu
+gnus
+go
+goad
+goaded
+goading
+goads
+goahead
+goal
+goalies
+goalkeeper
+goalkeepers
+goalkeeping
+goalless
+goalmouth
+goalpost
+goalposts
+goals
+goalscorer
+goalscorers
+goalscoring
+goat
+goatee
+goatees
+goats
+goatskin
+gobbet
+gobbets
+gobble
+gobbled
+gobbledegook
+gobbledygook
+gobbler
+gobbles
+gobbling
+gobetween
+gobi
+gobies
+goblet
+goblets
+goblin
+goblins
+god
+godchild
+goddess
+goddesses
+godfather
+godfathers
+godforsaken
+godhead
+godless
+godlessness
+godlier
+godlike
+godliness
+godly
+godmother
+godmothers
+godparents
+gods
+godsend
+godson
+godsons
+goer
+goers
+goes
+goethe
+gofer
+goggled
+goggles
+goggling
+going
+goings
+goitre
+goitres
+gold
+golden
+goldfish
+golds
+goldsmith
+goldsmiths
+golf
+golfer
+golfers
+golfing
+golgotha
+goliath
+golliwog
+golly
+gonad
+gonads
+gondola
+gondolas
+gondolier
+gondoliers
+gone
+gong
+gongs
+gonorrhoea
+goo
+good
+goodbye
+goodbyes
+goodfornothing
+goodfornothings
+goodhope
+goodhumoured
+goodhumouredly
+goodies
+goodish
+goodlooking
+goodly
+goodnatured
+goodnaturedly
+goodness
+goodnight
+goods
+goodtempered
+goodwill
+goody
+gooey
+goof
+goofed
+goofing
+goofs
+goofy
+googlies
+googly
+goon
+goons
+goose
+gooseberries
+gooseberry
+goosestep
+goosestepping
+gopher
+gophers
+gordian
+gore
+gored
+gores
+gorge
+gorged
+gorgeous
+gorgeously
+gorgeousness
+gorges
+gorging
+gorgon
+gorgons
+gorier
+goriest
+gorilla
+gorillas
+goring
+gormless
+gorse
+gory
+gosh
+gosling
+goslings
+goslow
+goslows
+gospel
+gospels
+gossamer
+gossip
+gossiped
+gossiping
+gossips
+gossipy
+got
+goth
+gothic
+goths
+gotten
+gouda
+gouge
+gouged
+gouges
+gouging
+goulash
+gourd
+gourds
+gourmand
+gourmet
+gourmets
+gout
+govern
+governance
+governed
+governess
+governesses
+governing
+government
+governmental
+governments
+governor
+governors
+governorship
+governorships
+governs
+gown
+gowned
+gowns
+grab
+grabbed
+grabber
+grabbers
+grabbing
+grabs
+grace
+graced
+graceful
+gracefully
+gracefulness
+graceless
+gracelessly
+graces
+gracing
+gracious
+graciously
+graciousness
+gradation
+gradations
+grade
+graded
+grader
+graders
+grades
+gradient
+gradients
+grading
+gradings
+gradual
+gradualism
+gradualist
+gradually
+graduand
+graduands
+graduate
+graduated
+graduates
+graduating
+graduation
+graduations
+graffiti
+graffito
+graft
+grafted
+grafting
+grafts
+graham
+grail
+grails
+grain
+grained
+grainier
+grainiest
+graininess
+grains
+grainy
+gram
+grammar
+grammarian
+grammarians
+grammars
+grammatical
+grammatically
+gramme
+grammes
+gramophone
+gramophones
+grams
+granaries
+granary
+grand
+grandads
+grandchild
+grandchildren
+granddad
+granddaughter
+granddaughters
+grandee
+grandees
+grander
+grandest
+grandeur
+grandfather
+grandfathers
+grandiloquent
+grandiose
+grandiosity
+grandly
+grandma
+grandmas
+grandmaster
+grandmasters
+grandmother
+grandmothers
+grandpa
+grandparent
+grandparents
+grandpas
+grands
+grandson
+grandsons
+grandstand
+grange
+granite
+granites
+granitic
+grannie
+grannies
+granny
+grant
+granted
+grantee
+granting
+grants
+granular
+granularity
+granulated
+granulation
+granule
+granules
+granulocyte
+grape
+grapefruit
+grapes
+grapeshot
+grapevine
+graph
+graphed
+graphic
+graphical
+graphically
+graphics
+graphite
+graphologist
+graphologists
+graphology
+graphs
+grapnel
+grapple
+grappled
+grapples
+grappling
+graptolites
+grasp
+grasped
+grasper
+grasping
+grasps
+grass
+grassed
+grasses
+grasshopper
+grasshoppers
+grassier
+grassiest
+grassland
+grasslands
+grassroots
+grassy
+grate
+grated
+grateful
+gratefully
+grater
+graters
+grates
+graticule
+gratification
+gratifications
+gratified
+gratifies
+gratify
+gratifying
+gratifyingly
+grating
+gratings
+gratis
+gratitude
+gratuities
+gratuitous
+gratuitously
+gratuitousness
+gratuity
+grave
+gravedigger
+gravediggers
+gravel
+gravelled
+gravelly
+gravels
+gravely
+graven
+graver
+graves
+graveside
+gravest
+gravestone
+gravestones
+graveyard
+graveyards
+gravies
+gravitas
+gravitate
+gravitated
+gravitating
+gravitation
+gravitational
+gravitationally
+gravities
+graviton
+gravitons
+gravity
+gravures
+gravy
+graze
+grazed
+grazer
+grazes
+grazing
+grease
+greased
+greasepaint
+greaseproof
+greasers
+greases
+greasier
+greasiest
+greasing
+greasy
+great
+greataunt
+greataunts
+greatcoat
+greatcoats
+greater
+greatest
+greatgrandchildren
+greatgranddaughter
+greatgrandfather
+greatgrandmother
+greatgrandmothers
+greatgrandson
+greatly
+greatness
+grecian
+greece
+greed
+greedier
+greediest
+greedily
+greediness
+greeds
+greedy
+greek
+greeks
+green
+greened
+greener
+greenery
+greenest
+greeneyed
+greenfield
+greenfly
+greengages
+greengrocer
+greengrocers
+greengrocery
+greenhorn
+greenhorns
+greenhouse
+greenhouses
+greenie
+greening
+greenish
+greenly
+greenness
+greens
+greenstone
+greensward
+greenwich
+greet
+greeted
+greeting
+greetings
+greets
+gregarious
+gregariously
+gregariousness
+gremlin
+gremlins
+grenade
+grenades
+grenadier
+grenadiers
+grew
+grey
+greybeard
+greyed
+greyer
+greyest
+greyhound
+greyhounds
+greying
+greyish
+greyness
+greys
+grid
+gridded
+gridiron
+gridlock
+grids
+grief
+griefs
+grievance
+grievances
+grieve
+grieved
+griever
+grievers
+grieves
+grieving
+grievous
+grievously
+griffin
+griffins
+griffon
+grill
+grille
+grilled
+grilles
+grilling
+grills
+grim
+grimace
+grimaced
+grimaces
+grimacing
+grime
+grimiest
+grimly
+grimm
+grimmer
+grimmest
+grimness
+grimy
+grin
+grind
+grinded
+grinder
+grinders
+grinding
+grinds
+grindstone
+grinned
+grinner
+grinning
+grins
+grip
+gripe
+griped
+gripes
+griping
+gripped
+gripper
+grippers
+gripping
+grips
+grislier
+grisliest
+grisly
+grist
+gristle
+grit
+grits
+gritted
+grittier
+grittiest
+gritting
+gritty
+grizzled
+grizzlier
+grizzliest
+grizzly
+groan
+groaned
+groaner
+groaners
+groaning
+groans
+groat
+groats
+grocer
+groceries
+grocers
+grocery
+grog
+groggiest
+groggily
+groggy
+groin
+groins
+grommet
+grommets
+groom
+groomed
+groomer
+groomers
+grooming
+grooms
+groove
+grooved
+grooves
+groovier
+grooving
+groovy
+grope
+groped
+groper
+gropers
+gropes
+groping
+gropingly
+gropings
+gross
+grossed
+grosser
+grossest
+grossly
+grossness
+grotesque
+grotesquely
+grotesqueness
+grotto
+grouch
+grouchy
+ground
+grounded
+grounding
+groundless
+groundnut
+groundnuts
+grounds
+groundsheet
+groundsman
+groundswell
+groundwater
+groundwork
+group
+grouped
+grouper
+groupie
+groupies
+grouping
+groupings
+groups
+grouse
+grouses
+grout
+grouting
+grove
+grovel
+grovelled
+groveller
+grovelling
+grovels
+groves
+grow
+grower
+growers
+growing
+growl
+growled
+growler
+growling
+growls
+grown
+grownup
+grownups
+grows
+growth
+growths
+grub
+grubbed
+grubbier
+grubbiest
+grubbing
+grubby
+grubs
+grudge
+grudges
+grudging
+grudgingly
+gruel
+grueling
+gruelling
+gruesome
+gruesomely
+gruesomeness
+gruff
+gruffly
+gruffness
+grumble
+grumbled
+grumbler
+grumbles
+grumbling
+grumblings
+grumpier
+grumpiest
+grumpily
+grumps
+grumpy
+grunge
+grunt
+grunted
+grunter
+grunting
+grunts
+guacamole
+guanaco
+guanine
+guano
+guarantee
+guaranteed
+guaranteeing
+guarantees
+guarantor
+guarantors
+guard
+guarded
+guardedly
+guardedness
+guardhouse
+guardian
+guardians
+guardianship
+guarding
+guardroom
+guards
+guardsman
+guardsmen
+guava
+guavas
+gubernatorial
+gudgeon
+guerilla
+guerillas
+guerrilla
+guerrillas
+guess
+guessable
+guessed
+guesses
+guessing
+guesswork
+guest
+guesting
+guests
+guffaw
+guffawed
+guffaws
+guidance
+guide
+guidebook
+guidebooks
+guided
+guideline
+guidelines
+guider
+guiders
+guides
+guiding
+guidings
+guild
+guilder
+guilders
+guilds
+guile
+guileless
+guilelessness
+guillemot
+guillemots
+guillotine
+guillotined
+guillotines
+guillotining
+guilt
+guiltier
+guiltiest
+guiltily
+guiltiness
+guiltless
+guilts
+guilty
+guinea
+guineas
+guise
+guises
+guitar
+guitarist
+guitarists
+guitars
+gulf
+gulfs
+gulfwar
+gull
+gullet
+gullets
+gulley
+gulleys
+gullibility
+gullible
+gullies
+gulls
+gully
+gulp
+gulped
+gulping
+gulps
+gum
+gumboil
+gumboils
+gumboots
+gumdrop
+gumdrops
+gummed
+gumming
+gums
+gumshoe
+gumtree
+gumtrees
+gun
+gunboat
+gunboats
+gunfight
+gunfire
+gunfires
+gunite
+gunk
+gunman
+gunmen
+gunmetal
+gunned
+gunner
+gunners
+gunnery
+gunning
+gunpoint
+gunpowder
+guns
+gunship
+gunships
+gunshot
+gunshots
+gunsight
+gunsmith
+gunsmiths
+gunwale
+gunwales
+guppies
+guppy
+gurgle
+gurgled
+gurgles
+gurgling
+guru
+gurus
+gush
+gushed
+gusher
+gushes
+gushing
+gusset
+gust
+gusted
+gustier
+gustiest
+gusting
+gusto
+gusts
+gusty
+gut
+gutless
+guts
+gutsier
+gutsy
+gutted
+gutter
+guttered
+guttering
+gutters
+guttersnipe
+guttersnipes
+gutting
+guttural
+gutturally
+guy
+guys
+guzzle
+guzzled
+guzzler
+guzzlers
+guzzling
+gym
+gymkhana
+gymnasia
+gymnasium
+gymnasiums
+gymnast
+gymnastic
+gymnastics
+gymnasts
+gyms
+gynaecological
+gynaecologist
+gynaecologists
+gynaecology
+gypsies
+gypsum
+gypsy
+gyrate
+gyrated
+gyrates
+gyrating
+gyration
+gyrations
+gyro
+gyromagnetic
+gyroscope
+gyroscopes
+gyroscopic
+ha
+haberdasher
+haberdashers
+haberdashery
+habit
+habitability
+habitable
+habitat
+habitation
+habitations
+habitats
+habitforming
+habits
+habitual
+habitually
+habituate
+habituated
+habituation
+hacienda
+hack
+hackable
+hacked
+hacker
+hackers
+hacking
+hackle
+hackles
+hackling
+hackney
+hackneyed
+hacks
+hacksaw
+had
+haddock
+haddocks
+hades
+hadnt
+hadron
+hadrons
+haematological
+haematologist
+haematology
+haematoma
+haematuria
+haemoglobin
+haemolytic
+haemophilia
+haemophiliac
+haemophiliacs
+haemorrhage
+haemorrhages
+haemorrhagic
+haemorrhaging
+haemorrhoid
+haemorrhoids
+haft
+hafts
+hag
+haggard
+haggardness
+haggis
+haggle
+haggled
+haggler
+haggling
+hagiography
+hags
+haha
+haiku
+hail
+hailed
+hailing
+hails
+hailstone
+hailstones
+hailstorm
+hailstorms
+hair
+hairbrush
+haircare
+haircut
+haircuts
+hairdo
+hairdresser
+hairdressers
+hairdressing
+haired
+hairier
+hairiest
+hairiness
+hairless
+hairline
+hairnet
+hairpiece
+hairpin
+hairpins
+hairraising
+hairs
+hairsplitting
+hairspray
+hairsprays
+hairstyle
+hairstyles
+hairstyling
+hairy
+haiti
+haitian
+hake
+hakea
+hale
+half
+halfhearted
+halfheartedly
+halfheartedness
+halfhour
+halfhourly
+halfhours
+halfsister
+halftruth
+halftruths
+halfway
+halibut
+halifax
+halite
+halitosis
+hall
+hallelujah
+hallmark
+hallmarks
+hallo
+hallow
+hallowed
+hallows
+halls
+hallucinate
+hallucinated
+hallucinating
+hallucination
+hallucinations
+hallucinatory
+hallway
+hallways
+halo
+haloed
+halogen
+halogenated
+halogens
+halon
+halons
+halt
+halted
+halter
+haltered
+halters
+halting
+haltingly
+halts
+halve
+halved
+halves
+halving
+ham
+hamburg
+hamburger
+hamburgers
+hamitic
+hamlet
+hamlets
+hammer
+hammered
+hammerhead
+hammering
+hammers
+hammock
+hammocks
+hamper
+hampered
+hampering
+hampers
+hams
+hamster
+hamsters
+hamstring
+hamstrings
+hamstrung
+hand
+handbag
+handbags
+handball
+handbasin
+handbell
+handbill
+handbills
+handbook
+handbooks
+handbrake
+handbrakes
+handcar
+handcart
+handcuff
+handcuffed
+handcuffing
+handcuffs
+handed
+handedness
+handel
+handful
+handfuls
+handgun
+handguns
+handhold
+handholds
+handicap
+handicapped
+handicapping
+handicaps
+handicraft
+handicrafts
+handier
+handiest
+handily
+handing
+handiwork
+handkerchief
+handkerchiefs
+handle
+handlebar
+handlebars
+handled
+handler
+handlers
+handles
+handling
+handmade
+handmaiden
+handmaidens
+handout
+handouts
+handover
+handovers
+handpicked
+handrail
+handrails
+hands
+handset
+handsets
+handshake
+handshakes
+handshaking
+handsome
+handsomely
+handsomeness
+handsomer
+handsomest
+handstand
+handstands
+handwriting
+handwritten
+handy
+handyman
+handymen
+hang
+hangar
+hangars
+hangdog
+hanged
+hanger
+hangers
+hangglide
+hangglided
+hangglider
+hanggliders
+hangglides
+hanggliding
+hanging
+hangings
+hangman
+hangmen
+hangouts
+hangover
+hangovers
+hangs
+hangup
+hanker
+hankered
+hankering
+hankers
+hankie
+hankies
+hanoi
+hanover
+hansard
+hansom
+haphazard
+haphazardly
+hapless
+happen
+happened
+happening
+happenings
+happens
+happier
+happiest
+happily
+happiness
+happy
+happygolucky
+harangue
+harangued
+harangues
+haranguing
+harare
+harass
+harassed
+harassers
+harasses
+harassing
+harassment
+harbinger
+harbingers
+harbour
+harboured
+harbouring
+harbours
+hard
+hardback
+hardbacks
+hardboard
+hardboiled
+hardcore
+hardearned
+harden
+hardened
+hardener
+hardeners
+hardening
+hardens
+harder
+hardest
+hardheaded
+hardhearted
+hardheartedness
+hardhit
+hardhitting
+hardier
+hardiest
+hardily
+hardiness
+hardline
+hardliner
+hardliners
+hardly
+hardness
+hardpressed
+hardship
+hardships
+hardup
+hardware
+hardwood
+hardwoods
+hardworking
+hardy
+hare
+harebell
+harebells
+harebrained
+hared
+harem
+harems
+hares
+hark
+harked
+harken
+harkened
+harkens
+harking
+harks
+harlequin
+harlequins
+harlot
+harlots
+harm
+harmed
+harmer
+harmful
+harmfully
+harmfulness
+harming
+harmless
+harmlessly
+harmlessness
+harmonic
+harmonica
+harmonically
+harmonics
+harmonies
+harmonious
+harmoniously
+harmonisation
+harmonise
+harmonised
+harmonising
+harmonium
+harmony
+harms
+harness
+harnessed
+harnesses
+harnessing
+harp
+harped
+harping
+harpist
+harpists
+harpoon
+harpoons
+harps
+harpsichord
+harpsichords
+harridan
+harried
+harrier
+harriers
+harrow
+harrowed
+harrowing
+harrows
+harry
+harrying
+harsh
+harshen
+harshens
+harsher
+harshest
+harshly
+harshness
+hart
+harts
+harvard
+harvest
+harvested
+harvester
+harvesters
+harvesting
+harvests
+has
+hasbeen
+hasbeens
+hash
+hashed
+hashes
+hashing
+hashish
+hasnt
+hasp
+hassle
+haste
+hasted
+hasten
+hastened
+hastening
+hastens
+hastes
+hastier
+hastiest
+hastily
+hastiness
+hasty
+hat
+hatch
+hatchback
+hatchbacks
+hatched
+hatcheries
+hatchery
+hatches
+hatchet
+hatchets
+hatching
+hatchway
+hate
+hated
+hateful
+hatefully
+hater
+haters
+hates
+hatful
+hating
+hatless
+hatrack
+hatracks
+hatred
+hatreds
+hats
+hatstands
+hatted
+hatter
+hatters
+hattrick
+hattricks
+haughtier
+haughtiest
+haughtily
+haughtiness
+haughty
+haul
+haulage
+haulages
+hauled
+hauler
+haulers
+haulier
+hauliers
+hauling
+haulms
+hauls
+haunch
+haunches
+haunt
+haunted
+haunting
+hauntingly
+haunts
+hauteur
+havana
+have
+haven
+havenots
+havens
+havent
+havering
+haversack
+haves
+having
+havoc
+hawaii
+hawaiian
+hawk
+hawked
+hawker
+hawkers
+hawking
+hawkish
+hawks
+hawser
+hawsers
+hawthorn
+hawthorns
+hay
+haydn
+hayfever
+hayfield
+hayloft
+haystack
+haystacks
+haywain
+haywire
+hazard
+hazarded
+hazarding
+hazardous
+hazards
+haze
+hazel
+hazelnut
+hazelnuts
+hazier
+haziest
+hazily
+haziness
+hazy
+he
+head
+headache
+headaches
+headband
+headbands
+headboard
+headboards
+headcount
+headdress
+headdresses
+headed
+header
+headers
+headfast
+headgear
+headhunted
+headhunters
+headier
+headiest
+heading
+headings
+headlamp
+headlamps
+headland
+headlands
+headless
+headlight
+headlights
+headline
+headlined
+headlines
+headlining
+headlock
+headlong
+headman
+headmaster
+headmasters
+headmastership
+headmen
+headmistress
+headmistresses
+headnote
+headon
+headphone
+headphones
+headpiece
+headquarters
+headrest
+headroom
+heads
+headscarf
+headscarves
+headset
+headsets
+headship
+headstand
+headstock
+headstone
+headstones
+headstrong
+headwaters
+headway
+headwind
+headwinds
+headword
+headwords
+headwork
+heady
+heal
+healed
+healer
+healers
+healing
+heals
+health
+healthful
+healthier
+healthiest
+healthily
+healthiness
+healths
+healthy
+heap
+heaped
+heaping
+heaps
+hear
+hearable
+heard
+hearer
+hearers
+hearing
+hearings
+hearken
+hearkened
+hearkening
+hearkens
+hears
+hearsay
+hearse
+hearses
+heart
+heartache
+heartbeat
+heartbeats
+heartbreak
+heartbreaking
+heartbreaks
+heartbroken
+heartburn
+hearten
+heartened
+heartening
+heartfelt
+hearth
+hearthrug
+hearths
+hearties
+heartiest
+heartily
+heartiness
+heartland
+heartlands
+heartless
+heartlessly
+heartlessness
+heartrending
+hearts
+heartsearching
+heartstrings
+hearttoheart
+heartwarming
+heartwood
+hearty
+heat
+heated
+heatedly
+heater
+heaters
+heath
+heathen
+heathenish
+heathenism
+heathens
+heather
+heathers
+heathery
+heathland
+heaths
+heating
+heatresistant
+heats
+heatwave
+heave
+heaved
+heaveho
+heaven
+heavenly
+heavens
+heavensent
+heavenward
+heavenwards
+heaves
+heavier
+heavies
+heaviest
+heavily
+heaviness
+heaving
+heavings
+heavy
+heavyduty
+heavyweight
+heavyweights
+hebrew
+hebrews
+heck
+heckle
+heckled
+heckler
+hecklers
+heckles
+heckling
+hectare
+hectares
+hectic
+hectically
+hectolitres
+hector
+hectoring
+hedge
+hedged
+hedgehog
+hedgehogs
+hedgerow
+hedgerows
+hedges
+hedging
+hedonism
+hedonist
+hedonistic
+hedonists
+heed
+heeded
+heedful
+heeding
+heedless
+heedlessly
+heedlessness
+heeds
+heel
+heeled
+heels
+heft
+hefted
+heftier
+hefting
+hefty
+hegemonic
+hegemony
+heifer
+heifers
+height
+heighten
+heightened
+heightening
+heightens
+heights
+heinous
+heir
+heiress
+heiresses
+heirloom
+heirlooms
+heirs
+heist
+heists
+held
+helen
+helical
+helices
+helicopter
+helicopters
+heliocentric
+heliography
+heliosphere
+heliotrope
+helipad
+helium
+helix
+helixes
+hell
+hellenic
+hellfire
+hellish
+hellishly
+hello
+hellraiser
+hells
+helm
+helmet
+helmeted
+helmets
+helms
+helmsman
+helots
+help
+helped
+helper
+helpers
+helpful
+helpfully
+helpfulness
+helping
+helpings
+helpless
+helplessly
+helplessness
+helpline
+helplines
+helpmate
+helpmates
+helps
+helsinki
+helterskelter
+hem
+heman
+hemen
+hemisphere
+hemispheres
+hemispheric
+hemispherical
+hemline
+hemlines
+hemlock
+hemmed
+hemming
+hemp
+hems
+hen
+hence
+henceforth
+henceforward
+henchman
+henchmen
+henge
+henna
+henpeck
+henry
+hens
+hepatic
+hepatitis
+heptagon
+heptagonal
+heptagons
+heptane
+her
+herald
+heralded
+heraldic
+heralding
+heraldry
+heralds
+herb
+herbaceous
+herbage
+herbal
+herbalism
+herbalist
+herbalists
+herbicide
+herbicides
+herbivore
+herbivores
+herbivorous
+herbs
+herd
+herded
+herding
+herds
+herdsman
+herdsmen
+here
+hereabouts
+hereafter
+hereby
+hereditary
+heredity
+herein
+hereinafter
+hereof
+heresies
+heresy
+heretic
+heretical
+heretics
+hereto
+heretofore
+hereunder
+hereupon
+herewith
+heritability
+heritable
+heritage
+heritors
+herm
+hermaphrodite
+hermaphrodites
+hermaphroditic
+hermeneutic
+hermeneutics
+hermetic
+hermetically
+hermit
+hermitage
+hermits
+hernia
+hernias
+hero
+herod
+heroic
+heroical
+heroically
+heroics
+heroin
+heroine
+heroines
+heroism
+heron
+heronry
+herons
+herpes
+herring
+herringbone
+herrings
+hers
+herself
+hertz
+hesitancy
+hesitant
+hesitantly
+hesitate
+hesitated
+hesitates
+hesitating
+hesitatingly
+hesitation
+hesitations
+heterodox
+heterodoxy
+heterogeneity
+heterogeneous
+heterologous
+heterosexist
+heterosexual
+heterosexuality
+heterosexually
+heterosexuals
+heterozygous
+heuristic
+heuristically
+heuristics
+hew
+hewed
+hewer
+hewing
+hewn
+hex
+hexadecimal
+hexagon
+hexagonal
+hexagons
+hexagram
+hexagrams
+hexameter
+hexane
+hexed
+hey
+heyday
+heydays
+hi
+hiatus
+hiatuses
+hibernal
+hibernate
+hibernating
+hibernation
+hibiscus
+hic
+hiccough
+hiccup
+hiccups
+hickory
+hid
+hidden
+hide
+hideandseek
+hideaway
+hideaways
+hidebound
+hideous
+hideously
+hideousness
+hideout
+hideouts
+hider
+hides
+hiding
+hidings
+hierarch
+hierarchic
+hierarchical
+hierarchically
+hierarchies
+hierarchy
+hieratic
+hieroglyph
+hieroglyphic
+hieroglyphics
+hieroglyphs
+higgledypiggledy
+high
+highbrow
+higher
+highest
+highhandedness
+highheeled
+highish
+highjack
+highland
+highlander
+highlanders
+highlands
+highlight
+highlighted
+highlighter
+highlighting
+highlights
+highly
+highness
+highpitched
+highpoint
+highranking
+highs
+highspirited
+hight
+highway
+highwayman
+highwaymen
+highways
+hijack
+hijacked
+hijacker
+hijackers
+hijacking
+hijackings
+hijacks
+hike
+hiked
+hiker
+hikers
+hikes
+hiking
+hilarious
+hilariously
+hilarity
+hill
+hilled
+hillier
+hilliest
+hillman
+hillock
+hillocks
+hillocky
+hills
+hillside
+hillsides
+hilltop
+hilltops
+hillwalking
+hilly
+hilt
+hilts
+him
+himself
+hind
+hindbrain
+hinder
+hindered
+hinderer
+hindering
+hinders
+hindmost
+hindquarters
+hindrance
+hindrances
+hindsight
+hindu
+hinduism
+hinge
+hinged
+hinges
+hinnies
+hinny
+hint
+hinted
+hinterland
+hinterlands
+hinting
+hints
+hip
+hipbone
+hippie
+hippies
+hippo
+hippocampus
+hippodrome
+hippopotamus
+hippy
+hips
+hipster
+hipsters
+hire
+hired
+hireling
+hirer
+hires
+hiring
+hirings
+hirsute
+hirsuteness
+his
+hispanic
+hiss
+hissed
+hisses
+hissing
+hissings
+histamine
+histogram
+histograms
+histological
+histologically
+histologists
+histology
+historian
+historians
+historic
+historical
+historically
+historicist
+histories
+historiographical
+historiography
+history
+histrionic
+histrionics
+hit
+hitandrun
+hitch
+hitched
+hitcher
+hitches
+hitchhike
+hitchhiked
+hitchhiker
+hitchhikers
+hitchhiking
+hitching
+hither
+hitherto
+hitler
+hits
+hittable
+hitters
+hitting
+hive
+hived
+hives
+hiving
+hmm
+ho
+hoar
+hoard
+hoarded
+hoarder
+hoarders
+hoarding
+hoardings
+hoards
+hoarfrost
+hoarse
+hoarsely
+hoarseness
+hoarser
+hoary
+hoax
+hoaxed
+hoaxer
+hoaxers
+hoaxes
+hoaxing
+hob
+hobbies
+hobbit
+hobble
+hobbled
+hobbles
+hobbling
+hobby
+hobbyist
+hobbyists
+hobgoblin
+hobgoblins
+hobnailed
+hobnails
+hobo
+hobs
+hock
+hockey
+hocks
+hocus
+hocuspocus
+hod
+hoe
+hoed
+hoeing
+hoes
+hog
+hogg
+hogged
+hogger
+hogging
+hoggs
+hogs
+hogwash
+hoist
+hoisted
+hoisting
+hoists
+hold
+holdable
+holdall
+holdalls
+holder
+holders
+holding
+holdings
+holdout
+holds
+holdup
+holdups
+hole
+holed
+holeinone
+holes
+holiday
+holidaying
+holidaymaker
+holidaymakers
+holidays
+holier
+holies
+holiest
+holily
+holiness
+holing
+holism
+holistic
+holistically
+holland
+holler
+hollered
+hollies
+hollow
+hollowed
+hollowly
+hollowness
+hollows
+holly
+hollyhocks
+holmes
+holocaust
+holocausts
+hologram
+holograms
+holographic
+holography
+holster
+holsters
+holy
+homage
+homages
+hombre
+home
+homecoming
+homecomings
+homed
+homeland
+homelands
+homeless
+homelessness
+homelier
+homeliness
+homely
+homemade
+homeowner
+homeowners
+homes
+homesick
+homesickness
+homespun
+homestead
+homesteads
+homeward
+homewardbound
+homewards
+homework
+homicidal
+homicide
+homicides
+homiest
+homilies
+homily
+homing
+hominid
+hominids
+homoeopathic
+homoeopathy
+homogenates
+homogeneity
+homogeneous
+homogeneously
+homogenisation
+homogenise
+homogenised
+homogenising
+homological
+homologies
+homologous
+homologue
+homologues
+homology
+homomorphism
+homomorphisms
+homonym
+homonyms
+homophobes
+homophobia
+homophobic
+homophones
+homophony
+homosexual
+homosexuality
+homosexually
+homosexuals
+homotopy
+homozygous
+homunculus
+homy
+hone
+honed
+hones
+honest
+honestly
+honesty
+honey
+honeybee
+honeycomb
+honeycombed
+honeycombing
+honeydew
+honeyed
+honeymoon
+honeymooners
+honeymoons
+honeysuckle
+honeysuckles
+honing
+honk
+honking
+honks
+honorarium
+honorary
+honorific
+honors
+honour
+honourable
+honourably
+honoured
+honouring
+honours
+honshu
+hood
+hooded
+hoodlum
+hoodlums
+hoods
+hoodwink
+hoodwinked
+hoodwinking
+hoof
+hoofs
+hook
+hookah
+hooked
+hooker
+hookers
+hooking
+hooknosed
+hooks
+hooky
+hooligan
+hooliganism
+hooligans
+hoop
+hooped
+hoops
+hooray
+hoot
+hooted
+hooter
+hooters
+hooting
+hoots
+hoover
+hoovered
+hoovering
+hooves
+hop
+hope
+hoped
+hopeful
+hopefully
+hopefulness
+hopefuls
+hopeless
+hopelessly
+hopelessness
+hopes
+hoping
+hopped
+hopper
+hoppers
+hopping
+hops
+horde
+hordes
+horizon
+horizons
+horizontal
+horizontally
+horizontals
+hormonal
+hormonally
+hormone
+hormones
+horn
+hornbeam
+hornbills
+horned
+hornet
+hornets
+hornpipe
+hornpipes
+horns
+horny
+horoscope
+horoscopes
+horrendous
+horrendously
+horrible
+horribly
+horrid
+horridly
+horrific
+horrifically
+horrified
+horrifies
+horrify
+horrifying
+horrifyingly
+horror
+horrors
+horrorstricken
+horse
+horseback
+horsebox
+horseflesh
+horsefly
+horsehair
+horseless
+horseman
+horsemen
+horseplay
+horsepower
+horseradish
+horses
+horseshoe
+horseshoes
+horsewhip
+horsewhipped
+horsey
+horsing
+horticultural
+horticulture
+horticulturist
+horticulturists
+hosanna
+hosannas
+hose
+hosed
+hosepipe
+hoses
+hosier
+hosiery
+hosing
+hospice
+hospices
+hospitable
+hospitably
+hospital
+hospitalisation
+hospitalised
+hospitality
+hospitals
+host
+hosta
+hostage
+hostages
+hosted
+hostel
+hostelries
+hostelry
+hostels
+hostess
+hostesses
+hostile
+hostilely
+hostilities
+hostility
+hosting
+hostler
+hosts
+hot
+hotair
+hotbed
+hotbeds
+hotblooded
+hotchpotch
+hotdog
+hotdogs
+hotel
+hotelier
+hoteliers
+hotels
+hotheaded
+hotheads
+hothouse
+hothouses
+hotline
+hotly
+hotness
+hotplate
+hotplates
+hotpot
+hotrod
+hotspot
+hotspots
+hottempered
+hotter
+hottest
+hotting
+hound
+hounded
+hounding
+hounds
+hour
+hourglass
+hourly
+hours
+house
+houseboat
+houseboats
+housebound
+housebreaker
+housebreakers
+housebreaking
+housebuilder
+housebuilders
+housebuilding
+housebuyers
+housed
+houseflies
+houseful
+household
+householder
+householders
+households
+househunting
+housekeeper
+housekeepers
+housekeeping
+housemaid
+housemaids
+houseroom
+houses
+housewife
+housewives
+housework
+housing
+housings
+houston
+hove
+hovel
+hovels
+hover
+hovercraft
+hovered
+hoverer
+hovering
+hovers
+how
+howdy
+however
+howitzer
+howitzers
+howl
+howled
+howler
+howlers
+howling
+howlings
+howls
+howsoever
+hub
+hubbies
+hubbub
+hubby
+hubcap
+hubcaps
+hubris
+hubristic
+hubs
+huckleberry
+huddle
+huddled
+huddles
+huddling
+hue
+hues
+huff
+huffed
+huffily
+huffing
+huffy
+hug
+huge
+hugely
+hugeness
+hugged
+hugging
+hugs
+huguenot
+huh
+hulk
+hulking
+hulks
+hull
+hullabaloo
+hulled
+hullo
+hulls
+hum
+human
+humane
+humanely
+humaner
+humanise
+humanised
+humanising
+humanism
+humanist
+humanistic
+humanists
+humanitarian
+humanitarianism
+humanities
+humanity
+humankind
+humanly
+humanness
+humanoid
+humanoids
+humans
+humble
+humbled
+humbleness
+humbler
+humbles
+humblest
+humbling
+humbly
+humbug
+humbugs
+humdrum
+humerus
+humid
+humidifier
+humidifiers
+humidity
+humify
+humiliate
+humiliated
+humiliates
+humiliating
+humiliatingly
+humiliation
+humiliations
+humility
+hummable
+hummed
+hummer
+humming
+hummingbird
+hummingbirds
+hummock
+hummocks
+hummocky
+humorist
+humorous
+humorously
+humour
+humoured
+humouring
+humourless
+humours
+hump
+humpback
+humped
+humping
+humps
+hums
+humus
+hunch
+hunchback
+hunchbacked
+hunched
+hunches
+hunching
+hundred
+hundredfold
+hundreds
+hundredth
+hundredths
+hundredweight
+hundredweights
+hung
+hungary
+hunger
+hungered
+hungering
+hungers
+hungrier
+hungriest
+hungrily
+hungry
+hunk
+hunkers
+hunks
+hunt
+hunted
+hunter
+huntergatherer
+huntergatherers
+hunters
+hunting
+hunts
+huntsman
+huntsmen
+hurdle
+hurdled
+hurdler
+hurdlers
+hurdles
+hurl
+hurled
+hurling
+hurls
+hurlyburly
+hurrah
+hurrahs
+hurray
+hurricane
+hurricanes
+hurried
+hurriedly
+hurries
+hurry
+hurrying
+hurt
+hurtful
+hurting
+hurtle
+hurtled
+hurtles
+hurtling
+hurts
+husband
+husbandman
+husbandmen
+husbandry
+husbands
+hush
+hushed
+hushes
+hushhush
+hushing
+husk
+husked
+huskier
+huskies
+huskiest
+huskily
+husks
+husky
+hussies
+hussy
+hustings
+hustle
+hustled
+hustler
+hustlers
+hustles
+hustling
+hut
+hutch
+hutches
+huts
+hyacinth
+hyacinths
+hyaena
+hyaenas
+hybrid
+hybridisation
+hybridised
+hybrids
+hydra
+hydrangea
+hydrangeas
+hydrant
+hydrants
+hydrate
+hydrated
+hydration
+hydraulic
+hydraulically
+hydraulics
+hydrazine
+hydride
+hydro
+hydrocarbon
+hydrocarbons
+hydrochloric
+hydrochloride
+hydrodynamic
+hydrodynamical
+hydrodynamics
+hydroelectric
+hydroelectricity
+hydrofluoric
+hydrofoil
+hydrofoils
+hydrogen
+hydrogenated
+hydrogenation
+hydrographer
+hydrographic
+hydrological
+hydrologically
+hydrologists
+hydrology
+hydrolysis
+hydromagnetic
+hydromechanics
+hydrophobia
+hydrophobic
+hydroponically
+hydrosphere
+hydrostatic
+hydrostatics
+hydrothermal
+hydrous
+hydroxide
+hydroxides
+hyena
+hyenas
+hygiene
+hygienic
+hygienically
+hygienist
+hygienists
+hygroscopic
+hymen
+hymens
+hymn
+hymnal
+hymnbook
+hymns
+hype
+hyperactive
+hyperactivity
+hyperbola
+hyperbolas
+hyperbole
+hyperbolic
+hyperboloid
+hyperboloids
+hypercholesterolaemia
+hypercube
+hypercubes
+hyperfine
+hyperinflation
+hypermarket
+hypermarkets
+hyperplane
+hyperplanes
+hypersensitive
+hypersensitiveness
+hypersensitivity
+hypersonic
+hyperspace
+hypersphere
+hypertension
+hypertext
+hypertonic
+hyperventilated
+hyperventilating
+hyperventilation
+hyphen
+hyphenate
+hyphenated
+hyphenates
+hyphenating
+hyphenation
+hyphenations
+hyphened
+hyphens
+hypnosis
+hypnotherapists
+hypnotherapy
+hypnotic
+hypnotically
+hypnotise
+hypnotised
+hypnotises
+hypnotising
+hypnotism
+hypnotist
+hypochondria
+hypochondriac
+hypochondriacal
+hypochondriacs
+hypocrisies
+hypocrisy
+hypocrite
+hypocrites
+hypocritical
+hypocritically
+hypodermic
+hypoglycaemia
+hypoglycaemic
+hypotension
+hypothalamus
+hypothermia
+hypotheses
+hypothesis
+hypothesise
+hypothesised
+hypothesiser
+hypothesises
+hypothesising
+hypothetical
+hypothetically
+hypoxia
+hyssop
+hysterectomy
+hysteresis
+hysteria
+hysteric
+hysterical
+hysterically
+hysterics
+iambic
+iambus
+iatrogenic
+iberia
+iberian
+ibex
+ibexes
+ibis
+ibises
+ibsen
+icarus
+ice
+iceage
+iceberg
+icebergs
+icebox
+icecap
+icecold
+icecream
+iced
+iceland
+iceman
+icepack
+icepick
+icepicks
+ices
+iceskate
+iceskating
+ichneumon
+icicle
+icicles
+icier
+iciest
+icily
+iciness
+icing
+icings
+icon
+iconic
+iconoclasm
+iconoclast
+iconoclastic
+iconoclasts
+iconographic
+iconographical
+iconography
+icons
+icosahedra
+icosahedral
+icosahedron
+icy
+id
+idaho
+idea
+ideal
+idealisation
+idealisations
+idealise
+idealised
+idealises
+idealising
+idealism
+idealist
+idealistic
+idealistically
+idealists
+ideality
+ideally
+ideals
+ideas
+idem
+identical
+identically
+identifiable
+identifiably
+identification
+identifications
+identified
+identifier
+identifiers
+identifies
+identify
+identifying
+identities
+identity
+ideograms
+ideographic
+ideographs
+ideological
+ideologically
+ideologies
+ideologist
+ideologists
+ideologue
+ideologues
+ideology
+ides
+idiocies
+idiocy
+idiolect
+idiom
+idiomatic
+idiomatically
+idioms
+idiopathic
+idiosyncrasies
+idiosyncrasy
+idiosyncratic
+idiosyncratically
+idiot
+idiotic
+idiotically
+idiots
+idle
+idled
+idleness
+idler
+idlers
+idles
+idlest
+idling
+idly
+idol
+idolaters
+idolatrous
+idolatry
+idolisation
+idolise
+idolised
+idols
+ids
+idyll
+idyllic
+idyllically
+if
+ifs
+igloo
+igloos
+iglu
+igneous
+ignite
+ignited
+igniter
+ignites
+igniting
+ignition
+ignoble
+ignobly
+ignominious
+ignominiously
+ignominy
+ignorable
+ignoramus
+ignoramuses
+ignorance
+ignorant
+ignorantly
+ignore
+ignored
+ignores
+ignoring
+iguana
+iguanas
+ileum
+iliad
+ilk
+ill
+illadvised
+illbehaved
+illconceived
+illdefined
+illegal
+illegalities
+illegality
+illegally
+illegibility
+illegible
+illegibly
+illegitimacy
+illegitimate
+illegitimately
+illequipped
+illfated
+illfavoured
+illhumoured
+illiberal
+illicit
+illicitly
+illimitable
+illinformed
+illinois
+illiquid
+illiteracy
+illiterate
+illiterates
+illmannered
+illness
+illnesses
+illogic
+illogical
+illogicality
+illogically
+ills
+illtempered
+illtreated
+illuminant
+illuminate
+illuminated
+illuminates
+illuminating
+illumination
+illuminations
+illumine
+illusion
+illusionist
+illusionists
+illusions
+illusive
+illusory
+illustrate
+illustrated
+illustrates
+illustrating
+illustration
+illustrations
+illustrative
+illustrator
+illustrators
+illustrious
+ilmenite
+im
+image
+imaged
+imagery
+images
+imaginable
+imaginary
+imagination
+imaginations
+imaginative
+imaginatively
+imagine
+imagined
+imagines
+imaging
+imagining
+imaginings
+imago
+imam
+imams
+imbalance
+imbalanced
+imbalances
+imbecile
+imbeciles
+imbecilic
+imbecilities
+imbecility
+imbedded
+imbeds
+imbibe
+imbibed
+imbiber
+imbibers
+imbibing
+imbroglio
+imbue
+imbued
+imitate
+imitated
+imitates
+imitating
+imitation
+imitations
+imitative
+imitator
+imitators
+immaculate
+immaculately
+immanence
+immanent
+immanently
+immaterial
+immature
+immaturely
+immaturity
+immeasurable
+immeasurably
+immediacy
+immediate
+immediately
+immediateness
+immemorial
+immense
+immensely
+immenseness
+immensities
+immensity
+immerse
+immersed
+immerses
+immersing
+immersion
+immigrant
+immigrants
+immigrate
+immigrated
+immigrating
+immigration
+immigrations
+imminence
+imminent
+imminently
+immiscible
+immobile
+immobilisation
+immobilise
+immobilised
+immobiliser
+immobilises
+immobilising
+immobility
+immoderate
+immoderately
+immodest
+immolate
+immolated
+immolation
+immoral
+immorality
+immorally
+immortal
+immortalised
+immortality
+immortally
+immortals
+immovability
+immovable
+immoveable
+immune
+immunisation
+immunisations
+immunise
+immunised
+immunises
+immunities
+immunity
+immunoassay
+immunocompromised
+immunodeficiency
+immunological
+immunologically
+immunologist
+immunologists
+immunology
+immunosuppression
+immunosuppressive
+immured
+immutability
+immutable
+immutably
+imp
+impact
+impacted
+impacting
+impaction
+impacts
+impair
+impaired
+impairing
+impairment
+impairments
+impairs
+impala
+impalas
+impale
+impaled
+impaler
+impales
+impaling
+impalpable
+impart
+imparted
+impartial
+impartiality
+impartially
+imparting
+imparts
+impassable
+impasse
+impassioned
+impassive
+impassively
+impassiveness
+impassivity
+impatience
+impatient
+impatiently
+impeach
+impeached
+impeaches
+impeachment
+impeachments
+impeccable
+impeccably
+impecunious
+impedance
+impede
+impeded
+impedes
+impediment
+impedimenta
+impediments
+impeding
+impel
+impelled
+impelling
+impels
+impend
+impending
+impenetrability
+impenetrable
+impenetrably
+imperative
+imperatively
+imperatives
+imperceptible
+imperceptibly
+imperfect
+imperfection
+imperfections
+imperfectly
+imperial
+imperialism
+imperialist
+imperialistic
+imperialists
+imperially
+imperil
+imperilled
+imperious
+imperiously
+imperiousness
+imperishable
+imperium
+impermanence
+impermanent
+impermeability
+impermeable
+impermissible
+impersonal
+impersonality
+impersonally
+impersonate
+impersonated
+impersonates
+impersonating
+impersonation
+impersonations
+impersonator
+impersonators
+impertinence
+impertinent
+impertinently
+imperturbability
+imperturbable
+imperturbably
+impervious
+impetuosity
+impetuous
+impetuously
+impetus
+impi
+impiety
+impinge
+impinged
+impingement
+impinges
+impinging
+impious
+impish
+impishly
+impishness
+implacable
+implacably
+implant
+implantation
+implanted
+implanting
+implants
+implausibility
+implausible
+implausibly
+implement
+implementable
+implementation
+implementations
+implemented
+implementer
+implementers
+implementing
+implements
+implicate
+implicated
+implicates
+implicating
+implication
+implications
+implicit
+implicitly
+implied
+impliedly
+implies
+implode
+imploded
+implodes
+imploding
+implore
+implored
+implores
+imploring
+imploringly
+implosion
+imply
+implying
+impolite
+impoliteness
+impolitic
+imponderable
+imponderables
+import
+importable
+importance
+important
+importantly
+importation
+imported
+importer
+importers
+importing
+imports
+importunate
+importunately
+importune
+importuned
+importunity
+imposable
+impose
+imposed
+imposes
+imposing
+imposition
+impositions
+impossibilities
+impossibility
+impossible
+impossibly
+imposter
+imposters
+impostor
+impostors
+impotence
+impotency
+impotent
+impotently
+impound
+impounded
+impounding
+impoverish
+impoverished
+impoverishing
+impoverishment
+impracticability
+impracticable
+impractical
+impracticalities
+impracticality
+impractically
+imprecation
+imprecations
+imprecise
+imprecisely
+impreciseness
+imprecision
+impregnable
+impregnably
+impregnate
+impregnated
+impregnating
+impregnation
+impresario
+impress
+impressed
+impresses
+impressing
+impression
+impressionable
+impressionism
+impressionist
+impressionistic
+impressionists
+impressions
+impressive
+impressively
+impressiveness
+imprimatur
+imprint
+imprinted
+imprinting
+imprints
+imprison
+imprisoned
+imprisoning
+imprisonment
+imprisonments
+imprisons
+improbabilities
+improbability
+improbable
+improbably
+impromptu
+improper
+improperly
+improprieties
+impropriety
+improvable
+improve
+improved
+improvement
+improvements
+improver
+improves
+improvidence
+improvident
+improving
+improvisation
+improvisational
+improvisations
+improvisatory
+improvise
+improvised
+improvises
+improvising
+imprudence
+imprudent
+imprudently
+imps
+impudence
+impudent
+impudently
+impugn
+impugnable
+impugned
+impugning
+impulse
+impulses
+impulsion
+impulsive
+impulsively
+impulsiveness
+impunity
+impure
+impurities
+impurity
+imputation
+imputations
+impute
+imputed
+imputing
+in
+inabilities
+inability
+inaccessibility
+inaccessible
+inaccuracies
+inaccuracy
+inaccurate
+inaccurately
+inaction
+inactivated
+inactivating
+inactivation
+inactive
+inactivity
+inadequacies
+inadequacy
+inadequate
+inadequately
+inadmissible
+inadvertence
+inadvertent
+inadvertently
+inadvisability
+inadvisable
+inadvisedly
+inalienable
+inane
+inanely
+inanimate
+inanities
+inanity
+inapplicability
+inapplicable
+inappropriate
+inappropriately
+inappropriateness
+inaptly
+inarticulacy
+inarticulate
+inarticulateness
+inasmuch
+inattention
+inattentive
+inattentively
+inaudibility
+inaudible
+inaudibly
+inaugural
+inaugurate
+inaugurated
+inaugurates
+inaugurating
+inauguration
+inauspicious
+inauspiciously
+inauthenticity
+inboard
+inborn
+inbound
+inbred
+inbreeding
+inbuilt
+inca
+incalculable
+incalculably
+incandescence
+incandescent
+incandescently
+incant
+incantation
+incantations
+incantatory
+incapability
+incapable
+incapacitate
+incapacitated
+incapacitates
+incapacitating
+incapacitation
+incapacity
+incarcerated
+incarcerating
+incarceration
+incarnate
+incarnated
+incarnation
+incarnations
+incas
+incased
+incautious
+incautiously
+incendiaries
+incendiary
+incense
+incensed
+incenses
+incensing
+incentive
+incentives
+inception
+incessant
+incessantly
+incest
+incests
+incestuous
+incestuousness
+inch
+inched
+inches
+inching
+inchoate
+incidence
+incidences
+incident
+incidental
+incidentally
+incidents
+incinerate
+incinerated
+incinerates
+incinerating
+incineration
+incinerator
+incinerators
+incipient
+incised
+incision
+incisions
+incisive
+incisively
+incisiveness
+incisor
+incisors
+incite
+incited
+incitement
+incitements
+inciter
+inciters
+incites
+inciting
+inclemency
+inclement
+inclination
+inclinations
+incline
+inclined
+inclines
+inclining
+include
+included
+includes
+including
+inclusion
+inclusions
+inclusive
+inclusively
+inclusiveness
+incognito
+incoherence
+incoherency
+incoherent
+incoherently
+incombustible
+income
+incomer
+incomers
+incomes
+incoming
+incommensurable
+incommoding
+incommunicable
+incommunicado
+incomparable
+incomparably
+incompatibilities
+incompatibility
+incompatible
+incompatibly
+incompetence
+incompetent
+incompetently
+incompetents
+incomplete
+incompletely
+incompleteness
+incomprehensibility
+incomprehensible
+incomprehensibly
+incomprehension
+incompressible
+inconceivable
+inconceivably
+inconclusive
+inconclusively
+incongruities
+incongruity
+incongruous
+incongruously
+inconsequential
+inconsequentially
+inconsiderable
+inconsiderate
+inconsiderately
+inconsiderateness
+inconsistencies
+inconsistency
+inconsistent
+inconsistently
+inconsolable
+inconsolably
+inconspicuous
+inconspicuously
+inconspicuousness
+inconstancy
+inconstant
+incontestable
+incontestably
+incontinence
+incontinent
+incontinently
+incontrovertible
+incontrovertibly
+inconvenience
+inconvenienced
+inconveniences
+inconveniencing
+inconvenient
+inconveniently
+incorporable
+incorporate
+incorporated
+incorporates
+incorporating
+incorporation
+incorrect
+incorrectly
+incorrectness
+incorrigible
+incorrigibly
+incorruptible
+increase
+increased
+increases
+increasing
+increasingly
+incredible
+incredibly
+incredulity
+incredulous
+incredulously
+increment
+incremental
+incrementally
+incrementation
+incremented
+incrementing
+increments
+incriminate
+incriminated
+incriminates
+incriminating
+incrimination
+incubate
+incubated
+incubating
+incubation
+incubations
+incubator
+incubators
+inculcate
+inculcated
+inculcating
+inculcation
+incumbency
+incumbent
+incumbents
+incur
+incurable
+incurably
+incuriously
+incurred
+incurring
+incurs
+incursion
+incursions
+indaba
+indebted
+indebtedness
+indecency
+indecent
+indecently
+indecipherable
+indecision
+indecisive
+indecisively
+indecisiveness
+indeclinable
+indecorous
+indeed
+indefatigable
+indefeasible
+indefensible
+indefinable
+indefinably
+indefinite
+indefinitely
+indelible
+indelibly
+indelicacy
+indelicate
+indemnified
+indemnify
+indemnities
+indemnity
+indent
+indentation
+indentations
+indented
+indenting
+indents
+indentures
+independence
+independent
+independently
+independents
+indepth
+indescribable
+indescribably
+indestructibility
+indestructible
+indeterminable
+indeterminacy
+indeterminate
+index
+indexation
+indexed
+indexer
+indexers
+indexes
+indexing
+india
+indian
+indiana
+indians
+indicant
+indicants
+indicate
+indicated
+indicates
+indicating
+indication
+indications
+indicative
+indicator
+indicators
+indices
+indict
+indictable
+indicted
+indicting
+indictment
+indictments
+indicts
+indifference
+indifferent
+indifferently
+indigenous
+indigestible
+indigestion
+indignant
+indignantly
+indignation
+indignities
+indignity
+indigo
+indirect
+indirection
+indirections
+indirectly
+indirectness
+indiscipline
+indiscreet
+indiscreetly
+indiscretion
+indiscretions
+indiscriminate
+indiscriminately
+indispensability
+indispensable
+indispensably
+indispose
+indisposed
+indisposition
+indisputable
+indisputably
+indissoluble
+indissolubly
+indistinct
+indistinctly
+indistinctness
+indistinguishable
+indistinguishably
+indite
+individual
+individualised
+individualism
+individualist
+individualistic
+individualists
+individuality
+individually
+individuals
+individuation
+indivisibility
+indivisible
+indivisibly
+indoctrinate
+indoctrinated
+indoctrinates
+indoctrinating
+indoctrination
+indoctrinations
+indoctrinator
+indoctrinators
+indole
+indolence
+indolent
+indolently
+indomitable
+indoor
+indoors
+indorsed
+indorses
+indrawn
+indubitable
+indubitably
+induce
+induced
+inducement
+inducements
+induces
+inducible
+inducing
+induct
+inductance
+inducted
+induction
+inductions
+inductive
+inductively
+inductor
+inductors
+inducts
+indulge
+indulged
+indulgence
+indulgences
+indulgent
+indulgently
+indulger
+indulges
+indulging
+induna
+industrial
+industrialisation
+industrialise
+industrialised
+industrialising
+industrialism
+industrialist
+industrialists
+industrially
+industries
+industrious
+industriously
+industriousness
+industry
+inebriate
+inebriated
+inebriation
+inedible
+ineffable
+ineffective
+ineffectively
+ineffectiveness
+ineffectual
+ineffectually
+ineffectualness
+inefficiencies
+inefficiency
+inefficient
+inefficiently
+inelastic
+inelegance
+inelegant
+inelegantly
+ineligibility
+ineligible
+ineluctable
+ineluctably
+inept
+ineptitude
+ineptly
+ineptness
+inequalities
+inequality
+inequitable
+inequities
+inequity
+ineradicable
+ineradicably
+inert
+inertia
+inertial
+inertness
+inescapable
+inescapably
+inessential
+inestimable
+inestimably
+inevitability
+inevitable
+inevitably
+inexact
+inexactitude
+inexactitudes
+inexcusable
+inexcusably
+inexhaustible
+inexhaustibly
+inexorability
+inexorable
+inexorably
+inexpedient
+inexpensive
+inexpensively
+inexperience
+inexperienced
+inexpert
+inexpertly
+inexplicable
+inexplicably
+inexpressibility
+inexpressible
+inexpressibly
+inextensible
+inextinguishable
+inextricable
+inextricably
+infallibility
+infallible
+infallibly
+infamous
+infamously
+infamy
+infancy
+infant
+infanta
+infante
+infanticide
+infantile
+infantry
+infantryman
+infantrymen
+infants
+infarct
+infarction
+infarctions
+infatuate
+infatuated
+infatuation
+infatuations
+infeasibility
+infeasible
+infect
+infected
+infecting
+infection
+infections
+infectious
+infectiously
+infective
+infects
+infelicities
+infelicitous
+infelicitously
+infelicity
+infer
+inference
+inferences
+inferential
+inferentially
+inferior
+inferiority
+inferiors
+infernal
+infernally
+inferno
+inferred
+inferring
+infers
+infertile
+infertility
+infest
+infestation
+infestations
+infested
+infesting
+infests
+infidel
+infidelities
+infidelity
+infidels
+infield
+infighting
+infill
+infilling
+infiltrate
+infiltrated
+infiltrates
+infiltrating
+infiltration
+infiltrations
+infiltrator
+infiltrators
+infinite
+infinitely
+infinitesimal
+infinitesimally
+infinitesimals
+infinities
+infinitive
+infinitives
+infinitude
+infinity
+infirm
+infirmaries
+infirmary
+infirmities
+infirmity
+infix
+inflame
+inflamed
+inflames
+inflaming
+inflammable
+inflammation
+inflammatory
+inflatable
+inflate
+inflated
+inflates
+inflating
+inflation
+inflationary
+inflect
+inflected
+inflecting
+inflection
+inflectional
+inflections
+inflects
+inflexibility
+inflexible
+inflexibly
+inflexion
+inflexions
+inflict
+inflicted
+inflicter
+inflicting
+infliction
+inflictions
+inflicts
+inflow
+inflowing
+inflows
+influence
+influenced
+influences
+influencing
+influential
+influenza
+influx
+influxes
+info
+inform
+informal
+informality
+informally
+informant
+informants
+informatics
+information
+informational
+informative
+informatively
+informativeness
+informatory
+informed
+informer
+informers
+informing
+informs
+infra
+infraction
+infractions
+infrared
+infrastructural
+infrastructure
+infrastructures
+infrequency
+infrequent
+infrequently
+infringe
+infringed
+infringement
+infringements
+infringes
+infringing
+infuriate
+infuriated
+infuriates
+infuriating
+infuriatingly
+infuse
+infused
+infuses
+infusing
+infusion
+infusions
+ingathered
+ingenious
+ingeniously
+ingenuity
+ingenuous
+ingenuously
+ingenuousness
+ingest
+ingested
+ingesting
+ingestion
+inglorious
+ingoing
+ingot
+ingots
+ingrained
+ingrate
+ingratiate
+ingratiated
+ingratiating
+ingratiatingly
+ingratitude
+ingredient
+ingredients
+ingress
+ingression
+ingrown
+inhabit
+inhabitable
+inhabitant
+inhabitants
+inhabited
+inhabiting
+inhabits
+inhalant
+inhalation
+inhalations
+inhale
+inhaled
+inhaler
+inhalers
+inhales
+inhaling
+inherent
+inherently
+inherit
+inheritable
+inheritance
+inheritances
+inherited
+inheriting
+inheritor
+inheritors
+inherits
+inhibit
+inhibited
+inhibiting
+inhibition
+inhibitions
+inhibitor
+inhibitors
+inhibitory
+inhibits
+inhomogeneities
+inhomogeneity
+inhomogeneous
+inhospitable
+inhouse
+inhuman
+inhumane
+inhumanely
+inhumanities
+inhumanity
+inhumanly
+inimical
+inimitable
+inimitably
+iniquities
+iniquitous
+iniquitously
+iniquity
+initial
+initialisation
+initialisations
+initialise
+initialised
+initialises
+initialising
+initialled
+initially
+initials
+initiate
+initiated
+initiates
+initiating
+initiation
+initiations
+initiative
+initiatives
+initiator
+initiators
+inject
+injectable
+injected
+injecting
+injection
+injections
+injector
+injects
+injoke
+injokes
+injudicious
+injudiciously
+injunction
+injunctions
+injure
+injured
+injures
+injuries
+injuring
+injurious
+injuriously
+injury
+injustice
+injustices
+ink
+inked
+inkier
+inkiest
+inking
+inkling
+inklings
+inkpad
+inkpot
+inkpots
+inks
+inkstand
+inkstands
+inkwell
+inkwells
+inky
+inlaid
+inland
+inlaw
+inlaws
+inlay
+inlays
+inlet
+inlets
+inmate
+inmates
+inmost
+inn
+innards
+innate
+innately
+inner
+innermost
+innervation
+innings
+innkeeper
+innkeepers
+innocence
+innocent
+innocently
+innocents
+innocuous
+innocuousness
+innovate
+innovated
+innovating
+innovation
+innovations
+innovative
+innovatively
+innovator
+innovators
+innovatory
+inns
+innuendo
+innumerable
+innumerably
+innumeracy
+innumerate
+inoculate
+inoculated
+inoculates
+inoculating
+inoculation
+inoculations
+inoffensive
+inoperable
+inoperative
+inopportune
+inordinate
+inordinately
+inorganic
+input
+inputs
+inputting
+inquest
+inquests
+inquire
+inquired
+inquirer
+inquirers
+inquires
+inquiries
+inquiring
+inquiringly
+inquiry
+inquisition
+inquisitional
+inquisitions
+inquisitive
+inquisitively
+inquisitiveness
+inquisitor
+inquisitorial
+inquisitorially
+inquisitors
+inquorate
+inroad
+inroads
+inrush
+ins
+insalubrious
+insane
+insanely
+insanitary
+insanities
+insanity
+insatiable
+insatiably
+inscribe
+inscribed
+inscribing
+inscription
+inscriptions
+inscrutability
+inscrutable
+inscrutably
+insect
+insecticidal
+insecticide
+insecticides
+insectivores
+insectivorous
+insects
+insecure
+insecurely
+insecurities
+insecurity
+insemination
+insensibility
+insensible
+insensibly
+insensitive
+insensitively
+insensitivity
+inseparable
+inseparably
+insert
+inserted
+inserting
+insertion
+insertions
+inserts
+inset
+insets
+inshore
+inside
+insideout
+insider
+insiders
+insides
+insidious
+insidiously
+insight
+insightful
+insights
+insignia
+insignificance
+insignificant
+insignificantly
+insincere
+insincerely
+insincerity
+insinuate
+insinuated
+insinuating
+insinuatingly
+insinuation
+insinuations
+insipid
+insist
+insisted
+insistence
+insistent
+insistently
+insisting
+insists
+insofar
+insole
+insolence
+insolent
+insolently
+insolubility
+insoluble
+insolvencies
+insolvency
+insolvent
+insomnia
+insomniac
+insomniacs
+insouciance
+insouciant
+inspect
+inspected
+inspecting
+inspection
+inspections
+inspector
+inspectorate
+inspectorates
+inspectors
+inspects
+inspiration
+inspirational
+inspirations
+inspire
+inspired
+inspires
+inspiring
+instabilities
+instability
+install
+installable
+installation
+installations
+installed
+installer
+installers
+installing
+installs
+instalment
+instalments
+instance
+instanced
+instances
+instancy
+instant
+instantaneous
+instantaneously
+instantiate
+instantiated
+instantiates
+instantiating
+instantiation
+instantiations
+instantly
+instants
+instated
+instead
+instep
+insteps
+instigate
+instigated
+instigates
+instigating
+instigation
+instigator
+instigators
+instil
+instillation
+instilled
+instilling
+instills
+instils
+instinct
+instinctive
+instinctively
+instincts
+instinctual
+institute
+instituted
+institutes
+instituting
+institution
+institutional
+institutionalisation
+institutionalise
+institutionalised
+institutionalising
+institutionalism
+institutionally
+institutions
+instruct
+instructed
+instructing
+instruction
+instructional
+instructions
+instructive
+instructor
+instructors
+instructs
+instrument
+instrumental
+instrumentalist
+instrumentalists
+instrumentality
+instrumentally
+instrumentals
+instrumentation
+instrumented
+instruments
+insubordinate
+insubordination
+insubstantial
+insufferable
+insufferably
+insufficiency
+insufficient
+insufficiently
+insulant
+insular
+insularity
+insulate
+insulated
+insulates
+insulating
+insulation
+insulator
+insulators
+insulin
+insult
+insulted
+insulter
+insulting
+insultingly
+insults
+insuperable
+insupportable
+insurance
+insurances
+insure
+insured
+insurer
+insurers
+insures
+insurgency
+insurgent
+insurgents
+insuring
+insurmountable
+insurmountably
+insurrection
+insurrectionary
+insurrections
+intact
+intaglio
+intake
+intakes
+intangible
+intangibles
+integer
+integers
+integrability
+integrable
+integral
+integrally
+integrals
+integrand
+integrands
+integrate
+integrated
+integrates
+integrating
+integration
+integrationist
+integrations
+integrative
+integrator
+integrators
+integrity
+intellect
+intellects
+intellectual
+intellectualism
+intellectuality
+intellectually
+intellectuals
+intelligence
+intelligences
+intelligent
+intelligently
+intelligentsia
+intelligibility
+intelligible
+intelligibly
+intemperance
+intemperate
+intend
+intended
+intending
+intends
+intense
+intensely
+intensification
+intensified
+intensifies
+intensify
+intensifying
+intensities
+intensity
+intensive
+intensively
+intent
+intention
+intentional
+intentionality
+intentionally
+intentioned
+intentions
+intently
+intentness
+intents
+inter
+interact
+interacted
+interacting
+interaction
+interactional
+interactions
+interactive
+interactively
+interactiveness
+interacts
+interatomic
+interbank
+interbred
+interbreed
+interbreeding
+intercede
+interceded
+interceding
+intercept
+intercepted
+intercepting
+interception
+interceptions
+interceptor
+interceptors
+intercepts
+intercession
+intercessions
+interchange
+interchangeability
+interchangeable
+interchangeably
+interchanged
+interchanges
+interchanging
+intercity
+intercollegiate
+intercom
+intercommunicate
+intercommunication
+interconnect
+interconnected
+interconnectedness
+interconnecting
+interconnection
+interconnections
+interconnects
+intercontinental
+interconversion
+intercountry
+intercourse
+intercut
+interdenominational
+interdepartmental
+interdependence
+interdependency
+interdependent
+interdict
+interdicted
+interdisciplinary
+interest
+interested
+interestedly
+interesting
+interestingly
+interests
+interface
+interfaced
+interfaces
+interfacing
+interfere
+interfered
+interference
+interferences
+interferer
+interferes
+interfering
+interferometer
+interferometers
+interferometric
+interferometry
+interferon
+intergalactic
+interglacial
+intergovernmental
+interim
+interims
+interior
+interiors
+interject
+interjected
+interjecting
+interjection
+interjectional
+interjections
+interjects
+interlace
+interlaced
+interlacing
+interlap
+interleave
+interleaved
+interleaves
+interleaving
+interlingual
+interlinked
+interlock
+interlocked
+interlocking
+interlocks
+interlocutor
+interlocutors
+interlocutory
+interloper
+interlopers
+interlude
+interludes
+intermarriage
+intermarriages
+intermediaries
+intermediary
+intermediate
+intermediates
+interment
+interments
+interminable
+interminably
+intermingled
+intermingling
+intermission
+intermissions
+intermittent
+intermittently
+intermix
+intermixed
+intermixing
+intermolecular
+intern
+internal
+internalisation
+internalise
+internalised
+internalises
+internalising
+internally
+internals
+international
+internationalisation
+internationalised
+internationalism
+internationalist
+internationalists
+internationally
+internationals
+interned
+internees
+internet
+interning
+internment
+internments
+interns
+internuclear
+interocular
+interoperability
+interoperable
+interpellation
+interpenetration
+interpersonal
+interplanetary
+interplay
+interplays
+interpolatable
+interpolate
+interpolated
+interpolates
+interpolating
+interpolation
+interpolations
+interpose
+interposed
+interposes
+interposing
+interposition
+interpret
+interpretable
+interpretation
+interpretational
+interpretations
+interpretative
+interpreted
+interpreter
+interpreters
+interpreting
+interpretive
+interpretively
+interprets
+interracial
+interred
+interregnum
+interrelate
+interrelated
+interrelatedness
+interrelation
+interrelations
+interrelationship
+interrelationships
+interrogate
+interrogated
+interrogates
+interrogating
+interrogation
+interrogations
+interrogative
+interrogatively
+interrogatives
+interrogator
+interrogators
+interrogatory
+interrupt
+interrupted
+interruptibility
+interrupting
+interruption
+interruptions
+interrupts
+intersect
+intersected
+intersecting
+intersection
+intersections
+intersects
+intersperse
+interspersed
+intersperses
+interspersing
+interstellar
+interstices
+interstitial
+interstitially
+intertidal
+intertwine
+intertwined
+intertwining
+interval
+intervals
+intervene
+intervened
+intervenes
+intervening
+intervention
+interventionism
+interventionist
+interventions
+interview
+interviewed
+interviewee
+interviewees
+interviewer
+interviewers
+interviewing
+interviews
+interweaving
+interwoven
+intestacy
+intestate
+intestinal
+intestine
+intestines
+intifada
+intimacies
+intimacy
+intimate
+intimated
+intimately
+intimates
+intimating
+intimation
+intimations
+intimidate
+intimidated
+intimidates
+intimidating
+intimidation
+intimidatory
+into
+intolerable
+intolerably
+intolerance
+intolerant
+intonation
+intonational
+intonations
+intone
+intoned
+intones
+intoning
+intoxicant
+intoxicants
+intoxicate
+intoxicated
+intoxicating
+intoxication
+intracellular
+intractability
+intractable
+intractably
+intramural
+intramuscular
+intransigence
+intransigent
+intransitive
+intrauterine
+intravenous
+intravenously
+intrepid
+intrepidly
+intricacies
+intricacy
+intricate
+intricately
+intrigue
+intrigued
+intrigues
+intriguing
+intriguingly
+intrinsic
+intrinsically
+intro
+introduce
+introduced
+introduces
+introducing
+introduction
+introductions
+introductory
+introspection
+introspective
+introspectively
+introversion
+introvert
+introverted
+introverts
+intrude
+intruded
+intruder
+intruders
+intrudes
+intruding
+intrusion
+intrusions
+intrusive
+intrusiveness
+intuited
+intuition
+intuitionist
+intuitions
+intuitive
+intuitively
+intuitiveness
+inuit
+inuits
+inundate
+inundated
+inundation
+inure
+inured
+invade
+invaded
+invader
+invaders
+invades
+invading
+invalid
+invalidate
+invalidated
+invalidates
+invalidating
+invalidation
+invalided
+invalidity
+invalids
+invaluable
+invariable
+invariably
+invariance
+invariant
+invariants
+invasion
+invasions
+invasive
+invective
+invectives
+inveigh
+inveighing
+inveigle
+inveigled
+inveigler
+inveiglers
+inveigling
+invent
+invented
+inventing
+invention
+inventions
+inventive
+inventively
+inventiveness
+inventor
+inventories
+inventors
+inventory
+invents
+inverse
+inversely
+inverses
+inversion
+inversions
+invert
+invertebrate
+invertebrates
+inverted
+inverter
+inverters
+invertible
+inverting
+inverts
+invest
+invested
+investigate
+investigated
+investigates
+investigating
+investigation
+investigations
+investigative
+investigator
+investigators
+investigatory
+investing
+investiture
+investment
+investments
+investor
+investors
+invests
+inveterate
+invidious
+invigilate
+invigilated
+invigilating
+invigilator
+invigilators
+invigorate
+invigorated
+invigorating
+invigoratingly
+invincibility
+invincible
+inviolability
+inviolable
+inviolate
+inviscid
+invisibilities
+invisibility
+invisible
+invisibles
+invisibly
+invitation
+invitations
+invite
+invited
+invites
+inviting
+invitingly
+invocation
+invocations
+invoice
+invoiced
+invoices
+invoicing
+invokable
+invoke
+invoked
+invoker
+invokers
+invokes
+invoking
+involuntarily
+involuntary
+involute
+involution
+involutions
+involve
+involved
+involvement
+involvements
+involves
+involving
+invulnerability
+invulnerable
+inward
+inwardly
+inwardness
+inwards
+iodide
+iodine
+ion
+ionian
+ionic
+ionisation
+ionise
+ionised
+ionising
+ionosphere
+ionospheric
+ions
+iota
+iotas
+iran
+iranian
+iranians
+iraq
+iraqi
+iraqis
+irascibility
+irascible
+irascibly
+irate
+ire
+ireland
+iridescence
+iridescent
+iridium
+iris
+irises
+irish
+irishman
+irishmen
+irk
+irked
+irking
+irks
+irksome
+irksomeness
+iron
+ironage
+ironed
+ironic
+ironical
+ironically
+ironies
+ironing
+ironlady
+ironmonger
+ironmongers
+ironmongery
+irons
+ironstone
+ironwork
+ironworks
+irony
+irradiate
+irradiated
+irradiating
+irradiation
+irrational
+irrationalities
+irrationality
+irrationally
+irreconcilable
+irrecoverable
+irrecoverably
+irredeemable
+irredeemably
+irreducibility
+irreducible
+irreducibly
+irrefutable
+irregular
+irregularities
+irregularity
+irregularly
+irregulars
+irrelevance
+irrelevances
+irrelevancy
+irrelevant
+irrelevantly
+irreligious
+irremediable
+irremovable
+irreparable
+irreparably
+irreplaceable
+irrepressible
+irrepressibly
+irreproachable
+irreproachably
+irresistible
+irresistibly
+irresolute
+irresolutely
+irresolution
+irresolvable
+irrespective
+irrespectively
+irresponsibility
+irresponsible
+irresponsibly
+irretrievable
+irretrievably
+irreverence
+irreverent
+irreverently
+irreversibility
+irreversible
+irreversibly
+irrevocable
+irrevocably
+irrigate
+irrigated
+irrigating
+irrigation
+irritability
+irritable
+irritably
+irritant
+irritants
+irritate
+irritated
+irritatedly
+irritates
+irritating
+irritatingly
+irritation
+irritations
+irrupted
+irruption
+is
+isis
+islam
+islamic
+island
+islander
+islanders
+islands
+isle
+isles
+islet
+islets
+isms
+isnt
+isobar
+isobars
+isogram
+isolate
+isolated
+isolates
+isolating
+isolation
+isolationism
+isolationist
+isolator
+isolators
+isomer
+isomeric
+isomers
+isometric
+isometrically
+isometry
+isomorph
+isomorphic
+isomorphism
+isomorphisms
+isoperimetrical
+isosceles
+isostatic
+isothermal
+isothermally
+isotonic
+isotope
+isotopes
+isotopic
+isotropic
+isotropically
+isotropy
+israel
+israeli
+israelis
+issuable
+issuance
+issue
+issued
+issuer
+issuers
+issues
+issuing
+istanbul
+isthmus
+it
+italian
+italians
+italic
+italicisation
+italicise
+italicised
+italics
+italy
+itch
+itched
+itches
+itchier
+itchiest
+itching
+itchy
+item
+itemise
+itemised
+itemises
+itemising
+items
+iterate
+iterated
+iterates
+iterating
+iteration
+iterations
+iterative
+iteratively
+iterators
+itinerant
+itinerants
+itineraries
+itinerary
+itll
+its
+itself
+ive
+ivies
+ivories
+ivory
+ivy
+jab
+jabbed
+jabber
+jabbered
+jabbering
+jabbers
+jabbing
+jabs
+jack
+jackal
+jackals
+jackass
+jackasses
+jackboot
+jackbooted
+jackboots
+jackdaw
+jackdaws
+jacked
+jacket
+jackets
+jacking
+jackinthebox
+jackpot
+jackpots
+jacks
+jacob
+jacuzzi
+jade
+jaded
+jadedly
+jadedness
+jades
+jag
+jagged
+jaggedly
+jaguar
+jaguars
+jahweh
+jail
+jailbird
+jailed
+jailer
+jailers
+jailing
+jails
+jakarta
+jalopy
+jam
+jamaica
+jamaican
+jamb
+jamboree
+jambs
+james
+jammed
+jamming
+jams
+jangle
+jangled
+jangling
+jangly
+janitor
+janitors
+january
+janus
+jap
+japan
+jape
+japes
+japonica
+jar
+jargon
+jargons
+jarl
+jarred
+jarring
+jars
+jasmine
+jaundice
+jaundiced
+jaunt
+jaunted
+jauntier
+jauntiest
+jauntily
+jaunting
+jaunts
+jaunty
+java
+javelin
+javelins
+jaw
+jawbone
+jawbones
+jawed
+jawing
+jawline
+jaws
+jay
+jays
+jaywalk
+jaywalker
+jaywalking
+jazz
+jazzed
+jazzier
+jazziest
+jazzy
+jealous
+jealousies
+jealously
+jealousy
+jeans
+jeep
+jeeps
+jeer
+jeered
+jeering
+jeeringly
+jeerings
+jeers
+jehad
+jejune
+jejunum
+jell
+jellied
+jellies
+jellify
+jelly
+jellyfish
+jemmy
+jennets
+jeopardise
+jeopardised
+jeopardises
+jeopardising
+jeopardy
+jerboas
+jeremiah
+jericho
+jerk
+jerked
+jerkier
+jerkiest
+jerkily
+jerkin
+jerking
+jerkings
+jerkins
+jerks
+jerky
+jersey
+jerseys
+jest
+jested
+jester
+jesters
+jesting
+jestingly
+jests
+jesuit
+jesus
+jet
+jetlagged
+jetplane
+jetpropelled
+jets
+jetsam
+jetsetting
+jetted
+jetties
+jetting
+jettison
+jettisoned
+jettisoning
+jetty
+jew
+jewel
+jewelled
+jeweller
+jewellers
+jewellery
+jewelry
+jewels
+jewess
+jewish
+jews
+jewsharp
+jezebel
+jiffy
+jiggle
+jiggling
+jigs
+jigsaw
+jigsaws
+jihad
+jilt
+jilted
+jilting
+jilts
+jimmy
+jingle
+jingled
+jingles
+jingling
+jingo
+jingoism
+jingoistic
+jinked
+jinks
+jinx
+jinxed
+jinxes
+jitter
+jitters
+jittery
+jiujitsu
+jive
+jived
+jives
+job
+jobbing
+jobless
+joblessness
+jobs
+jock
+jockey
+jockeying
+jockeys
+jocular
+jocularity
+jocularly
+joey
+jog
+jogged
+jogger
+joggers
+jogging
+jogs
+john
+join
+joined
+joiner
+joiners
+joinery
+joining
+joins
+joint
+jointed
+jointing
+jointly
+joints
+jointures
+joist
+joists
+joke
+joked
+joker
+jokers
+jokes
+jokey
+jokier
+jokily
+joking
+jokingly
+jollier
+jolliest
+jollify
+jollily
+jollity
+jolly
+jolt
+jolted
+jolting
+jolts
+jonah
+jonathan
+joseph
+joshua
+jostle
+jostled
+jostles
+jostling
+jot
+jots
+jotted
+jotter
+jotting
+jottings
+joule
+joules
+journal
+journalese
+journalism
+journalist
+journalistic
+journalists
+journalled
+journalling
+journals
+journey
+journeyed
+journeyer
+journeying
+journeyman
+journeys
+joust
+jouster
+jousting
+jousts
+jovial
+joviality
+jovially
+jovian
+jowl
+jowls
+joy
+joyed
+joyful
+joyfully
+joyfulness
+joyless
+joylessness
+joyous
+joyously
+joyousness
+joyride
+joyrider
+joyriders
+joyriding
+joys
+joystick
+joysticks
+jubilant
+jubilantly
+jubilate
+jubilation
+jubilee
+jubilees
+judaic
+judaism
+judas
+judder
+juddered
+juddering
+judders
+judge
+judged
+judgement
+judgemental
+judgements
+judges
+judging
+judgment
+judgmental
+judgments
+judicature
+judicial
+judicially
+judiciaries
+judiciary
+judicious
+judiciously
+judo
+jug
+jugged
+juggernaut
+juggernauts
+juggle
+juggled
+juggler
+jugglers
+juggles
+juggling
+jugs
+jugular
+juice
+juices
+juicier
+juiciest
+juiciness
+juicy
+jukebox
+jukeboxes
+julep
+juleps
+july
+jumble
+jumbled
+jumbles
+jumbo
+jump
+jumped
+jumper
+jumpers
+jumpier
+jumpiest
+jumpiness
+jumping
+jumps
+jumpstart
+jumpstarting
+jumpsuit
+jumpy
+junction
+junctions
+juncture
+june
+jungle
+jungles
+junior
+juniority
+juniors
+juniper
+junk
+junker
+junket
+junkie
+junkies
+junkmail
+junks
+junkyard
+juno
+junta
+juntas
+jupiter
+jurassic
+juridic
+juridical
+juries
+jurisdiction
+jurisdictional
+jurisdictions
+jurisprudence
+jurisprudential
+jurist
+juristic
+jurists
+juror
+jurors
+jury
+juryman
+jurymen
+jussive
+just
+justice
+justices
+justifiability
+justifiable
+justifiably
+justification
+justifications
+justificatory
+justified
+justifies
+justify
+justifying
+justly
+justness
+jut
+jute
+juts
+jutted
+jutting
+juvenile
+juveniles
+juxtapose
+juxtaposed
+juxtaposes
+juxtaposing
+juxtaposition
+juxtapositions
+kaftan
+kaftans
+kaiser
+kalahari
+kale
+kaleidoscope
+kaleidoscopic
+kalif
+kamikaze
+kampala
+kampong
+kangaroo
+kangaroos
+kaolin
+karakul
+karaoke
+karate
+karma
+karst
+katydid
+kayak
+kayaks
+kebab
+kebabs
+kedgeree
+keel
+keeled
+keelhaul
+keeling
+keels
+keen
+keener
+keenest
+keening
+keenly
+keenness
+keep
+keeper
+keepers
+keeping
+keeps
+keepsake
+keepsakes
+keg
+kegs
+kelp
+kelpers
+kelt
+kelts
+kelvin
+ken
+kennedy
+kennel
+kennelled
+kennels
+kent
+kentucky
+kenya
+kenyan
+kept
+keratin
+kerb
+kerbs
+kerbside
+kerchief
+kerned
+kernel
+kernels
+kerning
+kerosene
+kestrel
+kestrels
+ketch
+ketchup
+kettle
+kettleful
+kettles
+key
+keyboard
+keyboardist
+keyboards
+keyed
+keyhole
+keyholes
+keying
+keynote
+keynotes
+keypad
+keypads
+keyring
+keys
+keystone
+keystones
+keystroke
+keystrokes
+keyword
+keywords
+khaki
+khalif
+khan
+khans
+khoikhoi
+khoisan
+kibbutz
+kick
+kickback
+kicked
+kicker
+kicking
+kicks
+kickstart
+kickstarted
+kickstarting
+kickstarts
+kid
+kidded
+kiddie
+kidding
+kidnap
+kidnapped
+kidnapper
+kidnappers
+kidnapping
+kidnappings
+kidnaps
+kidney
+kidneys
+kidneyshaped
+kids
+kiev
+kill
+killed
+killer
+killers
+killing
+killings
+killjoy
+killjoys
+kills
+kiln
+kilns
+kilo
+kilobits
+kilobyte
+kilobytes
+kilohertz
+kilojoules
+kilometre
+kilometres
+kiloton
+kilotons
+kilovolt
+kilowatt
+kilowatts
+kilt
+kilted
+kilter
+kilts
+kimono
+kin
+kina
+kinase
+kind
+kinder
+kindergarten
+kindergartens
+kindest
+kindhearted
+kindheartedness
+kindle
+kindled
+kindles
+kindlier
+kindliest
+kindliness
+kindling
+kindly
+kindness
+kindnesses
+kindred
+kinds
+kinematic
+kinematics
+kinetic
+kinetically
+kinetics
+kinfolk
+king
+kingdom
+kingdoms
+kingfisher
+kingfishers
+kingly
+kingpin
+kings
+kingship
+kingsize
+kingsized
+kink
+kinked
+kinks
+kinky
+kinsfolk
+kinshasa
+kinship
+kinsman
+kinsmen
+kinswoman
+kiosk
+kiosks
+kipper
+kippers
+kirk
+kismet
+kiss
+kissed
+kisser
+kisses
+kissing
+kit
+kitbag
+kitbags
+kitchen
+kitchenette
+kitchens
+kitchenware
+kite
+kites
+kith
+kits
+kitsch
+kitted
+kitten
+kittenish
+kittens
+kitting
+kittiwakes
+kitty
+kiwi
+kiwis
+klaxon
+klaxons
+kleptomania
+kleptomaniac
+kleptomaniacs
+klick
+kloof
+knack
+knacker
+knackers
+knacks
+knapsack
+knapsacks
+knave
+knavery
+knaves
+knavish
+knead
+kneaded
+kneading
+kneads
+knee
+kneecap
+kneecaps
+kneed
+kneedeep
+kneel
+kneeled
+kneeler
+kneeling
+kneels
+knees
+knell
+knelt
+knesset
+knew
+knickers
+knife
+knifed
+knifepoint
+knifes
+knifing
+knight
+knighted
+knighthood
+knighthoods
+knightly
+knights
+knit
+knits
+knitted
+knitter
+knitters
+knitting
+knitwear
+knives
+knob
+knobbly
+knobs
+knock
+knocked
+knocker
+knockers
+knocking
+knockings
+knockout
+knocks
+knoll
+knolls
+knot
+knots
+knotted
+knottier
+knottiest
+knotting
+knotty
+know
+knowable
+knowhow
+knowing
+knowingly
+knowledge
+knowledgeable
+knowledgeably
+known
+knows
+knuckle
+knuckled
+knuckleduster
+knuckledusters
+knuckles
+knuckling
+koala
+koalas
+kongo
+kookaburra
+koran
+korea
+korean
+koreans
+kosher
+kraal
+kraals
+kraft
+kremlin
+kriegspiel
+krill
+krypton
+kudu
+kudus
+kungfu
+kuwait
+kwacha
+kwachas
+laager
+lab
+label
+labelled
+labelling
+labellings
+labels
+labia
+labial
+labials
+labile
+labium
+laboratories
+laboratory
+laborious
+laboriously
+laboriousness
+labour
+laboured
+labourer
+labourers
+labouring
+labourintensive
+labours
+laboursaving
+labs
+laburnum
+labyrinth
+labyrinthine
+labyrinths
+lace
+laced
+lacerate
+lacerated
+lacerating
+laceration
+lacerations
+laces
+lacework
+laches
+lachrymal
+lachrymose
+lacier
+lacing
+lacings
+lack
+lackadaisical
+lacked
+lackey
+lackeys
+lacking
+lacklustre
+lacks
+laconic
+laconically
+lacquer
+lacquered
+lacquers
+lacrosse
+lacs
+lactate
+lactation
+lacteal
+lactic
+lactose
+lacuna
+lacunae
+lacunas
+lacy
+lad
+ladder
+laddered
+ladders
+laddie
+laddies
+lade
+laden
+ladies
+lading
+ladle
+ladled
+ladles
+ladling
+lads
+lady
+ladybird
+ladybirds
+ladybug
+ladylike
+ladyship
+ladyships
+lag
+lager
+lagers
+laggard
+laggards
+lagged
+lagging
+lagoon
+lagoons
+lagos
+lags
+lagune
+laid
+lain
+lair
+laird
+lairds
+lairs
+laissezfaire
+laity
+lake
+lakes
+lakeside
+lam
+lama
+lamas
+lamb
+lambasted
+lambasting
+lambda
+lambent
+lambing
+lambs
+lambskin
+lambswool
+lame
+lamed
+lamely
+lameness
+lament
+lamentable
+lamentably
+lamentation
+lamentations
+lamented
+lamenter
+lamenting
+laments
+lamest
+lamina
+laminar
+laminate
+laminated
+laminates
+lamination
+lamp
+lamplight
+lamplighter
+lamplit
+lampoon
+lampooned
+lampoonery
+lampooning
+lampoons
+lamppost
+lampposts
+lamprey
+lampreys
+lamps
+lampshade
+lampshades
+lance
+lanced
+lancelot
+lancer
+lancers
+lances
+lancet
+lancets
+lancing
+land
+landed
+lander
+landfall
+landfill
+landform
+landforms
+landholders
+landholding
+landholdings
+landing
+landings
+landladies
+landlady
+landless
+landlines
+landlocked
+landlord
+landlords
+landman
+landmark
+landmarks
+landmass
+landmine
+landowner
+landowners
+landowning
+lands
+landscape
+landscaped
+landscapes
+landscaping
+landside
+landslide
+landslides
+landslip
+landslips
+landward
+lane
+lanes
+language
+languages
+languid
+languidly
+languish
+languished
+languishes
+languishing
+languor
+languorous
+languorously
+lank
+lankier
+lankiest
+lanky
+lanolin
+lantern
+lanterns
+lanyard
+laos
+lap
+lapdog
+lapdogs
+lapel
+lapels
+lapful
+lapidary
+lapland
+lapp
+lapped
+lapping
+laps
+lapse
+lapsed
+lapses
+lapsing
+laptop
+laptops
+lapwing
+lapwings
+larceny
+larch
+larches
+lard
+larder
+larders
+lards
+large
+largely
+largeness
+larger
+largest
+largish
+largo
+lark
+larking
+larks
+larva
+larvae
+larval
+laryngeal
+laryngitis
+larynx
+larynxes
+las
+lasagne
+lascivious
+lasciviously
+lasciviousness
+lase
+laser
+lasers
+lash
+lashed
+lashers
+lashes
+lashing
+lashings
+lasing
+lass
+lasses
+lassie
+lassies
+lassitude
+lasso
+lassoed
+lassoing
+last
+lasted
+lasting
+lastly
+lasts
+latch
+latched
+latches
+latching
+late
+latecomer
+latecomers
+lately
+latencies
+latency
+lateness
+latent
+later
+lateral
+lateralisation
+laterally
+laterals
+latest
+latex
+lath
+lathe
+lather
+lathered
+lathers
+lathes
+laths
+latices
+latin
+latino
+latitude
+latitudes
+latitudinal
+latrine
+latrines
+latter
+lattice
+latticed
+lattices
+latvia
+latvian
+laud
+laudable
+laudatory
+lauded
+lauders
+lauding
+lauds
+laugh
+laughable
+laughably
+laughed
+laugher
+laughing
+laughingly
+laughs
+laughter
+launch
+launched
+launcher
+launchers
+launches
+launching
+launder
+laundered
+launderette
+launderettes
+laundering
+laundress
+laundrette
+laundrettes
+laundries
+laundry
+laureate
+laurel
+laurels
+lava
+lavas
+lavatorial
+lavatories
+lavatory
+lavender
+lavish
+lavished
+lavishes
+lavishing
+lavishly
+lavishness
+law
+lawabiding
+lawbreaker
+lawbreakers
+lawbreaking
+lawful
+lawfully
+lawfulness
+lawless
+lawlessness
+lawmaker
+lawmakers
+lawman
+lawmen
+lawn
+lawnmower
+lawnmowers
+lawns
+laws
+lawsuit
+lawsuits
+lawyer
+lawyers
+lax
+laxative
+laxatives
+laxer
+laxity
+laxness
+lay
+layabout
+layabouts
+layby
+laybys
+layer
+layered
+layering
+layers
+laying
+layman
+laymen
+layoff
+layoffs
+layout
+layouts
+layperson
+lays
+lazaret
+lazarus
+laze
+lazed
+lazier
+laziest
+lazily
+laziness
+lazing
+lazuli
+lazy
+lazybones
+lea
+leach
+leached
+leaches
+leaching
+lead
+leaded
+leaden
+leader
+leaderless
+leaders
+leadership
+leaderships
+leadfree
+leading
+leads
+leaf
+leafed
+leafier
+leafiest
+leafiness
+leafing
+leafless
+leaflet
+leaflets
+leafy
+league
+leagues
+leak
+leakage
+leakages
+leaked
+leakier
+leakiest
+leakiness
+leaking
+leaks
+leaky
+lean
+leaned
+leaner
+leanest
+leaning
+leanings
+leanness
+leans
+leant
+leap
+leaped
+leaper
+leapfrog
+leapfrogging
+leaping
+leaps
+leapt
+leapyear
+learn
+learnable
+learned
+learnedly
+learner
+learners
+learning
+learns
+learnt
+lease
+leased
+leasehold
+leaseholder
+leaseholders
+leases
+leash
+leashed
+leashes
+leashing
+leasing
+least
+leat
+leather
+leathers
+leathery
+leave
+leaved
+leaven
+leavened
+leavening
+leaver
+leavers
+leaves
+leaving
+leavings
+lebanon
+lebensraum
+lecher
+lecherous
+lecherousness
+lechery
+lectern
+lector
+lectors
+lecture
+lectured
+lecturer
+lecturers
+lectures
+lectureship
+lectureships
+lecturing
+led
+ledge
+ledger
+ledgers
+ledges
+lee
+leech
+leeches
+leeching
+leeds
+leek
+leeks
+leer
+leered
+leering
+leeringly
+leers
+lees
+leeward
+leeway
+left
+lefthanded
+lefthandedly
+lefthandedness
+lefthander
+lefthanders
+lefties
+leftish
+leftist
+leftists
+leftmost
+leftover
+leftovers
+lefts
+leftward
+leftwards
+lefty
+leg
+legacies
+legacy
+legal
+legalese
+legalisation
+legalise
+legalised
+legalising
+legalism
+legalistic
+legalities
+legality
+legally
+legate
+legatee
+legatees
+legates
+legation
+legato
+legator
+legend
+legendary
+legends
+legerdemain
+legged
+legging
+leggings
+leggy
+leghorn
+leghorns
+legibility
+legible
+legibly
+legion
+legionaries
+legionary
+legionnaires
+legions
+legislate
+legislated
+legislating
+legislation
+legislative
+legislatively
+legislator
+legislators
+legislature
+legislatures
+legitimacy
+legitimate
+legitimated
+legitimately
+legitimating
+legitimation
+legitimisation
+legitimise
+legitimised
+legitimising
+legless
+legman
+legroom
+legs
+legume
+legumes
+leguminous
+legwork
+leipzig
+leisure
+leisured
+leisurely
+leisurewear
+leitmotif
+leitmotifs
+leitmotiv
+leitmotivs
+lemma
+lemmas
+lemming
+lemmings
+lemon
+lemonade
+lemons
+lemur
+lemurs
+lend
+lender
+lenders
+lending
+lends
+length
+lengthen
+lengthened
+lengthening
+lengthens
+lengthier
+lengthiest
+lengthily
+lengths
+lengthways
+lengthwise
+lengthy
+leniency
+lenient
+leniently
+lenin
+lens
+lenses
+lensing
+lent
+lentil
+lentils
+lento
+leonardo
+leone
+leopard
+leopards
+leopardskin
+leotard
+leotards
+leper
+lepers
+leprechaun
+leprechauns
+leprose
+leprosy
+leprous
+lepton
+leptons
+lesbian
+lesbianism
+lesbians
+lesion
+lesions
+lesotho
+less
+lessee
+lessees
+lessen
+lessened
+lessening
+lessens
+lesser
+lesson
+lessons
+lessor
+lessors
+lest
+let
+lethal
+lethality
+lethally
+lethargic
+lethargically
+lethargy
+lets
+letter
+letterbox
+letterboxes
+lettered
+letterhead
+letterheads
+lettering
+letterpress
+letters
+letterwriter
+letting
+lettings
+lettish
+lettuce
+lettuces
+leucine
+leukaemia
+leukemia
+level
+levelheaded
+levelled
+leveller
+levelling
+levelly
+levels
+lever
+leverage
+leveraged
+levered
+levering
+levers
+levi
+leviathan
+levied
+levies
+levitate
+levitated
+levitates
+levitating
+levitation
+levity
+levy
+levying
+lewd
+lewdness
+lexeme
+lexemes
+lexical
+lexically
+lexicographer
+lexicographers
+lexicographic
+lexicographical
+lexicographically
+lexicography
+lexicon
+lexicons
+leyden
+liabilities
+liability
+liable
+liaise
+liaised
+liaises
+liaising
+liaison
+liaisons
+liar
+liars
+libation
+libations
+libel
+libeled
+libeler
+libelled
+libeller
+libelling
+libellous
+libels
+liberal
+liberalisation
+liberalise
+liberalised
+liberalising
+liberalism
+liberality
+liberally
+liberals
+liberate
+liberated
+liberates
+liberating
+liberation
+liberationists
+liberator
+liberators
+liberia
+libero
+libertarian
+libertarianism
+libertarians
+liberties
+libertine
+libertines
+liberty
+libidinous
+libido
+librarian
+librarians
+librarianship
+libraries
+library
+librate
+librated
+librates
+libretti
+librettist
+librettists
+libretto
+libya
+libyan
+libyans
+lice
+licence
+licences
+license
+licensed
+licensee
+licensees
+licenses
+licensing
+licentiate
+licentious
+licentiousness
+lichee
+lichen
+lichened
+lichens
+lichi
+lichis
+lick
+licked
+lickerish
+licking
+licks
+licorice
+lid
+lidded
+lidless
+lido
+lids
+lie
+lied
+lieder
+lien
+liens
+lies
+lieu
+lieutenancy
+lieutenant
+lieutenants
+life
+lifeanddeath
+lifebelt
+lifeblood
+lifeboat
+lifeboatmen
+lifeboats
+lifeforms
+lifegiving
+lifeguard
+lifeguards
+lifeless
+lifelessly
+lifelessness
+lifelike
+lifeline
+lifelines
+lifelong
+liferaft
+liferafts
+lifesaving
+lifesize
+lifesized
+lifespan
+lifespans
+lifestyle
+lifestyles
+lifetaking
+lifethreatening
+lifetime
+lifetimes
+lifework
+lift
+lifted
+lifter
+lifters
+lifting
+liftman
+liftmen
+liftoff
+lifts
+ligament
+ligaments
+ligand
+ligands
+ligature
+ligatured
+ligatures
+ligaturing
+light
+lighted
+lighten
+lightened
+lightening
+lightens
+lighter
+lighters
+lightest
+lightheaded
+lightheadedness
+lighthearted
+lightheartedly
+lightheartedness
+lighthouse
+lighthouses
+lighting
+lightless
+lightly
+lightness
+lightning
+lights
+lightship
+lightweight
+lightweights
+lignite
+likable
+like
+likeability
+likeable
+liked
+likelier
+likeliest
+likelihood
+likely
+likeminded
+liken
+likened
+likeness
+likenesses
+likening
+likens
+likes
+likewise
+liking
+likings
+lilac
+lilacs
+lilies
+lilliput
+lilliputian
+lilongwe
+lilt
+lilting
+lily
+lilylivered
+lilywhite
+lima
+limb
+limber
+limbering
+limbers
+limbless
+limbo
+limbs
+lime
+limekiln
+limelight
+limerick
+limericks
+limes
+limestone
+limestones
+limeys
+liminal
+liming
+limit
+limitation
+limitations
+limited
+limiter
+limiters
+limiting
+limitless
+limits
+limo
+limousin
+limousine
+limousines
+limp
+limped
+limpet
+limpets
+limpid
+limping
+limply
+limpopo
+limps
+linage
+linchpin
+lincoln
+linden
+line
+lineage
+lineages
+lineally
+lineaments
+linear
+linearised
+linearity
+linearly
+lined
+linefeed
+lineman
+linemen
+linen
+linens
+lineout
+lineouts
+liner
+liners
+lines
+linesman
+linesmen
+lineup
+lineups
+linger
+lingered
+lingerer
+lingerie
+lingering
+lingeringly
+lingers
+lingua
+lingual
+linguist
+linguistic
+linguistically
+linguistics
+linguists
+liniment
+liniments
+lining
+linings
+link
+linkable
+linkage
+linkages
+linked
+linker
+linkers
+linking
+links
+linkup
+linkups
+linnet
+linnets
+lino
+linoleum
+linseed
+lint
+lintel
+lintels
+liny
+lion
+lioness
+lionesses
+lionise
+lionised
+lions
+lip
+lipase
+lipid
+lipids
+lipped
+lipread
+lipreading
+lips
+lipservice
+lipstick
+lipsticks
+liquefaction
+liquefied
+liquefy
+liqueur
+liqueurs
+liquid
+liquidate
+liquidated
+liquidating
+liquidation
+liquidations
+liquidator
+liquidators
+liquidise
+liquidised
+liquidiser
+liquidising
+liquidity
+liquids
+liquify
+liquor
+liquorice
+liquorish
+liquors
+lira
+lire
+lisbon
+lisp
+lisped
+lisping
+lisps
+lissom
+lissome
+lissomeness
+lissomness
+list
+listed
+listen
+listened
+listener
+listeners
+listening
+listens
+listeria
+listing
+listings
+listless
+listlessly
+listlessness
+lists
+lit
+litanies
+litany
+litchi
+literacy
+literal
+literalism
+literalistic
+literally
+literals
+literary
+literate
+literati
+literature
+literatures
+lithe
+lithely
+lithium
+lithograph
+lithographic
+lithographs
+lithography
+lithological
+lithologies
+lithology
+lithosphere
+litigant
+litigants
+litigate
+litigating
+litigation
+litigious
+litigiousness
+litmus
+litotes
+litre
+litres
+litter
+littered
+littering
+litters
+little
+littleness
+littler
+littlest
+littoral
+liturgical
+liturgies
+liturgy
+livable
+live
+liveable
+lived
+livelier
+liveliest
+livelihood
+livelihoods
+liveliness
+lively
+liven
+livened
+livening
+livens
+liver
+liveried
+liveries
+liverish
+livers
+liverworts
+livery
+lives
+livestock
+livewire
+livid
+lividly
+living
+livings
+lizard
+lizards
+llama
+llamas
+lls
+load
+loadable
+loaded
+loader
+loaders
+loading
+loadings
+loads
+loaf
+loafed
+loafer
+loafers
+loafing
+loafs
+loam
+loams
+loamy
+loan
+loanable
+loaned
+loaner
+loaning
+loans
+loanword
+loanwords
+loath
+loathe
+loathed
+loathes
+loathing
+loathsome
+loathsomely
+loathsomeness
+loaves
+lob
+lobbed
+lobbied
+lobbies
+lobbing
+lobby
+lobbying
+lobbyist
+lobbyists
+lobe
+lobed
+lobelia
+lobes
+lobotomies
+lobotomised
+lobotomising
+lobotomist
+lobotomy
+lobs
+lobster
+lobsters
+lobular
+local
+locale
+locales
+localisation
+localisations
+localise
+localised
+localises
+localising
+localities
+locality
+locally
+locals
+locatable
+locate
+located
+locates
+locating
+location
+locational
+locations
+locative
+locator
+locators
+loch
+lochness
+lochs
+loci
+lock
+lockable
+lockage
+locked
+locker
+lockers
+locket
+locking
+lockjaw
+lockout
+lockouts
+locks
+locksmith
+loco
+locomote
+locomotion
+locomotive
+locomotives
+locus
+locust
+locusts
+lode
+lodestar
+lodestone
+lodge
+lodged
+lodgement
+lodger
+lodgers
+lodges
+lodging
+lodgings
+loess
+loft
+lofted
+loftier
+loftiest
+loftily
+loftiness
+lofts
+lofty
+log
+loganberries
+loganberry
+logarithm
+logarithmic
+logarithmically
+logarithms
+logbook
+logbooks
+logged
+logger
+loggerheads
+loggers
+logging
+logic
+logical
+logicality
+logically
+logician
+logicians
+logics
+logistic
+logistical
+logistically
+logistics
+logjam
+logo
+logoff
+logos
+logs
+loin
+loincloth
+loins
+loire
+loiter
+loitered
+loiterer
+loiterers
+loitering
+loiters
+loll
+lolled
+lollies
+lolling
+lollipop
+lollipops
+lolly
+london
+londoner
+lone
+lonelier
+loneliest
+loneliness
+lonely
+loner
+loners
+lonesome
+lonesomeness
+long
+longawaited
+longed
+longer
+longest
+longevity
+longfaced
+longhand
+longing
+longingly
+longings
+longish
+longitude
+longitudes
+longitudinal
+longitudinally
+longlasting
+longlived
+longlost
+longs
+longstanding
+longsuffering
+longwinded
+longwindedness
+loo
+look
+lookalike
+lookalikes
+looked
+looker
+lookers
+looking
+lookingglass
+lookingglasses
+lookout
+lookouts
+looks
+loom
+loomed
+looming
+looms
+loon
+looney
+loony
+loop
+looped
+loophole
+loopholes
+looping
+loops
+loopy
+loose
+loosed
+loosely
+loosen
+loosened
+looseness
+loosening
+loosens
+looser
+looses
+loosest
+loosing
+loot
+looted
+looter
+looters
+looting
+loots
+lop
+lope
+loped
+lopes
+loping
+lopped
+lopper
+loppers
+lopping
+lopsided
+lopsidedly
+loquacious
+loquacity
+lord
+lording
+lordly
+lords
+lordship
+lordships
+lore
+lorelei
+lorries
+lorry
+lorryload
+lorryloads
+losable
+lose
+loser
+losers
+loses
+losing
+losings
+loss
+losses
+lost
+lot
+loth
+lotion
+lotions
+lots
+lotteries
+lottery
+lotto
+lotus
+louche
+loud
+louder
+loudest
+loudhailer
+loudhailers
+loudly
+loudmouthed
+loudness
+loudspeaker
+loudspeakers
+louis
+lounge
+lounged
+lounger
+loungers
+lounges
+lounging
+louse
+lousiest
+lousily
+lousy
+lout
+loutish
+loutishness
+louts
+louver
+louvers
+louvre
+louvred
+louvres
+lovable
+love
+loveable
+lovebirds
+loved
+loveless
+lovelier
+lovelies
+loveliest
+loveliness
+lovelorn
+lovely
+lovemaking
+lover
+lovers
+loves
+lovesick
+lovestruck
+loving
+lovingly
+low
+lower
+lowercase
+lowered
+lowering
+lowers
+lowest
+lowing
+lowish
+lowkey
+lowland
+lowlanders
+lowlands
+lowlier
+lowliest
+lowly
+lowlying
+lowness
+lowpitched
+lows
+lowspirited
+loyal
+loyalist
+loyalists
+loyally
+loyalties
+loyalty
+lozenge
+lozenges
+luanda
+lubber
+lubbers
+lubricant
+lubricants
+lubricate
+lubricated
+lubricates
+lubricating
+lubrication
+lubricious
+lucid
+lucidity
+lucidly
+lucifer
+luck
+luckier
+luckiest
+luckily
+luckless
+lucky
+lucrative
+lucre
+ludicrous
+ludicrously
+ludicrousness
+ludo
+lug
+luggage
+lugged
+lugging
+lugs
+lugubrious
+lugubriously
+luke
+lukewarm
+lull
+lullabies
+lullaby
+lulled
+lulling
+lulls
+lulu
+lumbago
+lumbar
+lumber
+lumbered
+lumbering
+lumberjack
+lumberjacks
+lumbers
+lumen
+luminal
+luminance
+luminaries
+luminary
+luminescence
+luminescent
+luminosities
+luminosity
+luminous
+luminously
+lump
+lumped
+lumpen
+lumpier
+lumpiest
+lumpiness
+lumping
+lumpish
+lumps
+lumpy
+luna
+lunacies
+lunacy
+lunar
+lunate
+lunatic
+lunatics
+lunch
+lunched
+luncheon
+luncheons
+lunchers
+lunches
+lunching
+lunchpack
+lunchtime
+lunchtimes
+lune
+lung
+lunge
+lunged
+lunges
+lungfish
+lungful
+lungfuls
+lunging
+lungs
+lupin
+lupines
+lupins
+lur
+lurch
+lurched
+lurchers
+lurches
+lurching
+lure
+lured
+lures
+lurex
+lurid
+luridly
+luring
+lurk
+lurked
+lurker
+lurkers
+lurking
+lurks
+lusaka
+luscious
+lusciously
+lush
+lusher
+lushest
+lushness
+lust
+lusted
+lustful
+lustfully
+lustier
+lustiest
+lustily
+lusting
+lustre
+lustreless
+lustrous
+lusts
+lusty
+lute
+lutes
+luther
+lux
+luxor
+luxuriance
+luxuriant
+luxuriantly
+luxuriate
+luxuriating
+luxuries
+luxurious
+luxuriously
+luxury
+lychee
+lychees
+lye
+lying
+lymph
+lymphatic
+lymphocyte
+lymphocytes
+lymphocytic
+lymphoid
+lymphoma
+lymphomas
+lynch
+lynched
+lynches
+lynching
+lynchpin
+lynx
+lynxes
+lyon
+lyons
+lyra
+lyre
+lyres
+lyric
+lyrical
+lyrically
+lyricism
+lyricist
+lyricists
+lyrics
+lyrist
+lysine
+mac
+macabre
+macaque
+macaques
+macaroni
+macaroon
+macaroons
+macaw
+macaws
+mace
+maces
+machete
+machetes
+machination
+machinations
+machine
+machined
+machinegun
+machineguns
+machinery
+machines
+machinist
+machinists
+machismo
+macho
+macintosh
+macintoshes
+mackerel
+mackintosh
+mackintoshes
+macro
+macrobiotic
+macrocosm
+macroeconomic
+macroeconomics
+macromolecular
+macromolecules
+macron
+macrophage
+macrophages
+macroscopic
+macroscopically
+mad
+madam
+madame
+madams
+madcap
+madden
+maddened
+maddening
+maddeningly
+maddens
+madder
+maddest
+made
+madeira
+mademoiselle
+madhouse
+madly
+madman
+madmen
+madness
+madras
+madrid
+madrigal
+madrigals
+madwoman
+maelstrom
+maestro
+mafia
+mafiosi
+mag
+magazine
+magazines
+magenta
+maggot
+maggots
+magi
+magic
+magical
+magically
+magician
+magicians
+magics
+magisterial
+magisterially
+magistrate
+magistrates
+magma
+magmas
+magmatic
+magnanimity
+magnanimosity
+magnanimous
+magnanimously
+magnate
+magnates
+magnesia
+magnesium
+magnet
+magnetic
+magnetically
+magnetisation
+magnetise
+magnetised
+magnetism
+magnetite
+magneto
+magnetodynamics
+magnetohydrodynamical
+magnetohydrodynamics
+magnetometer
+magnetometers
+magnetosphere
+magnetron
+magnets
+magnification
+magnifications
+magnificence
+magnificent
+magnificently
+magnified
+magnifier
+magnifies
+magnify
+magnifying
+magniloquent
+magnitude
+magnitudes
+magnolia
+magnolias
+magnum
+magnums
+magpie
+magpies
+mags
+mahatma
+mahogany
+maid
+maiden
+maidenly
+maidens
+maids
+maidservant
+maidservants
+mail
+mailable
+mailbox
+mailed
+mailer
+mailing
+mailings
+mailman
+mailmen
+mailorder
+mails
+mailshot
+mailshots
+maim
+maimed
+maiming
+maimings
+maims
+main
+mainbrace
+maine
+mainframe
+mainframes
+mainland
+mainline
+mainly
+mains
+mainsail
+mainspring
+mainstay
+mainstays
+mainstream
+maintain
+maintainability
+maintainable
+maintained
+maintainer
+maintainers
+maintaining
+maintains
+maintenance
+maisonette
+maisonettes
+maize
+maizes
+majestic
+majestically
+majesties
+majesty
+majolica
+major
+majorette
+majorettes
+majorities
+majority
+majors
+make
+makeover
+maker
+makers
+makes
+makeshift
+makeup
+makeweight
+making
+makings
+malachite
+maladaptive
+maladies
+maladjusted
+maladjustment
+maladministration
+maladroit
+malady
+malaise
+malaria
+malarial
+malathion
+malawi
+malay
+malayan
+malays
+malaysia
+malcontent
+malcontents
+maldives
+male
+malefaction
+malefactions
+malefactor
+malefactors
+maleness
+males
+malevolence
+malevolent
+malevolently
+malformation
+malformations
+malformed
+malfunction
+malfunctioned
+malfunctioning
+malfunctions
+malice
+malices
+malicious
+maliciously
+maliciousness
+malign
+malignancies
+malignancy
+malignant
+malignantly
+maligned
+maligners
+maligning
+malignity
+maligns
+malingerers
+malingering
+mall
+mallard
+mallards
+malleability
+malleable
+mallet
+mallets
+mallow
+malls
+malnourished
+malnourishment
+malnutrition
+malodorous
+malpractice
+malpractices
+malt
+malta
+malted
+maltese
+malting
+maltreat
+maltreated
+maltreatment
+malts
+malty
+malva
+mama
+mamas
+mamba
+mambas
+mammal
+mammalia
+mammalian
+mammals
+mammary
+mammoth
+mammoths
+mammy
+man
+manacle
+manacled
+manacles
+manage
+manageability
+manageable
+managed
+management
+managements
+manager
+manageress
+manageresses
+managerial
+managerially
+managers
+managership
+manages
+managing
+manatee
+manciple
+mandarin
+mandarins
+mandate
+mandated
+mandates
+mandating
+mandatory
+mandela
+mandible
+mandibles
+mandibular
+mandolin
+mandolins
+mandrake
+mandril
+mandrill
+mane
+maned
+manes
+maneuver
+manfully
+manganese
+mange
+manger
+mangers
+mangle
+mangled
+mangler
+mangles
+mangling
+mango
+mangrove
+mangroves
+manhandle
+manhandled
+manhandling
+manhole
+manholes
+manhood
+manhunt
+manhunts
+mania
+maniac
+maniacal
+maniacally
+maniacs
+manias
+manic
+manically
+manicdepressive
+manicure
+manicured
+manifest
+manifestation
+manifestations
+manifested
+manifesting
+manifestly
+manifesto
+manifests
+manifold
+manifolds
+manikin
+manila
+manipulable
+manipulate
+manipulated
+manipulates
+manipulating
+manipulation
+manipulations
+manipulative
+manipulator
+manipulators
+mankind
+manliest
+manliness
+manly
+manmade
+manna
+manned
+mannequin
+mannequins
+manner
+mannered
+mannerism
+mannerisms
+mannerist
+mannerliness
+mannerly
+manners
+manning
+manoeuvrability
+manoeuvrable
+manoeuvre
+manoeuvred
+manoeuvres
+manoeuvring
+manoeuvrings
+manometer
+manor
+manorial
+manors
+manpower
+manse
+manservant
+mansion
+mansions
+mansized
+manslaughter
+mantel
+mantelpiece
+mantelpieces
+mantelshelf
+mantids
+mantis
+mantissa
+mantissas
+mantle
+mantled
+mantles
+mantling
+mantra
+mantrap
+mantraps
+mantras
+manual
+manually
+manuals
+manufacture
+manufactured
+manufacturer
+manufacturers
+manufactures
+manufacturing
+manure
+manured
+manures
+manuring
+manuscript
+manuscripts
+many
+maoism
+maoist
+maoists
+maori
+map
+maple
+maples
+mappable
+mapped
+mapper
+mappers
+mapping
+mappings
+maps
+maputo
+maquettes
+mar
+mara
+marathon
+marathons
+marauders
+marauding
+marble
+marbled
+marbles
+march
+marched
+marcher
+marchers
+marches
+marching
+marchioness
+mare
+mares
+margarine
+margarines
+margate
+margin
+marginal
+marginalia
+marginalisation
+marginalise
+marginalised
+marginalises
+marginalising
+marginality
+marginally
+marginals
+margins
+maria
+marigold
+marigolds
+marijuana
+marina
+marinade
+marinas
+marinate
+marinated
+marine
+mariner
+mariners
+marines
+marionette
+marionettes
+marital
+maritime
+mark
+marked
+markedly
+marker
+markers
+market
+marketability
+marketable
+marketed
+marketeer
+marketeers
+marketer
+marketing
+marketplace
+markets
+marking
+markings
+marks
+marksman
+marksmanship
+marksmen
+markup
+markups
+marl
+marls
+marmalade
+marmoset
+marmosets
+marmot
+marmots
+maroon
+marooned
+marooning
+maroons
+marque
+marquee
+marquees
+marques
+marquess
+marquetry
+marquis
+marred
+marriage
+marriageable
+marriages
+married
+marries
+marring
+marrow
+marrows
+marry
+marrying
+mars
+marsala
+marsh
+marshal
+marshalled
+marshaller
+marshalling
+marshals
+marshes
+marshgas
+marshier
+marshiest
+marshiness
+marshland
+marshmallow
+marshmallows
+marshy
+marsupial
+marsupials
+mart
+marten
+martens
+martial
+martian
+martians
+martin
+martinet
+martingale
+martingales
+martini
+martins
+martyr
+martyrdom
+martyred
+martyrs
+martyry
+marvel
+marvelled
+marvelling
+marvellous
+marvellously
+marvels
+marx
+marxism
+marxist
+marxists
+mary
+marzipan
+mas
+mascara
+mascot
+mascots
+masculine
+masculinity
+maser
+maseru
+mash
+mashed
+masher
+mashing
+mask
+masked
+masking
+masks
+masochism
+masochist
+masochistic
+masochistically
+masochists
+mason
+masonic
+masonry
+masons
+masque
+masquerade
+masqueraded
+masquerades
+masquerading
+masques
+mass
+massacre
+massacred
+massacres
+massacring
+massage
+massaged
+massager
+massages
+massaging
+massed
+masses
+masseur
+masseurs
+masseuse
+masseuses
+massif
+massing
+massive
+massively
+massless
+massproduced
+massproducing
+mast
+mastectomy
+masted
+master
+masterclass
+mastered
+masterful
+masterfully
+mastering
+masterly
+mastermind
+masterminded
+masterminding
+masterpiece
+masterpieces
+masters
+mastership
+masterwork
+masterworks
+mastery
+masthead
+masticating
+mastication
+mastiff
+mastitis
+mastodon
+mastodons
+mastoid
+mastoids
+masts
+mat
+matador
+matadors
+match
+matchable
+matchbox
+matchboxes
+matched
+matcher
+matches
+matching
+matchless
+matchmaker
+matchmaking
+matchplay
+matchstick
+matchsticks
+mate
+mated
+mater
+material
+materialisation
+materialise
+materialised
+materialises
+materialising
+materialism
+materialist
+materialistic
+materialistically
+materialists
+materiality
+materially
+materials
+maternal
+maternally
+maternity
+mates
+math
+mathematical
+mathematically
+mathematician
+mathematicians
+mathematics
+maths
+matinee
+matinees
+mating
+matings
+matins
+matriarch
+matriarchal
+matriarchies
+matriarchy
+matrices
+matriculate
+matriculated
+matriculating
+matriculation
+matrilineal
+matrimonial
+matrimonially
+matrimony
+matrix
+matrixes
+matron
+matronly
+matrons
+mats
+matt
+matte
+matted
+matter
+mattered
+mattering
+matteroffact
+matters
+matthew
+matting
+mattress
+mattresses
+maturation
+maturational
+mature
+matured
+maturely
+maturer
+matures
+maturing
+maturity
+maudlin
+maul
+mauled
+mauler
+maulers
+mauling
+mauls
+maumau
+mausoleum
+mausoleums
+mauve
+maverick
+mavericks
+maw
+mawkish
+mawkishness
+maxi
+maxim
+maxima
+maximal
+maximality
+maximally
+maximisation
+maximise
+maximised
+maximiser
+maximises
+maximising
+maxims
+maximum
+may
+maya
+mayas
+maybe
+mayday
+maydays
+mayflies
+mayflower
+mayfly
+mayhap
+mayhem
+mayonnaise
+mayor
+mayoral
+mayoralty
+mayoress
+mayors
+maypole
+maze
+mazes
+mazier
+maziest
+mazurka
+mazy
+mbabane
+me
+mead
+meadow
+meadowland
+meadows
+meagre
+meagrely
+meagreness
+meal
+mealie
+mealies
+meals
+mealtime
+mealtimes
+mealy
+mean
+meander
+meandered
+meandering
+meanderings
+meanders
+meaner
+meanest
+meanie
+meanies
+meaning
+meaningful
+meaningfully
+meaningfulness
+meaningless
+meaninglessly
+meaninglessness
+meanings
+meanly
+meanness
+means
+meant
+meantime
+meanwhile
+meany
+measles
+measly
+measurable
+measurably
+measure
+measured
+measureless
+measurement
+measurements
+measures
+measuring
+meat
+meataxe
+meatball
+meatballs
+meatier
+meatiest
+meatless
+meatpie
+meats
+meaty
+mecca
+mechanic
+mechanical
+mechanically
+mechanicals
+mechanics
+mechanisable
+mechanisation
+mechanise
+mechanised
+mechanising
+mechanism
+mechanisms
+mechanist
+mechanistic
+mechanistically
+medal
+medallion
+medallions
+medallist
+medallists
+medals
+meddle
+meddled
+meddler
+meddlers
+meddles
+meddlesome
+meddling
+media
+mediaeval
+medial
+medially
+median
+medians
+mediate
+mediated
+mediates
+mediating
+mediation
+mediator
+mediators
+mediatory
+medic
+medical
+medically
+medicals
+medicate
+medicated
+medication
+medications
+medicinal
+medicine
+medicines
+medics
+medieval
+medievalist
+medievalists
+mediocre
+mediocrity
+meditate
+meditated
+meditates
+meditating
+meditation
+meditations
+meditative
+meditatively
+meditator
+medium
+mediums
+mediumsized
+medlar
+medley
+medleys
+medulla
+medusa
+meek
+meeker
+meekest
+meekly
+meekness
+meet
+meeter
+meeting
+meetings
+meets
+mega
+megabyte
+megabytes
+megahertz
+megajoules
+megalith
+megalithic
+megalomania
+megalomaniac
+megalomaniacs
+megaparsec
+megaphone
+megastar
+megaton
+megatons
+megavolt
+megawatt
+megawatts
+meiosis
+meiotic
+melancholia
+melancholic
+melancholies
+melancholy
+melange
+melanin
+melanoma
+melanomas
+melatonin
+meld
+melee
+mellifluous
+mellifluously
+mellifluousness
+mellow
+mellowed
+mellower
+mellowing
+mellows
+melodic
+melodically
+melodies
+melodious
+melodiously
+melodrama
+melodramas
+melodramatic
+melodramatically
+melody
+melon
+melons
+melt
+meltdown
+melted
+melter
+melting
+melts
+member
+members
+membership
+memberships
+membrane
+membranes
+memento
+memo
+memoir
+memoirs
+memorabilia
+memorable
+memorably
+memoranda
+memorandum
+memorandums
+memorial
+memorials
+memories
+memorisation
+memorise
+memorised
+memorises
+memorising
+memory
+memphis
+men
+menace
+menaced
+menaces
+menacing
+menacingly
+menagerie
+menarche
+mend
+mendacious
+mendacity
+mended
+mendel
+mendelevium
+mender
+menders
+mendicant
+mending
+mends
+menfolk
+menhir
+menhirs
+menial
+meningitis
+meniscus
+menopausal
+menopause
+menorah
+menstrual
+menstruating
+menstruation
+menswear
+mental
+mentalistic
+mentalities
+mentality
+mentally
+menthol
+mention
+mentionable
+mentioned
+mentioning
+mentions
+mentor
+mentors
+menu
+menus
+meow
+meows
+mercantile
+mercenaries
+mercenary
+merchandise
+merchandising
+merchant
+merchantability
+merchantable
+merchantman
+merchantmen
+merchants
+mercies
+merciful
+mercifully
+merciless
+mercilessly
+mercurial
+mercuric
+mercury
+mercy
+mere
+merely
+merest
+meretricious
+merge
+merged
+merger
+mergers
+merges
+merging
+meridian
+meridians
+meridional
+meringue
+meringues
+merino
+merit
+merited
+meriting
+meritocracy
+meritocratic
+meritocrats
+meritorious
+merits
+mermaid
+mermaids
+merman
+mermen
+meromorphic
+merrier
+merriest
+merrily
+merriment
+merry
+merrygoround
+merrygorounds
+merrymaking
+mescaline
+mesh
+meshed
+meshes
+meshing
+mesmeric
+mesmerised
+mesmerising
+mesolithic
+meson
+mesons
+mesosphere
+mesozoic
+mess
+message
+messages
+messaging
+messed
+messenger
+messengers
+messes
+messiah
+messier
+messiest
+messily
+messiness
+messing
+messy
+mestizo
+met
+metabolic
+metabolically
+metabolise
+metabolised
+metabolises
+metabolism
+metabolisms
+metal
+metalanguage
+metalinguistic
+metalled
+metallic
+metallised
+metallurgical
+metallurgist
+metallurgy
+metals
+metalwork
+metalworking
+metamorphic
+metamorphism
+metamorphose
+metamorphosed
+metamorphoses
+metamorphosis
+metaphor
+metaphoric
+metaphorical
+metaphorically
+metaphors
+metaphysical
+metaphysically
+metaphysics
+metastability
+metastable
+metastases
+metastasis
+metastatic
+metatarsal
+meted
+metempsychosis
+meteor
+meteoric
+meteorite
+meteorites
+meteoritic
+meteorological
+meteorologist
+meteorologists
+meteorology
+meteors
+meter
+metered
+metering
+meters
+methadone
+methane
+methanol
+methionine
+method
+methodical
+methodically
+methodological
+methodologically
+methodologies
+methodology
+methods
+methyl
+methylated
+methylene
+meticulous
+meticulously
+metier
+metonymic
+metonymy
+metre
+metres
+metric
+metrical
+metrically
+metrication
+metrics
+metro
+metronome
+metronomes
+metronomic
+metropolis
+metropolises
+metropolitan
+mettle
+mew
+mewing
+mews
+mexican
+mexicans
+mexico
+mezzanine
+mezzosoprano
+miami
+miasma
+mica
+mice
+micelles
+michigan
+micro
+microanalyses
+microbe
+microbes
+microbial
+microbic
+microbiological
+microbiologist
+microbiologists
+microbiology
+microchip
+microchips
+microcode
+microcomputer
+microcomputers
+microcosm
+microcosmic
+microdensitometer
+microdot
+microelectronic
+microelectronics
+microfarad
+microfiche
+microfilm
+microfilming
+microgrammes
+micrograms
+micrograph
+micrographs
+microgravity
+microhydrodynamics
+microlight
+micrometer
+micrometers
+micrometres
+micron
+microns
+microorganism
+microorganisms
+microphone
+microphones
+microprocessor
+microprocessors
+microprogram
+microscope
+microscopes
+microscopic
+microscopically
+microscopist
+microscopy
+microsecond
+microseconds
+microsurgery
+microwave
+microwaveable
+microwaved
+microwaves
+micturition
+mid
+midafternoon
+midair
+midas
+midday
+middays
+midden
+middle
+middleage
+middleaged
+middleclass
+middleman
+middlemen
+middleoftheroad
+middles
+middlesized
+middleweight
+middling
+midevening
+midfield
+midfielder
+midfielders
+midflight
+midge
+midges
+midget
+midgets
+midi
+midland
+midlands
+midlife
+midline
+midmorning
+midmost
+midnight
+midnights
+midribs
+midriff
+midship
+midshipman
+midships
+midst
+midstream
+midsummer
+midway
+midweek
+midwicket
+midwife
+midwifery
+midwinter
+midwives
+mien
+might
+mightier
+mightiest
+mightily
+mights
+mighty
+migraine
+migraines
+migrant
+migrants
+migrate
+migrated
+migrates
+migrating
+migration
+migrations
+migratory
+mike
+mikes
+milady
+milan
+mild
+milder
+mildest
+mildew
+mildewed
+mildews
+mildewy
+mildly
+mildmannered
+mildness
+mile
+mileage
+mileages
+milepost
+mileposts
+miler
+miles
+milestone
+milestones
+milieu
+milieus
+milieux
+militancy
+militant
+militantly
+militants
+militarily
+militarisation
+militarised
+militarism
+militarist
+militaristic
+military
+militate
+militated
+militates
+militating
+militia
+militiaman
+militiamen
+militias
+milk
+milked
+milker
+milkers
+milkier
+milkiest
+milking
+milkmaid
+milkmaids
+milkman
+milkmen
+milks
+milkshake
+milkshakes
+milky
+milkyway
+mill
+milled
+millenarian
+millenarianism
+millennia
+millennial
+millennium
+miller
+millers
+millet
+millibars
+milligram
+milligrams
+millilitres
+millimetre
+millimetres
+milliner
+milliners
+millinery
+milling
+million
+millionaire
+millionaires
+millions
+millionth
+millionths
+millipede
+millipedes
+millisecond
+milliseconds
+millpond
+mills
+millstone
+millstones
+milord
+milt
+mime
+mimed
+mimeographed
+mimes
+mimetic
+mimic
+mimicked
+mimicker
+mimicking
+mimicry
+mimics
+miming
+mimosa
+minaret
+minarets
+mince
+minced
+mincemeat
+mincer
+mincers
+minces
+mincing
+mind
+mindboggling
+mindbogglingly
+minded
+mindedness
+minder
+minders
+mindful
+minding
+mindless
+mindlessly
+mindlessness
+mindreader
+minds
+mindset
+mine
+mined
+minedetector
+minefield
+minefields
+miner
+mineral
+mineralisation
+mineralised
+mineralogical
+mineralogy
+minerals
+miners
+mines
+mineshaft
+minestrone
+minesweeper
+minesweepers
+mineworkers
+mingle
+mingled
+mingles
+mingling
+mini
+miniature
+miniatures
+miniaturisation
+miniaturise
+miniaturised
+miniaturises
+miniaturising
+miniaturist
+minibar
+minibus
+minibuses
+minicab
+minicomputer
+minicomputers
+minify
+minim
+minima
+minimal
+minimalism
+minimalist
+minimalistic
+minimalists
+minimality
+minimally
+minimisation
+minimise
+minimised
+minimiser
+minimises
+minimising
+minimum
+mining
+minings
+minion
+minions
+miniskirt
+minister
+ministered
+ministerial
+ministerially
+ministering
+ministers
+ministration
+ministrations
+ministries
+ministry
+mink
+minke
+minks
+minnow
+minnows
+minor
+minorities
+minority
+minors
+minster
+minstrel
+minstrels
+mint
+minted
+mintier
+mintiest
+minting
+mints
+minty
+minuet
+minuets
+minus
+minuscule
+minuses
+minute
+minuted
+minutely
+minuteness
+minutes
+minutest
+minutiae
+minx
+minxes
+miosis
+miracle
+miracles
+miraculous
+miraculously
+miraculousness
+mirage
+mirages
+mire
+mired
+mires
+mirror
+mirrored
+mirroring
+mirrors
+mirth
+mirthful
+mirthless
+mirthlessly
+misadventure
+misaligned
+misalignment
+misanalysed
+misanthrope
+misanthropes
+misanthropic
+misanthropists
+misanthropy
+misapplication
+misapply
+misapprehension
+misapprehensions
+misappropriated
+misappropriation
+misbegotten
+misbehave
+misbehaved
+misbehaves
+misbehaving
+misbehaviour
+miscalculate
+miscalculated
+miscalculation
+miscalculations
+miscarriage
+miscarriages
+miscarried
+miscarry
+miscarrying
+miscast
+miscasting
+miscegenation
+miscellanea
+miscellaneous
+miscellanies
+miscellany
+mischance
+mischief
+mischiefmakers
+mischiefmaking
+mischievous
+mischievously
+miscible
+misclassified
+miscomprehended
+misconceived
+misconception
+misconceptions
+misconduct
+misconfiguration
+misconstrued
+miscopying
+miscount
+miscounted
+miscounting
+miscreant
+miscreants
+miscue
+miscues
+misdate
+misdeal
+misdealing
+misdeed
+misdeeds
+misdemeanour
+misdemeanours
+misdiagnosis
+misdirect
+misdirected
+misdirecting
+misdirection
+misdirections
+misdoing
+miser
+miserable
+miserably
+miseries
+miserliness
+miserly
+misers
+misery
+misfield
+misfiled
+misfire
+misfired
+misfires
+misfit
+misfits
+misfortune
+misfortunes
+misgive
+misgiving
+misgivings
+misgovernment
+misguide
+misguided
+misguidedly
+mishandle
+mishandled
+mishandles
+mishandling
+mishap
+mishaps
+mishear
+misheard
+mishearing
+mishears
+mishitting
+misidentification
+misinform
+misinformation
+misinformed
+misinterpret
+misinterpretation
+misinterpretations
+misinterpreted
+misinterpreting
+misinterprets
+misjudge
+misjudged
+misjudgement
+misjudgements
+misjudging
+misjudgment
+mislabelled
+mislaid
+mislay
+mislead
+misleading
+misleadingly
+misleads
+misled
+mismanage
+mismanaged
+mismanagement
+mismatch
+mismatched
+mismatches
+mismatching
+misname
+misnamed
+misnomer
+misnomers
+misogynist
+misogynistic
+misogynists
+misogyny
+misplace
+misplaced
+misplacement
+misplaces
+misplacing
+mispositioned
+misprint
+misprinted
+misprinting
+misprints
+mispronounced
+mispronouncing
+mispronunciation
+mispronunciations
+misquotation
+misquote
+misquoted
+misquotes
+misquoting
+misread
+misreading
+misremember
+misremembered
+misremembering
+misrepresent
+misrepresentation
+misrepresentations
+misrepresented
+misrepresenting
+misrepresents
+misrule
+miss
+missal
+missals
+missed
+misses
+misshapen
+missile
+missiles
+missing
+mission
+missionaries
+missionary
+missions
+missive
+missives
+missouri
+misspell
+misspelled
+misspelling
+misspellings
+misspells
+misspelt
+misspend
+misspent
+misstatement
+missteps
+missus
+missuses
+missy
+mist
+mistake
+mistaken
+mistakenly
+mistakes
+mistaking
+misted
+mister
+misters
+mistier
+mistiest
+mistily
+mistime
+mistimed
+mistiness
+misting
+mistletoe
+mistook
+mistranslated
+mistranslates
+mistranslating
+mistranslation
+mistranslations
+mistreat
+mistreated
+mistreating
+mistreatment
+mistress
+mistresses
+mistrust
+mistrusted
+mistrustful
+mistrustfully
+mistrusting
+mistrusts
+mists
+misty
+mistype
+mistyped
+mistypes
+mistyping
+mistypings
+misunderstand
+misunderstanding
+misunderstandings
+misunderstands
+misunderstood
+misuse
+misused
+misuser
+misuses
+misusing
+mite
+mites
+mitigate
+mitigated
+mitigates
+mitigating
+mitigation
+mitigatory
+mitochondria
+mitochondrial
+mitosis
+mitre
+mitred
+mitres
+mitt
+mitten
+mittens
+mitts
+mix
+mixable
+mixed
+mixer
+mixers
+mixes
+mixing
+mixture
+mixtures
+mixup
+mixups
+mnemonic
+mnemonically
+mnemonics
+moan
+moaned
+moaner
+moaners
+moaning
+moans
+moas
+moat
+moated
+moats
+mob
+mobbed
+mobbing
+mobbish
+mobile
+mobiles
+mobilisable
+mobilisation
+mobilise
+mobilised
+mobilises
+mobilising
+mobilities
+mobility
+mobs
+mobster
+mobsters
+moccasin
+moccasins
+mock
+mocked
+mocker
+mockeries
+mockers
+mockery
+mocking
+mockingbird
+mockingly
+mocks
+mockup
+mockups
+mod
+modal
+modalities
+modality
+mode
+model
+modelled
+modeller
+modellers
+modelling
+models
+modem
+modems
+moderate
+moderated
+moderately
+moderates
+moderating
+moderation
+moderations
+moderator
+moderators
+modern
+moderner
+modernisation
+modernisations
+modernise
+modernised
+modernising
+modernism
+modernist
+modernistic
+modernists
+modernity
+modes
+modest
+modestly
+modesty
+modicum
+modifiable
+modification
+modifications
+modified
+modifier
+modifiers
+modifies
+modify
+modifying
+modish
+modishly
+modular
+modularisation
+modularise
+modularised
+modularising
+modularity
+modulate
+modulated
+modulates
+modulating
+modulation
+modulations
+modulator
+module
+modules
+moduli
+modulus
+mogul
+moguls
+mohair
+mohairs
+moiety
+moist
+moisten
+moistened
+moistening
+moistens
+moister
+moistness
+moisture
+moisturise
+moisturiser
+moisturisers
+moisturising
+molar
+molarities
+molarity
+molars
+molasses
+mold
+molds
+moldy
+mole
+molecular
+molecule
+molecules
+molehill
+molehills
+moles
+moleskin
+molest
+molestation
+molestations
+molested
+molester
+molesters
+molesting
+molests
+mollified
+mollifies
+mollify
+mollusc
+molluscan
+molluscs
+molten
+molts
+molybdenum
+mom
+moment
+momentarily
+momentary
+momentous
+moments
+momentum
+moms
+monaco
+monadic
+monalisa
+monarch
+monarchic
+monarchical
+monarchies
+monarchist
+monarchists
+monarchs
+monarchy
+monasteries
+monastery
+monastic
+monasticism
+monaural
+monday
+mondays
+monetarism
+monetarist
+monetarists
+monetary
+money
+moneyed
+moneylender
+moneylenders
+moneyless
+moneys
+monger
+mongers
+mongol
+mongols
+mongoose
+mongrel
+mongrels
+monies
+monition
+monitor
+monitored
+monitoring
+monitors
+monk
+monkey
+monkeyed
+monkeying
+monkeys
+monkfish
+monkish
+monks
+mono
+monochromatic
+monochrome
+monocle
+monocled
+monoclonal
+monocular
+monoculture
+monocytes
+monogamous
+monogamously
+monogamy
+monogram
+monogrammed
+monograph
+monographic
+monographs
+monolayer
+monolayers
+monolingual
+monolith
+monolithic
+monoliths
+monologue
+monologues
+monomania
+monomer
+monomeric
+monomers
+monomial
+monomials
+monomolecular
+monophonic
+monophthongs
+monoplane
+monopole
+monopoles
+monopolies
+monopolisation
+monopolise
+monopolised
+monopolises
+monopolising
+monopolist
+monopolistic
+monopolists
+monopoly
+monorail
+monostable
+monosyllabic
+monosyllable
+monosyllables
+monotheism
+monotheist
+monotheistic
+monotheists
+monotone
+monotonic
+monotonically
+monotonicity
+monotonous
+monotonously
+monotony
+monoxide
+monroe
+monsieur
+monsoon
+monsoons
+monster
+monsters
+monstrosities
+monstrosity
+monstrous
+monstrously
+montage
+montages
+month
+monthlies
+monthly
+months
+montreal
+monument
+monumental
+monumentally
+monuments
+moo
+mood
+moodiest
+moodily
+moodiness
+moods
+moody
+mooed
+mooing
+moon
+moonbeam
+moonbeams
+mooning
+moonless
+moonlight
+moonlighting
+moonlit
+moonrise
+moons
+moonshine
+moonshot
+moonshots
+moonstones
+moor
+moored
+moorhen
+moorhens
+mooring
+moorings
+moorland
+moorlands
+moors
+moos
+moose
+moot
+mooted
+mop
+mope
+moped
+mopeds
+mopes
+moping
+mopped
+mopping
+mops
+moraine
+moraines
+moral
+morale
+morales
+moralise
+moralised
+moralising
+moralism
+moralist
+moralistic
+moralists
+moralities
+morality
+morally
+morals
+morass
+morasses
+moratorium
+moray
+morays
+morbid
+morbidity
+morbidly
+mordant
+more
+moreover
+mores
+morgue
+moribund
+moribundity
+moribundly
+mormon
+mormons
+morn
+morning
+mornings
+morns
+moroccan
+morocco
+moron
+moronic
+morons
+morose
+morosely
+moroseness
+morph
+morpheme
+morphemes
+morpheus
+morphia
+morphine
+morphism
+morphisms
+morphogenesis
+morphogenetic
+morphological
+morphologically
+morphologies
+morphology
+morrow
+morse
+morsel
+morsels
+mort
+mortal
+mortalities
+mortality
+mortally
+mortals
+mortar
+mortars
+mortgage
+mortgageable
+mortgaged
+mortgagee
+mortgagees
+mortgages
+mortgaging
+mortgagor
+mortice
+mortices
+mortification
+mortified
+mortify
+mortifying
+mortise
+mortises
+mortuary
+mosaic
+mosaics
+moscow
+moses
+mosque
+mosques
+mosquito
+moss
+mosses
+mossier
+mossiest
+mossy
+most
+mostly
+motel
+motels
+motes
+motet
+motets
+moth
+mothball
+mothballed
+mothballs
+motheaten
+mother
+motherboard
+motherboards
+mothered
+motherhood
+mothering
+motherinlaw
+motherland
+motherless
+motherly
+motherofpearl
+mothers
+mothersinlaw
+motherstobe
+moths
+motif
+motifs
+motile
+motility
+motion
+motional
+motioned
+motioning
+motionless
+motionlessly
+motions
+motivate
+motivated
+motivates
+motivating
+motivation
+motivational
+motivations
+motivator
+motivators
+motive
+motiveless
+motives
+motley
+motlier
+motliest
+motocross
+motor
+motorbike
+motorbikes
+motorcade
+motorcar
+motorcars
+motorcycle
+motorcycles
+motorcycling
+motorcyclist
+motorcyclists
+motored
+motoring
+motorised
+motorist
+motorists
+motors
+motorway
+motorways
+mottled
+motto
+mould
+moulded
+moulder
+mouldering
+moulders
+mouldier
+mouldiest
+moulding
+mouldings
+moulds
+mouldy
+moult
+moulted
+moulting
+moults
+mound
+mounded
+mounds
+mount
+mountable
+mountain
+mountaineer
+mountaineering
+mountaineers
+mountainous
+mountains
+mountainside
+mountainsides
+mounted
+mountie
+mounties
+mounting
+mountings
+mounts
+mourn
+mourned
+mourner
+mourners
+mournful
+mournfully
+mournfulness
+mourning
+mourns
+mouse
+mouselike
+mousetrap
+mousetraps
+mousey
+moussaka
+mousse
+mousses
+moustache
+moustached
+moustaches
+mousy
+mouth
+mouthed
+mouthful
+mouthfuls
+mouthing
+mouthorgan
+mouthparts
+mouthpiece
+mouthpieces
+mouths
+mouthtomouth
+mouthwash
+mouthwatering
+movable
+move
+moveable
+moved
+movement
+movements
+mover
+movers
+moves
+movie
+movies
+moving
+movingly
+mow
+mowed
+mower
+mowers
+mowing
+mown
+mows
+mozart
+mr
+mrs
+ms
+mu
+much
+muchness
+muck
+mucked
+mucking
+mucks
+mucky
+mucosa
+mucous
+mucus
+mud
+muddied
+muddier
+muddies
+muddiest
+muddle
+muddled
+muddles
+muddling
+muddy
+muddying
+mudflats
+mudflow
+mudflows
+mudguard
+mudguards
+mudlarks
+muds
+muesli
+muff
+muffed
+muffin
+muffins
+muffle
+muffled
+muffler
+mufflers
+muffling
+muffs
+mufti
+mug
+mugged
+mugger
+muggers
+muggier
+mugging
+muggings
+muggy
+mugs
+mugshots
+mulberries
+mulberry
+mulch
+mulches
+mulching
+mule
+mules
+mull
+mullah
+mullahs
+mulled
+mullet
+mulling
+mullioned
+mullions
+multichannel
+multicolour
+multicoloured
+multicultural
+multiculturalism
+multidimensional
+multifarious
+multiform
+multifunction
+multifunctional
+multilateral
+multilateralism
+multilayer
+multilevel
+multilingual
+multimedia
+multimeter
+multimillion
+multinational
+multinationals
+multiphase
+multiple
+multiples
+multiplex
+multiplexed
+multiplexer
+multiplexers
+multiplexes
+multiplexing
+multiplexor
+multiplexors
+multiplication
+multiplications
+multiplicative
+multiplicities
+multiplicity
+multiplied
+multiplier
+multipliers
+multiplies
+multiply
+multiplying
+multiprocessing
+multiprocessor
+multiprocessors
+multiprogramming
+multiracial
+multitude
+multitudes
+mum
+mumble
+mumbled
+mumbler
+mumbles
+mumbling
+mumblings
+mumbojumbo
+mummies
+mummification
+mummified
+mummify
+mummy
+mumps
+mums
+munch
+munched
+muncher
+munchers
+munches
+munching
+mundane
+mundanely
+munich
+municipal
+municipalities
+municipality
+munificence
+munificent
+munificently
+munition
+munitions
+muons
+mural
+murals
+murder
+murdered
+murderer
+murderers
+murderess
+murdering
+murderous
+murderously
+murders
+murk
+murkier
+murkiest
+murkiness
+murky
+murmur
+murmured
+murmurer
+murmuring
+murmurings
+murmurs
+murray
+muscadel
+muscat
+muscle
+muscled
+muscles
+muscling
+muscular
+muscularity
+musculature
+musculoskeletal
+muse
+mused
+muses
+museum
+museums
+mush
+mushes
+mushroom
+mushroomed
+mushrooming
+mushrooms
+mushy
+music
+musical
+musicality
+musically
+musicals
+musician
+musicians
+musicianship
+musicologist
+musicologists
+musicology
+musing
+musingly
+musings
+musk
+musket
+musketeer
+musketeers
+muskets
+muskier
+muskiest
+musks
+musky
+muslim
+muslims
+muslin
+mussel
+mussels
+must
+mustache
+mustang
+mustangs
+mustard
+muster
+mustered
+mustering
+musters
+mustier
+mustiest
+mustily
+mustiness
+musts
+musty
+mutability
+mutable
+mutagens
+mutant
+mutants
+mutate
+mutated
+mutates
+mutating
+mutation
+mutational
+mutations
+mute
+muted
+mutely
+muteness
+mutes
+mutilate
+mutilated
+mutilates
+mutilating
+mutilation
+mutilations
+mutineer
+mutineers
+muting
+mutinied
+mutinies
+mutinous
+mutinously
+mutiny
+mutt
+mutter
+muttered
+mutterer
+mutterers
+muttering
+mutterings
+mutters
+mutton
+muttons
+mutts
+mutual
+mutuality
+mutually
+muzak
+muzzle
+muzzled
+muzzles
+muzzling
+my
+myalgic
+myelin
+myna
+mynahs
+myocardial
+myope
+myopia
+myopic
+myopically
+myriad
+myriads
+myrrh
+myself
+mysteries
+mysterious
+mysteriously
+mystery
+mystic
+mystical
+mystically
+mysticism
+mystics
+mystification
+mystified
+mystifies
+mystify
+mystifying
+mystique
+myth
+mythic
+mythical
+mythological
+mythologies
+mythologised
+mythology
+myths
+myxomatosis
+nab
+nabbed
+nabs
+nadir
+nag
+nagasaki
+nagged
+nagger
+nagging
+nags
+naiad
+naiads
+nail
+nailbiting
+nailed
+nailing
+nails
+nairobi
+naive
+naively
+naivete
+naivety
+naked
+nakedly
+nakedness
+name
+nameable
+namecalling
+named
+namedropping
+nameless
+namely
+nameplate
+nameplates
+names
+namesake
+namesakes
+namibia
+namibian
+naming
+namings
+nannies
+nanny
+nanometre
+nanometres
+nanosecond
+nanoseconds
+nanotechnology
+naomi
+nap
+napalm
+nape
+naphtha
+napkin
+napkins
+naples
+napoleon
+napped
+nappies
+napping
+nappy
+naps
+narcissism
+narcissistic
+narcoleptic
+narcosis
+narcotic
+narcotics
+narrate
+narrated
+narrates
+narrating
+narration
+narrations
+narrative
+narratives
+narratology
+narrator
+narrators
+narrow
+narrowed
+narrower
+narrowest
+narrowing
+narrowly
+narrowminded
+narrowmindedness
+narrowness
+narrows
+narwhal
+nasal
+nasalised
+nasally
+nascent
+nastier
+nastiest
+nastily
+nastiness
+nasturtium
+nasturtiums
+nasty
+natal
+nation
+national
+nationalisation
+nationalisations
+nationalise
+nationalised
+nationalising
+nationalism
+nationalist
+nationalistic
+nationalists
+nationalities
+nationality
+nationally
+nationals
+nationhood
+nations
+nationwide
+native
+natives
+nativity
+nato
+nattering
+natural
+naturalisation
+naturalise
+naturalised
+naturalism
+naturalist
+naturalistic
+naturalists
+naturally
+naturalness
+nature
+natures
+naturist
+naturists
+naught
+naughtiest
+naughtily
+naughtiness
+naughts
+naughty
+nausea
+nauseate
+nauseated
+nauseates
+nauseating
+nauseatingly
+nauseous
+nauseousness
+nautical
+nautili
+nautilus
+naval
+nave
+navel
+navels
+navies
+navigable
+navigate
+navigated
+navigating
+navigation
+navigational
+navigator
+navigators
+navvies
+navvy
+navy
+nay
+nazi
+naziism
+nazis
+nazism
+ndebele
+ne
+near
+nearby
+neared
+nearer
+nearest
+nearing
+nearly
+nearness
+nears
+nearside
+nearsighted
+neat
+neaten
+neatening
+neatens
+neater
+neatest
+neatly
+neatness
+nebula
+nebulae
+nebular
+nebulas
+nebulosity
+nebulous
+nebulously
+nebulousness
+necessaries
+necessarily
+necessary
+necessitate
+necessitated
+necessitates
+necessitating
+necessities
+necessity
+neck
+neckband
+necked
+necking
+necklace
+necklaces
+neckline
+necklines
+necks
+necktie
+necromancer
+necromancers
+necromancy
+necromantic
+necrophilia
+necrophiliac
+necrophiliacs
+necropolis
+necropsy
+necrosis
+necrotic
+nectar
+nectarines
+nectars
+nee
+need
+needed
+needful
+needier
+neediest
+neediness
+needing
+needle
+needlecraft
+needled
+needles
+needless
+needlessly
+needlework
+needling
+needs
+needy
+negate
+negated
+negates
+negating
+negation
+negations
+negative
+negatively
+negativeness
+negatives
+negativism
+negativity
+negev
+neglect
+neglected
+neglectful
+neglecting
+neglects
+negligee
+negligees
+negligence
+negligent
+negligently
+negligibility
+negligible
+negligibly
+negotiable
+negotiate
+negotiated
+negotiates
+negotiating
+negotiation
+negotiations
+negotiator
+negotiators
+negroid
+neigh
+neighbour
+neighbourhood
+neighbourhoods
+neighbouring
+neighbourliness
+neighbourly
+neighbours
+neighed
+neighing
+neither
+nematode
+nematodes
+nemesis
+neolithic
+neologism
+neologisms
+neon
+neonatal
+neonate
+neonates
+neophyte
+neophytes
+neoplasm
+neoplasms
+neoprene
+nepal
+nephew
+nephews
+nephritis
+nepotism
+neptune
+neptunium
+nerd
+nerds
+nerve
+nerveless
+nervelessness
+nerves
+nervous
+nervously
+nervousness
+nervy
+nest
+nestable
+nested
+nestegg
+nesting
+nestle
+nestled
+nestles
+nestling
+nests
+net
+netball
+nether
+nethermost
+nets
+nett
+netted
+netting
+nettle
+nettled
+nettles
+netts
+network
+networked
+networking
+networks
+neural
+neuralgia
+neurobiology
+neurological
+neurologically
+neurologist
+neurologists
+neurology
+neuron
+neuronal
+neurone
+neurones
+neurons
+neurophysiology
+neuroscience
+neuroscientists
+neuroses
+neurosis
+neurosurgeon
+neurosurgeons
+neurosurgery
+neurotic
+neurotically
+neurotics
+neurotransmitter
+neurotransmitters
+neuter
+neutered
+neutering
+neuters
+neutral
+neutralisation
+neutralise
+neutralised
+neutraliser
+neutralises
+neutralising
+neutralism
+neutralist
+neutrality
+neutrally
+neutrals
+neutrino
+neutron
+neutrons
+never
+neverending
+nevertheless
+new
+newborn
+newcomer
+newcomers
+newer
+newest
+newfangled
+newfound
+newish
+newlook
+newly
+newlywed
+newlyweds
+newness
+news
+newsagent
+newsagents
+newsboy
+newscast
+newscasters
+newsflash
+newsflashes
+newsletter
+newsletters
+newsman
+newsmen
+newspaper
+newspapermen
+newspapers
+newsprint
+newsreader
+newsreaders
+newsreel
+newsreels
+newsroom
+newsstand
+newsstands
+newsworthy
+newsy
+newt
+newton
+newts
+next
+ngoing
+nguni
+ngunis
+niagara
+nib
+nibble
+nibbled
+nibbler
+nibblers
+nibbles
+nibbling
+nibs
+nice
+nicely
+niceness
+nicer
+nicest
+niceties
+nicety
+niche
+niches
+nick
+nicked
+nickel
+nicking
+nickname
+nicknamed
+nicknames
+nicks
+nicotine
+niece
+nieces
+niftily
+nifty
+niger
+nigeria
+niggardly
+niggle
+niggled
+niggles
+niggling
+nigh
+night
+nightcap
+nightcaps
+nightclothes
+nightclub
+nightclubs
+nightdress
+nightdresses
+nightfall
+nightgown
+nightie
+nighties
+nightingale
+nightingales
+nightlife
+nightly
+nightmare
+nightmares
+nightmarish
+nights
+nightwatchman
+nightwear
+nihilism
+nihilist
+nihilistic
+nil
+nile
+nils
+nimble
+nimbleness
+nimbly
+nimbus
+nincompoop
+nine
+ninefold
+nines
+nineteen
+nineteenth
+nineties
+ninetieth
+ninety
+nineveh
+ninny
+ninth
+ninths
+nip
+nipped
+nipper
+nipping
+nipple
+nipples
+nippon
+nips
+nirvana
+nit
+nitpicking
+nitrate
+nitrates
+nitric
+nitrogen
+nitrogenous
+nitroglycerine
+nitrous
+nits
+nitwit
+nixon
+no
+noah
+nobility
+noble
+nobleman
+noblemen
+nobleness
+nobler
+nobles
+noblest
+nobly
+nobodies
+nobody
+noctuids
+nocturnal
+nocturnally
+nocturne
+nocturnes
+nod
+nodal
+nodded
+nodding
+noddle
+noddy
+node
+nodes
+nods
+nodular
+nodule
+noduled
+nodules
+noel
+noggin
+nogging
+nohow
+noise
+noiseless
+noiselessly
+noises
+noisier
+noisiest
+noisily
+noisiness
+noisome
+noisy
+nomad
+nomadic
+nomads
+nomenclature
+nomenclatures
+nominal
+nominally
+nominate
+nominated
+nominates
+nominating
+nomination
+nominations
+nominative
+nominator
+nominee
+nominees
+non
+nonbeliever
+nonbelievers
+nonchalance
+nonchalant
+nonchalantly
+nonconformist
+nonconformists
+nonconformity
+nondrinkers
+none
+nonentities
+nonentity
+nonessential
+nonessentials
+nonetheless
+nonevent
+nonexistence
+nonexistent
+nonfunctional
+noninterference
+nonintervention
+nonparticipation
+nonpayment
+nonplussed
+nonsense
+nonsenses
+nonsensical
+nonsmoker
+nonsmokers
+nonsmoking
+nonviolence
+nonviolent
+noodle
+noodles
+nook
+nooks
+noon
+noonday
+noons
+noontide
+noose
+noosed
+nooses
+nor
+noradrenalin
+noradrenaline
+nordic
+norm
+normal
+normalcy
+normalisable
+normalisation
+normalisations
+normalise
+normalised
+normaliser
+normalisers
+normalises
+normalising
+normality
+normally
+normals
+norman
+normandy
+normans
+normative
+normed
+norms
+norsemen
+north
+northbound
+northerly
+northern
+northerner
+northerners
+northernmost
+northmen
+northward
+northwards
+norway
+nose
+nosed
+nosedive
+noses
+nosey
+nosier
+nosiest
+nosily
+nosiness
+nosing
+nostalgia
+nostalgic
+nostalgically
+nostril
+nostrils
+nostrum
+nosy
+not
+notable
+notables
+notably
+notaries
+notary
+notation
+notational
+notationally
+notations
+notch
+notched
+notches
+notching
+note
+notebook
+notebooks
+noted
+notepad
+notepads
+notepaper
+notes
+noteworthy
+nothing
+nothingness
+nothings
+notice
+noticeable
+noticeably
+noticeboard
+noticeboards
+noticed
+notices
+noticing
+notifiable
+notification
+notifications
+notified
+notifies
+notify
+notifying
+noting
+notion
+notional
+notionally
+notions
+notoriety
+notorious
+notoriously
+notwithstanding
+nougat
+nougats
+nought
+noughts
+noun
+nounal
+nouns
+nourish
+nourished
+nourishes
+nourishing
+nourishment
+novel
+novelette
+novelist
+novelistic
+novelists
+novelle
+novels
+novelties
+novelty
+november
+novice
+novices
+now
+nowadays
+nowhere
+noxious
+noxiously
+noxiousness
+nozzle
+nozzles
+nu
+nuance
+nuances
+nuclear
+nuclei
+nucleic
+nucleus
+nude
+nudeness
+nudes
+nudge
+nudged
+nudges
+nudging
+nudism
+nudist
+nudists
+nudities
+nudity
+nugget
+nuggets
+nuisance
+nuisances
+nuke
+null
+nullification
+nullified
+nullifies
+nullify
+nullifying
+nullity
+nulls
+numb
+numbed
+number
+numbered
+numbering
+numberings
+numberless
+numberplate
+numbers
+numbing
+numbingly
+numbly
+numbness
+numbs
+numbskull
+numeracy
+numeral
+numerals
+numerate
+numerator
+numerators
+numeric
+numerical
+numerically
+numerological
+numerologist
+numerologists
+numerology
+numerous
+numismatic
+numismatics
+numskull
+nun
+nunneries
+nunnery
+nuns
+nuptial
+nuptials
+nurse
+nursed
+nursemaid
+nursemaids
+nurseries
+nursery
+nurseryman
+nurserymen
+nurses
+nursing
+nurture
+nurtured
+nurtures
+nurturing
+nut
+nutation
+nutcracker
+nutcrackers
+nutmeg
+nutmegs
+nutrient
+nutrients
+nutriment
+nutrition
+nutritional
+nutritionally
+nutritionist
+nutritionists
+nutritious
+nutritive
+nuts
+nutshell
+nuttier
+nutty
+nuzzle
+nuzzled
+nuzzles
+nuzzling
+nyala
+nylon
+nylons
+nymph
+nympholepsy
+nymphomania
+nymphomaniac
+nymphs
+oaf
+oafish
+oafs
+oak
+oaken
+oaks
+oakum
+oar
+oars
+oarsman
+oarsmen
+oases
+oasis
+oast
+oat
+oatcakes
+oath
+oaths
+oatmeal
+oats
+obduracy
+obdurate
+obdurately
+obedience
+obedient
+obediently
+obeisance
+obelisk
+obelisks
+obese
+obesity
+obey
+obeyed
+obeying
+obeys
+obfuscate
+obfuscated
+obfuscates
+obfuscation
+obfuscatory
+obituaries
+obituary
+object
+objected
+objectified
+objecting
+objection
+objectionable
+objectionableness
+objectionably
+objections
+objective
+objectively
+objectives
+objectivity
+objectless
+objector
+objectors
+objects
+oblate
+obligate
+obligated
+obligation
+obligations
+obligatorily
+obligatory
+oblige
+obliged
+obliges
+obliging
+obligingly
+oblique
+obliqued
+obliquely
+obliqueness
+obliquity
+obliterate
+obliterated
+obliterates
+obliterating
+obliteration
+oblivion
+oblivious
+obliviousness
+oblong
+oblongs
+obloquy
+obnoxious
+obnoxiously
+obnoxiousness
+oboe
+oboes
+oboist
+obscene
+obscenely
+obscenities
+obscenity
+obscurantism
+obscurantist
+obscuration
+obscure
+obscured
+obscurely
+obscureness
+obscurer
+obscures
+obscurest
+obscuring
+obscurities
+obscurity
+obsequious
+obsequiously
+obsequiousness
+observability
+observable
+observables
+observably
+observance
+observances
+observant
+observation
+observational
+observationally
+observations
+observatories
+observatory
+observe
+observed
+observer
+observers
+observes
+observing
+obsess
+obsessed
+obsesses
+obsessing
+obsession
+obsessional
+obsessions
+obsessive
+obsessively
+obsessiveness
+obsidian
+obsolescence
+obsolescent
+obsolete
+obstacle
+obstacles
+obstetric
+obstetrician
+obstetricians
+obstetrics
+obstinacy
+obstinate
+obstinately
+obstreperous
+obstruct
+obstructed
+obstructing
+obstruction
+obstructionism
+obstructions
+obstructive
+obstructively
+obstructiveness
+obstructs
+obtain
+obtainable
+obtained
+obtaining
+obtains
+obtrude
+obtruded
+obtruding
+obtrusive
+obtrusiveness
+obtuse
+obtusely
+obtuseness
+obverse
+obviate
+obviated
+obviates
+obviating
+obvious
+obviously
+obviousness
+occasion
+occasional
+occasionally
+occasioned
+occasioning
+occasions
+occident
+occidental
+occipital
+occluded
+occludes
+occlusion
+occult
+occultism
+occults
+occupancies
+occupancy
+occupant
+occupants
+occupation
+occupational
+occupationally
+occupations
+occupied
+occupier
+occupiers
+occupies
+occupy
+occupying
+occur
+occurred
+occurrence
+occurrences
+occurring
+occurs
+ocean
+oceanic
+oceanographer
+oceanographers
+oceanographic
+oceanography
+oceans
+ocelot
+ocelots
+ochre
+ochres
+octagon
+octagonal
+octagons
+octahedral
+octahedron
+octal
+octane
+octanes
+octant
+octave
+octaves
+octavo
+octet
+octets
+october
+octogenarian
+octogenarians
+octopus
+octopuses
+ocular
+oculist
+odd
+odder
+oddest
+oddities
+oddity
+oddjob
+oddly
+oddment
+oddments
+oddness
+odds
+ode
+odes
+odin
+odious
+odiously
+odiousness
+odium
+odiums
+odometer
+odoriferous
+odorous
+odour
+odourless
+odours
+odyssey
+oedema
+oedipus
+oesophagus
+oestrogen
+oestrogens
+oestrus
+oeuvre
+oeuvres
+of
+off
+offal
+offbeat
+offcut
+offcuts
+offence
+offences
+offend
+offended
+offender
+offenders
+offending
+offends
+offensive
+offensively
+offensiveness
+offensives
+offer
+offered
+offering
+offerings
+offers
+offertory
+offhand
+office
+officer
+officers
+officership
+officerships
+offices
+official
+officialdom
+officially
+officialness
+officials
+officiate
+officiated
+officiating
+officious
+officiously
+officiousness
+offprint
+offset
+offshoot
+offshore
+oft
+often
+ogle
+ogled
+ogling
+ogre
+ogres
+ogrish
+oh
+ohio
+ohm
+ohmic
+ohms
+oil
+oilcloth
+oiled
+oiler
+oilers
+oilfield
+oilfields
+oilier
+oiliest
+oiliness
+oiling
+oilman
+oilmen
+oilrig
+oils
+oily
+oink
+oinked
+oinks
+ointment
+ointments
+ok
+okapi
+okapis
+okay
+okayed
+okays
+oklahoma
+old
+oldage
+olden
+older
+oldest
+oldfashioned
+oldie
+oldish
+oldmaids
+oldtimer
+oldtimers
+ole
+oleander
+oleanders
+olfactory
+olive
+oliveoil
+oliver
+olives
+olm
+olms
+olympia
+olympiad
+olympian
+olympic
+olympics
+olympus
+ombudsman
+ombudsmen
+omega
+omelette
+omelettes
+omen
+omens
+ominous
+ominously
+omission
+omissions
+omit
+omits
+omitted
+omitting
+omnibus
+omnibuses
+omnidirectional
+omnipotence
+omnipotent
+omnipresence
+omnipresent
+omniscience
+omniscient
+omnivore
+omnivores
+omnivorous
+on
+onager
+onagers
+once
+one
+oneness
+oner
+onerous
+ones
+oneself
+onesided
+onesidedly
+onesidedness
+ongoing
+onion
+onions
+onlooker
+onlookers
+onlooking
+only
+onlybegotten
+onset
+onshore
+onslaught
+onslaughts
+ontario
+onto
+ontogeny
+ontological
+ontologically
+ontology
+onus
+onuses
+onward
+onwards
+onyx
+onyxes
+oocytes
+oodles
+ooh
+oolitic
+oology
+oompah
+oops
+ooze
+oozed
+oozes
+oozing
+oozy
+opacity
+opal
+opalescent
+opals
+opaque
+open
+opened
+opener
+openers
+openhanded
+openhandedness
+openheart
+openhearted
+opening
+openings
+openly
+openminded
+openmindedness
+openness
+opens
+opera
+operable
+operand
+operands
+operas
+operate
+operated
+operates
+operatic
+operating
+operation
+operational
+operationally
+operations
+operative
+operatives
+operator
+operators
+operculum
+operetta
+operettas
+ophthalmic
+ophthalmics
+ophthalmologist
+ophthalmologists
+ophthalmology
+opiate
+opiates
+opine
+opined
+opines
+opining
+opinion
+opinionated
+opinions
+opioid
+opioids
+opium
+opossum
+opponent
+opponents
+opportune
+opportunely
+opportunism
+opportunist
+opportunistic
+opportunistically
+opportunists
+opportunities
+opportunity
+oppose
+opposed
+opposes
+opposing
+opposite
+oppositely
+opposites
+opposition
+oppositional
+oppositions
+oppress
+oppressed
+oppresses
+oppressing
+oppression
+oppressions
+oppressive
+oppressively
+oppressiveness
+oppressor
+oppressors
+opprobrious
+opprobrium
+opt
+opted
+optic
+optical
+optically
+optician
+opticians
+optics
+optima
+optimal
+optimality
+optimally
+optimisation
+optimisations
+optimise
+optimised
+optimiser
+optimisers
+optimises
+optimising
+optimism
+optimist
+optimistic
+optimistically
+optimists
+optimum
+opting
+option
+optional
+optionality
+optionally
+options
+optoelectronic
+opts
+opulence
+opulent
+opus
+opuses
+or
+oracle
+oracles
+oracular
+oral
+orally
+orang
+orange
+oranges
+orangs
+orangutan
+orangutans
+orate
+orated
+orates
+orating
+oration
+orations
+orator
+oratorical
+oratorio
+orators
+oratory
+orb
+orbit
+orbital
+orbitals
+orbited
+orbiter
+orbiting
+orbits
+orbs
+orca
+orchard
+orchards
+orchestra
+orchestral
+orchestras
+orchestrate
+orchestrated
+orchestrates
+orchestrating
+orchestration
+orchestrations
+orchestrator
+orchid
+orchids
+ordain
+ordained
+ordaining
+ordains
+ordeal
+ordeals
+order
+ordered
+ordering
+orderings
+orderless
+orderlies
+orderliness
+orderly
+orders
+ordinal
+ordinals
+ordinance
+ordinances
+ordinands
+ordinarily
+ordinariness
+ordinary
+ordinate
+ordinates
+ordination
+ordinations
+ordnance
+ordure
+ore
+ores
+organ
+organelles
+organic
+organically
+organics
+organisable
+organisation
+organisational
+organisationally
+organisations
+organise
+organised
+organiser
+organisers
+organises
+organising
+organism
+organisms
+organist
+organists
+organs
+organza
+orgies
+orgy
+orient
+orientable
+oriental
+orientalism
+orientals
+orientate
+orientated
+orientates
+orientation
+orientations
+oriented
+orienteering
+orienting
+orifice
+orifices
+origami
+origin
+original
+originality
+originally
+originals
+originate
+originated
+originates
+originating
+origination
+originator
+originators
+origins
+orimulsion
+ornament
+ornamental
+ornamentation
+ornamented
+ornamenting
+ornaments
+ornate
+ornately
+ornithological
+ornithologist
+ornithologists
+ornithology
+orphan
+orphanage
+orphanages
+orphaned
+orphans
+orpheus
+orthodontist
+orthodox
+orthodoxies
+orthodoxy
+orthogonal
+orthogonality
+orthogonally
+orthographic
+orthographical
+orthographically
+orthography
+orthonormal
+orthopaedic
+orthopaedics
+orthorhombic
+oryxes
+oscar
+oscars
+oscillate
+oscillated
+oscillates
+oscillating
+oscillation
+oscillations
+oscillator
+oscillators
+oscillatory
+oscilloscope
+oscilloscopes
+osiris
+oslo
+osmium
+osmosis
+osmotic
+osprey
+ospreys
+ossification
+ossified
+ostensible
+ostensibly
+ostentation
+ostentatious
+ostentatiously
+osteoarthritis
+osteopath
+osteopaths
+osteopathy
+osteoporosis
+ostler
+ostlers
+ostracise
+ostracised
+ostracism
+ostrich
+ostriches
+other
+otherness
+others
+otherwise
+otter
+otters
+ottoman
+ouch
+ought
+ounce
+ounces
+our
+ours
+ourselves
+oust
+ousted
+ouster
+ousting
+ousts
+out
+outage
+outages
+outback
+outbid
+outbids
+outboard
+outbound
+outbreak
+outbreaks
+outbred
+outbuilding
+outbuildings
+outburst
+outbursts
+outcall
+outcast
+outcasts
+outclassed
+outcome
+outcomes
+outcries
+outcrop
+outcrops
+outcry
+outdated
+outdid
+outdo
+outdoes
+outdoing
+outdone
+outdoor
+outdoors
+outer
+outermost
+outface
+outfall
+outfalls
+outfield
+outfit
+outfits
+outfitters
+outflank
+outflanked
+outflow
+outflows
+outfox
+outfoxed
+outfoxes
+outgo
+outgoing
+outgoings
+outgrew
+outgrow
+outgrowing
+outgrown
+outgrowth
+outgrowths
+outguess
+outhouse
+outhouses
+outing
+outings
+outlandish
+outlast
+outlasted
+outlasts
+outlaw
+outlawed
+outlawing
+outlawry
+outlaws
+outlay
+outlays
+outlet
+outlets
+outlier
+outliers
+outline
+outlined
+outlines
+outlining
+outlive
+outlived
+outlives
+outliving
+outlook
+outlooks
+outlying
+outmanoeuvre
+outmanoeuvred
+outmoded
+outmost
+outnumber
+outnumbered
+outnumbering
+outnumbers
+outpace
+outpaced
+outpacing
+outpatient
+outpatients
+outperform
+outperformed
+outperforming
+outperforms
+outplacement
+outplay
+outplayed
+outpointed
+outpointing
+outpost
+outposts
+outpouring
+outpourings
+output
+outputs
+outputting
+outrage
+outraged
+outrageous
+outrageously
+outrages
+outraging
+outran
+outrank
+outreach
+outride
+outrider
+outriders
+outrigger
+outright
+outrun
+outruns
+outs
+outsell
+outset
+outsets
+outshine
+outshines
+outshining
+outshone
+outside
+outsider
+outsiders
+outsides
+outsize
+outskirts
+outsmart
+outsold
+outsourcing
+outspan
+outspoken
+outspokenly
+outspokenness
+outspread
+outstanding
+outstandingly
+outstation
+outstations
+outstay
+outstayed
+outstep
+outstretched
+outstrip
+outstripped
+outstripping
+outstrips
+outvoted
+outward
+outwardly
+outwards
+outweigh
+outweighed
+outweighing
+outweighs
+outwit
+outwith
+outwits
+outwitted
+outwitting
+outwork
+outworking
+ova
+oval
+ovals
+ovarian
+ovaries
+ovary
+ovate
+ovation
+ovations
+oven
+ovens
+over
+overact
+overacted
+overacting
+overactive
+overacts
+overall
+overallocation
+overalls
+overambitious
+overanxious
+overate
+overbearing
+overboard
+overburdened
+overcame
+overcapacity
+overcast
+overcharge
+overcharged
+overcharging
+overcoat
+overcoats
+overcome
+overcomes
+overcoming
+overcommitment
+overcommitments
+overcompensate
+overcomplexity
+overcomplicated
+overconfident
+overcook
+overcooked
+overcrowd
+overcrowded
+overcrowding
+overdetermined
+overdid
+overdo
+overdoes
+overdoing
+overdone
+overdose
+overdosed
+overdoses
+overdosing
+overdraft
+overdrafts
+overdramatic
+overdraw
+overdrawn
+overdressed
+overdrive
+overdubbing
+overdue
+overeat
+overeating
+overeats
+overemotional
+overemphasis
+overemphasise
+overemphasised
+overenthusiastic
+overestimate
+overestimated
+overestimates
+overestimating
+overestimation
+overexposed
+overexposure
+overextended
+overfamiliarity
+overfed
+overfeed
+overfeeding
+overfill
+overfishing
+overflow
+overflowed
+overflowing
+overflown
+overflows
+overfly
+overflying
+overfull
+overgeneralised
+overgeneralising
+overgrazing
+overground
+overgrown
+overgrowth
+overhand
+overhang
+overhanging
+overhangs
+overhasty
+overhaul
+overhauled
+overhauling
+overhauls
+overhead
+overheads
+overhear
+overheard
+overhearing
+overhears
+overheat
+overheated
+overheating
+overhung
+overincredulous
+overindulgence
+overindulgent
+overinflated
+overjoyed
+overkill
+overladen
+overlaid
+overlain
+overland
+overlap
+overlapped
+overlapping
+overlaps
+overlay
+overlaying
+overlays
+overleaf
+overlie
+overlies
+overload
+overloaded
+overloading
+overloads
+overlong
+overlook
+overlooked
+overlooking
+overlooks
+overlord
+overlords
+overly
+overlying
+overmanning
+overmantel
+overmatching
+overmuch
+overnight
+overoptimistic
+overpaid
+overpass
+overpay
+overpayment
+overplay
+overplayed
+overplaying
+overpopulated
+overpopulation
+overpopulous
+overpower
+overpowered
+overpowering
+overpoweringly
+overpowers
+overpressure
+overpriced
+overprint
+overprinted
+overprinting
+overprints
+overproduced
+overproduction
+overqualified
+overran
+overrate
+overrated
+overreach
+overreached
+overreaching
+overreact
+overreacted
+overreacting
+overreaction
+overreacts
+overrepresented
+overridden
+override
+overrides
+overriding
+overripe
+overrode
+overrule
+overruled
+overruling
+overrun
+overrunning
+overruns
+overs
+oversampled
+oversampling
+oversaw
+overseas
+oversee
+overseeing
+overseen
+overseer
+overseers
+oversees
+oversensitive
+oversensitivity
+oversexed
+overshadow
+overshadowed
+overshadowing
+overshadows
+overshoot
+overshooting
+overshoots
+overshot
+oversight
+oversights
+oversimplification
+oversimplifications
+oversimplified
+oversimplifies
+oversimplify
+oversimplifying
+oversize
+oversized
+oversleep
+overslept
+overspend
+overspending
+overspent
+overspill
+overstaffed
+overstate
+overstated
+overstatement
+overstates
+overstating
+overstep
+overstepped
+overstepping
+oversteps
+overstocked
+overstocking
+overstress
+overstressed
+overstretch
+overstretched
+overstrung
+overstuffed
+oversubscribed
+oversupply
+overt
+overtake
+overtaken
+overtaker
+overtakers
+overtakes
+overtaking
+overtax
+overthetop
+overthrew
+overthrow
+overthrowing
+overthrown
+overthrows
+overtightened
+overtime
+overtly
+overtness
+overtone
+overtones
+overtook
+overtops
+overture
+overtures
+overturn
+overturned
+overturning
+overturns
+overuse
+overused
+overuses
+overvalue
+overvalued
+overview
+overviews
+overweening
+overweight
+overwhelm
+overwhelmed
+overwhelming
+overwhelmingly
+overwhelms
+overwinter
+overwintered
+overwintering
+overwork
+overworked
+overworking
+overwrite
+overwrites
+overwriting
+overwritten
+overwrote
+overwrought
+oviduct
+ovoid
+ovular
+ovulation
+ovum
+ow
+owe
+owed
+owes
+owing
+owl
+owlet
+owlets
+owlish
+owlishly
+owls
+own
+owned
+owner
+owners
+ownership
+ownerships
+owning
+owns
+ox
+oxalate
+oxalic
+oxcart
+oxen
+oxford
+oxidant
+oxidants
+oxidation
+oxide
+oxides
+oxidisation
+oxidise
+oxidised
+oxidiser
+oxidising
+oxtail
+oxtails
+oxygen
+oxygenated
+oxygenating
+oxygenation
+oxymoron
+oyster
+oysters
+ozone
+ozonefriendly
+pa
+pace
+paced
+pacemaker
+pacemakers
+paceman
+pacemen
+pacer
+pacers
+paces
+pacey
+pachyderm
+pacific
+pacification
+pacified
+pacifier
+pacifies
+pacifism
+pacifist
+pacifists
+pacify
+pacifying
+pacing
+pack
+packable
+package
+packaged
+packages
+packaging
+packed
+packer
+packers
+packet
+packets
+packhorse
+packing
+packings
+packs
+pact
+pacts
+pad
+padded
+padding
+paddings
+paddle
+paddled
+paddler
+paddlers
+paddles
+paddling
+paddock
+paddocks
+paddy
+padlock
+padlocked
+padlocking
+padlocks
+padre
+padres
+pads
+paean
+paeans
+paediatric
+paediatrician
+paediatricians
+paediatrics
+paedophile
+paedophiles
+paedophilia
+paella
+paeony
+pagan
+paganism
+pagans
+page
+pageant
+pageantry
+pageants
+pageboy
+paged
+pageful
+pager
+pagers
+pages
+paginal
+paginate
+paginated
+paginating
+pagination
+paging
+pagoda
+pagodas
+paid
+paidup
+pail
+pails
+pain
+pained
+painful
+painfully
+painfulness
+paining
+painkiller
+painkillers
+painless
+painlessly
+pains
+painstaking
+painstakingly
+paint
+paintbox
+paintbrush
+painted
+painter
+painters
+painting
+paintings
+paints
+paintwork
+pair
+paired
+pairing
+pairings
+pairs
+pairwise
+pajama
+pajamas
+pakistan
+pal
+palace
+palaces
+palaeographic
+palaeolithic
+palaeontological
+palaeontologist
+palaeontologists
+palaeontology
+palatability
+palatable
+palatal
+palate
+palates
+palatial
+palatinate
+palatine
+palaver
+pale
+paled
+paleface
+palely
+paleness
+paler
+pales
+palest
+palette
+palettes
+palimpsest
+palindrome
+palindromes
+palindromic
+paling
+palisade
+palisades
+pall
+palladium
+pallbearers
+palled
+pallet
+pallets
+palliative
+palliatives
+pallid
+pallmall
+pallor
+palls
+palm
+palmed
+palming
+palmist
+palmistry
+palms
+palmtop
+palmtops
+palmy
+palp
+palpable
+palpably
+palpate
+palpated
+palpates
+palpitate
+palpitated
+palpitating
+palpitation
+palpitations
+pals
+palsied
+palsy
+paltrier
+paltriest
+paltriness
+paltry
+paludal
+pampas
+pamper
+pampered
+pampering
+pampers
+pamphlet
+pamphleteer
+pamphleteers
+pamphlets
+pan
+panacea
+panaceas
+panache
+panama
+pancake
+pancaked
+pancakes
+pancreas
+pancreatic
+panda
+pandas
+pandemic
+pandemics
+pandemonium
+pander
+pandering
+panders
+pandora
+pane
+paned
+panel
+panelled
+panelling
+panellist
+panellists
+panels
+panes
+pang
+panga
+pangas
+pangolin
+pangs
+panic
+panicked
+panicking
+panicky
+panics
+panicstricken
+panjandrum
+panned
+pannier
+panniers
+panning
+panoply
+panorama
+panoramas
+panoramic
+pans
+pansies
+pansy
+pant
+pantaloons
+pantechnicon
+panted
+pantheism
+pantheist
+pantheistic
+pantheon
+panther
+panthers
+panties
+pantile
+pantiled
+pantiles
+panting
+pantograph
+pantographs
+pantomime
+pantomimes
+pantries
+pantry
+pants
+panzer
+pap
+papa
+papacy
+papal
+paparazzi
+papas
+papaw
+papaws
+papaya
+paper
+paperback
+paperbacks
+papered
+papering
+paperless
+papers
+paperthin
+paperweight
+paperweights
+paperwork
+papery
+papilla
+papist
+pappy
+paprika
+papua
+papule
+papyri
+papyrus
+par
+parable
+parables
+parabola
+parabolas
+parabolic
+paraboloid
+paraboloids
+paracetamol
+parachute
+parachuted
+parachutes
+parachuting
+parachutist
+parachutists
+parade
+paraded
+parader
+parades
+paradigm
+paradigmatic
+paradigms
+parading
+paradise
+paradises
+paradox
+paradoxes
+paradoxical
+paradoxically
+paraffin
+paragliding
+paragon
+paragons
+paragraph
+paragraphing
+paragraphs
+paraguay
+parakeet
+parakeets
+paralinguistic
+parallax
+parallaxes
+parallel
+paralleled
+parallelepiped
+paralleling
+parallelism
+parallelogram
+parallelograms
+parallels
+paralyse
+paralysed
+paralyses
+paralysing
+paralysis
+paralytic
+paralytically
+paramagnetic
+paramagnetism
+paramedic
+paramedical
+paramedics
+parameter
+parameters
+parametric
+parametrically
+parametrisation
+parametrise
+parametrised
+parametrises
+paramilitaries
+paramilitary
+paramount
+paramountcy
+paramour
+paranoia
+paranoiac
+paranoiacs
+paranoid
+paranormal
+parapet
+parapets
+paraphernalia
+paraphrase
+paraphrased
+paraphrases
+paraphrasing
+paraplegic
+parapsychologist
+parapsychology
+paraquat
+parasite
+parasites
+parasitic
+parasitical
+parasitised
+parasitism
+parasitologist
+parasitology
+parasol
+parasols
+paratroop
+paratrooper
+paratroopers
+paratroops
+parboil
+parcel
+parcelled
+parcelling
+parcels
+parch
+parched
+parches
+parchment
+parchments
+pardon
+pardonable
+pardoned
+pardoning
+pardons
+pare
+pared
+parent
+parentage
+parental
+parented
+parenteral
+parentheses
+parenthesis
+parenthesise
+parenthesised
+parenthetic
+parenthetical
+parenthetically
+parenthood
+parenting
+parentinlaw
+parents
+parentsinlaw
+pares
+parfait
+parfaits
+pariah
+pariahs
+parietal
+paring
+paris
+parish
+parishes
+parishioner
+parishioners
+parisian
+parities
+parity
+park
+parka
+parkas
+parked
+parking
+parkland
+parks
+parlance
+parley
+parleying
+parliament
+parliamentarian
+parliamentarians
+parliamentary
+parliaments
+parlour
+parlourmaid
+parlours
+parlous
+parochial
+parochialism
+parochiality
+parodied
+parodies
+parodist
+parody
+parodying
+parole
+paroxysm
+paroxysms
+parquet
+parried
+parries
+parrot
+parroting
+parrots
+parry
+parrying
+parse
+parsec
+parsecs
+parsed
+parser
+parsers
+parses
+parsimonious
+parsimony
+parsing
+parsings
+parsley
+parsnip
+parsnips
+parson
+parsonage
+parsons
+part
+partake
+partaken
+partaker
+partakers
+partakes
+partaking
+parted
+parthenogenesis
+partial
+partiality
+partially
+participant
+participants
+participate
+participated
+participates
+participating
+participation
+participative
+participators
+participatory
+participle
+participles
+particle
+particles
+particular
+particularise
+particularised
+particularism
+particularities
+particularity
+particularly
+particulars
+particulate
+particulates
+parties
+parting
+partings
+partisan
+partisans
+partisanship
+partition
+partitioned
+partitioning
+partitions
+partly
+partner
+partnered
+partnering
+partners
+partnership
+partnerships
+partook
+partridge
+partridges
+parts
+parttime
+party
+parvenu
+pascal
+pascals
+paschal
+pass
+passable
+passably
+passage
+passages
+passageway
+passageways
+passant
+passe
+passed
+passenger
+passengers
+passer
+passers
+passersby
+passes
+passim
+passing
+passion
+passionate
+passionately
+passionateness
+passionless
+passions
+passivated
+passive
+passively
+passives
+passivity
+passmark
+passover
+passport
+passports
+password
+passwords
+past
+pasta
+pastas
+paste
+pasteboard
+pasted
+pastel
+pastels
+pastes
+pasteur
+pasteurisation
+pasteurised
+pastiche
+pastiches
+pasties
+pastille
+pastime
+pastimes
+pasting
+pastis
+pastor
+pastoral
+pastoralism
+pastors
+pastrami
+pastries
+pastry
+pasts
+pasture
+pastured
+pastureland
+pastures
+pasturing
+pasty
+pat
+patch
+patchable
+patched
+patches
+patchier
+patchiest
+patchily
+patchiness
+patching
+patchup
+patchwork
+patchy
+pate
+patella
+paten
+patent
+patentable
+patented
+patentee
+patenting
+patently
+patents
+pater
+paternal
+paternalism
+paternalist
+paternalistic
+paternally
+paternity
+pates
+path
+pathetic
+pathetically
+pathfinder
+pathfinders
+pathless
+pathogen
+pathogenesis
+pathogenic
+pathogens
+pathological
+pathologically
+pathologies
+pathologist
+pathologists
+pathology
+pathos
+paths
+pathway
+pathways
+patience
+patient
+patiently
+patients
+patina
+patination
+patio
+patisserie
+patois
+patriarch
+patriarchal
+patriarchies
+patriarchs
+patriarchy
+patrician
+patricians
+patrilineal
+patrimony
+patriot
+patriotic
+patriotism
+patriots
+patrol
+patrolled
+patrolling
+patrols
+patron
+patronage
+patroness
+patronesses
+patronisation
+patronise
+patronised
+patronises
+patronising
+patronisingly
+patrons
+pats
+patted
+patten
+pattens
+patter
+pattered
+pattering
+pattern
+patterned
+patterning
+patternless
+patterns
+patters
+patties
+patting
+paucity
+paul
+paunch
+paunchy
+pauper
+paupers
+pause
+paused
+pauses
+pausing
+pave
+paved
+pavement
+pavements
+paves
+pavilion
+pavilions
+paving
+pavings
+pavlov
+paw
+pawed
+pawing
+pawn
+pawnbroker
+pawnbrokers
+pawned
+pawning
+pawns
+pawnshop
+pawnshops
+pawpaw
+pawpaws
+paws
+pay
+payable
+payback
+payday
+paydays
+payed
+payee
+payees
+payer
+payers
+paying
+payload
+payloads
+paymaster
+paymasters
+payment
+payments
+payphone
+payphones
+payroll
+payrolls
+pays
+payslips
+pea
+peace
+peaceable
+peaceably
+peaceful
+peacefully
+peacefulness
+peacekeepers
+peacekeeping
+peacemaker
+peacemakers
+peacemaking
+peacetime
+peach
+peaches
+peachier
+peachiest
+peachy
+peacock
+peacocks
+peafowl
+peahens
+peak
+peaked
+peakiness
+peaking
+peaks
+peaky
+peal
+pealed
+pealing
+peals
+peanut
+peanuts
+pear
+pearl
+pearls
+pearly
+pears
+peartrees
+peas
+peasant
+peasantry
+peasants
+peat
+peatland
+peatlands
+peaty
+pebble
+pebbled
+pebbles
+pebbly
+pecan
+peccary
+peck
+pecked
+pecker
+peckers
+pecking
+peckish
+pecks
+pectin
+pectoral
+pectorals
+peculiar
+peculiarities
+peculiarity
+peculiarly
+pecuniary
+pedagogic
+pedagogical
+pedagogically
+pedagogue
+pedagogy
+pedal
+pedalled
+pedalling
+pedals
+pedant
+pedantic
+pedantically
+pedantry
+pedants
+peddle
+peddled
+peddler
+peddlers
+peddles
+peddling
+pederasts
+pedestal
+pedestals
+pedestrian
+pedestrianisation
+pedestrianised
+pedestrians
+pedigree
+pedigrees
+pediment
+pedimented
+pediments
+pedlar
+pedlars
+pedology
+peek
+peeked
+peeking
+peeks
+peel
+peeled
+peeler
+peelers
+peeling
+peelings
+peels
+peep
+peeped
+peeper
+peepers
+peephole
+peeping
+peeps
+peer
+peerage
+peerages
+peered
+peering
+peerless
+peers
+peevish
+peevishly
+peevishness
+peg
+pegasus
+pegged
+pegging
+pegs
+pejorative
+pejoratively
+pejoratives
+pekan
+peking
+pele
+pelican
+pelicans
+pellet
+pellets
+pelmet
+pelmets
+pelt
+pelted
+pelting
+pelts
+pelvic
+pelvis
+pelvises
+pen
+penal
+penalisation
+penalise
+penalised
+penalises
+penalising
+penalties
+penalty
+penance
+penances
+pence
+penchant
+pencil
+pencilled
+pencilling
+pencils
+pendant
+pendants
+pending
+pendulous
+pendulum
+pendulums
+penetrable
+penetrate
+penetrated
+penetrates
+penetrating
+penetratingly
+penetration
+penetrations
+penetrative
+penguin
+penguins
+penicillin
+penile
+peninsula
+peninsular
+peninsulas
+penitence
+penitent
+penitential
+penitentiary
+penitently
+penitents
+penknife
+penname
+pennames
+pennant
+pennants
+penned
+pennies
+penniless
+penning
+penny
+pennypinching
+penology
+pens
+pension
+pensionable
+pensioned
+pensioner
+pensioners
+pensioning
+pensions
+pensive
+pensively
+pensiveness
+pent
+pentagon
+pentagonal
+pentagons
+pentagram
+pentagrams
+pentameter
+pentameters
+pentasyllabic
+pentathlete
+pentathlon
+pentatonic
+pentecostal
+penthouse
+penultimate
+penultimately
+penumbra
+penurious
+penury
+peonies
+people
+peopled
+peoples
+pep
+peperoni
+pepper
+peppercorn
+peppercorns
+peppered
+peppering
+peppermint
+peppermints
+peppers
+peppery
+peps
+peptic
+peptide
+peptides
+per
+perambulate
+perambulated
+perambulating
+perambulations
+perambulator
+perannum
+percales
+perceivable
+perceive
+perceived
+perceives
+perceiving
+percent
+percentage
+percentages
+percentile
+percentiles
+percept
+perceptibility
+perceptible
+perceptibly
+perception
+perceptions
+perceptive
+perceptively
+perceptiveness
+percepts
+perceptual
+perceptually
+perch
+perchance
+perched
+percher
+perches
+perching
+perchlorate
+percipient
+percolate
+percolated
+percolates
+percolating
+percolation
+percolator
+percolators
+percuss
+percussed
+percusses
+percussing
+percussion
+percussionist
+percussionists
+percussive
+percussively
+percutaneous
+perdition
+peregrinations
+peregrine
+peregrines
+peremptorily
+peremptoriness
+peremptory
+perennial
+perennially
+perennials
+perestroika
+perfect
+perfected
+perfectibility
+perfecting
+perfection
+perfectionism
+perfectionist
+perfectionists
+perfections
+perfectly
+perfects
+perfidious
+perfidiously
+perfidy
+perforate
+perforated
+perforation
+perforations
+perforce
+perform
+performable
+performance
+performances
+performed
+performer
+performers
+performing
+performs
+perfume
+perfumed
+perfumery
+perfumes
+perfuming
+perfunctorily
+perfunctory
+perfused
+perfusion
+pergola
+pergolas
+perhaps
+peri
+periastron
+perigee
+periglacial
+perihelion
+peril
+perilous
+perilously
+perils
+perimeter
+perimeters
+perinatal
+perineal
+perineum
+period
+periodic
+periodical
+periodically
+periodicals
+periodicity
+periods
+perioperative
+peripatetic
+peripheral
+peripherally
+peripherals
+peripheries
+periphery
+periphrasis
+periphrastic
+periscope
+periscopes
+perish
+perishable
+perishables
+perished
+perishes
+perishing
+peritoneum
+perjure
+perjured
+perjurer
+perjury
+perk
+perked
+perkier
+perkiest
+perkily
+perking
+perks
+perky
+perm
+permafrost
+permanence
+permanency
+permanent
+permanently
+permanganate
+permeability
+permeable
+permeate
+permeated
+permeates
+permeating
+permeation
+permed
+perming
+permissibility
+permissible
+permission
+permissions
+permissive
+permissiveness
+permit
+permits
+permitted
+permitting
+permittivity
+perms
+permutation
+permutations
+permute
+permuted
+permutes
+permuting
+pernicious
+perniciousness
+peroration
+peroxidase
+peroxide
+peroxides
+perpendicular
+perpendicularly
+perpendiculars
+perpetrate
+perpetrated
+perpetrates
+perpetrating
+perpetration
+perpetrator
+perpetrators
+perpetual
+perpetually
+perpetuate
+perpetuated
+perpetuates
+perpetuating
+perpetuation
+perpetuity
+perplex
+perplexed
+perplexedly
+perplexing
+perplexities
+perplexity
+perquisite
+perquisites
+perron
+perry
+persecute
+persecuted
+persecuting
+persecution
+persecutions
+persecutor
+persecutors
+perseverance
+persevere
+persevered
+perseveres
+persevering
+perseveringly
+persia
+persian
+persist
+persisted
+persistence
+persistent
+persistently
+persisting
+persists
+person
+persona
+personable
+personae
+personage
+personages
+personal
+personalisation
+personalise
+personalised
+personalising
+personalities
+personality
+personally
+personification
+personifications
+personified
+personifies
+personify
+personifying
+personnel
+persons
+perspective
+perspectives
+perspex
+perspicacious
+perspicacity
+perspicuity
+perspicuous
+perspicuously
+perspiration
+perspire
+perspiring
+persuade
+persuaded
+persuaders
+persuades
+persuading
+persuasion
+persuasions
+persuasive
+persuasively
+persuasiveness
+pert
+pertain
+pertained
+pertaining
+pertains
+perth
+pertinacious
+pertinaciously
+pertinacity
+pertinence
+pertinent
+pertinently
+pertly
+pertness
+perturb
+perturbation
+perturbations
+perturbed
+perturbing
+peru
+perusal
+peruse
+perused
+peruses
+perusing
+peruvian
+pervade
+pervaded
+pervades
+pervading
+pervasive
+pervasiveness
+perverse
+perversely
+perverseness
+perversion
+perversions
+perversity
+pervert
+perverted
+perverting
+perverts
+peseta
+pesetas
+pesky
+pessimism
+pessimist
+pessimistic
+pessimistically
+pessimists
+pest
+pester
+pestered
+pestering
+pesticide
+pesticides
+pestilence
+pestilent
+pestilential
+pestle
+pests
+pet
+petal
+petals
+petard
+peter
+petered
+petering
+peters
+pethidine
+petit
+petite
+petition
+petitioned
+petitioner
+petitioners
+petitioning
+petitions
+petrel
+petrels
+petrification
+petrified
+petrifies
+petrify
+petrifying
+petrochemical
+petrochemicals
+petrographic
+petrographical
+petrol
+petroleum
+petrological
+petrology
+pets
+petted
+petticoat
+petticoats
+pettier
+pettiest
+pettifoggers
+pettifogging
+pettiness
+petting
+pettish
+pettishly
+pettishness
+petty
+petulance
+petulant
+petulantly
+petunia
+petunias
+pew
+pews
+pewter
+phalanx
+phantasy
+phantom
+phantoms
+pharaoh
+pharmaceutical
+pharmaceuticals
+pharmacies
+pharmacist
+pharmacists
+pharmacological
+pharmacologist
+pharmacologists
+pharmacology
+pharmacy
+pharynx
+phase
+phased
+phases
+phasing
+pheasant
+pheasants
+phenol
+phenols
+phenomena
+phenomenal
+phenomenally
+phenomenological
+phenomenologically
+phenomenologists
+phenomenology
+phenomenon
+phenotype
+phenotypes
+phenylalanine
+pheromone
+pheromones
+phew
+philanthropic
+philanthropist
+philanthropists
+philanthropy
+philatelic
+philatelists
+philately
+philharmonic
+philistine
+philological
+philologist
+philologists
+philology
+philosopher
+philosophers
+philosophic
+philosophical
+philosophically
+philosophies
+philosophise
+philosophising
+philosophy
+phlebotomy
+phlegm
+phlegmatic
+phlegmatically
+phlogiston
+phlox
+phobia
+phobias
+phobic
+phoenix
+phoenixes
+phone
+phoned
+phoneme
+phonemes
+phonemic
+phonemically
+phoner
+phones
+phonetic
+phonetically
+phoneticians
+phoneticist
+phonetics
+phoney
+phoneys
+phoning
+phonograph
+phonographic
+phonological
+phonologically
+phonology
+phonon
+phony
+phooey
+phosphatase
+phosphate
+phosphates
+phosphatic
+phospholipids
+phosphor
+phosphorescence
+phosphorescent
+phosphoric
+phosphorous
+phosphors
+phosphorus
+photo
+photocells
+photochemical
+photochemically
+photochemistry
+photocopied
+photocopier
+photocopiers
+photocopies
+photocopy
+photocopying
+photoelectric
+photoelectrically
+photogenic
+photograph
+photographed
+photographer
+photographers
+photographic
+photographically
+photographing
+photographs
+photography
+photolysis
+photolytic
+photometric
+photometrically
+photometry
+photomultiplier
+photon
+photons
+photoreceptor
+photos
+photosensitive
+photosphere
+photostat
+photosynthesis
+photosynthesising
+photosynthetic
+photosynthetically
+phototypesetter
+phototypesetting
+photovoltaic
+phrasal
+phrase
+phrasebook
+phrased
+phraseology
+phrases
+phrasing
+phrenological
+phrenologically
+phrenologists
+phrenology
+phyla
+phylactery
+phylogenetic
+phylogeny
+phylum
+physic
+physical
+physicality
+physically
+physician
+physicians
+physicist
+physicists
+physics
+physio
+physiognomies
+physiognomy
+physiological
+physiologically
+physiologist
+physiologists
+physiology
+physiotherapist
+physiotherapists
+physiotherapy
+physique
+phytoplankton
+pi
+pianissimo
+pianist
+pianistic
+pianists
+piano
+pianoforte
+pianola
+piazza
+piazzas
+pica
+picaresque
+picasso
+piccolo
+pick
+pickaxe
+pickaxes
+picked
+picker
+pickerel
+pickerels
+pickers
+picket
+picketed
+picketing
+pickets
+picking
+pickings
+pickle
+pickled
+pickles
+pickling
+pickpocket
+pickpocketing
+pickpockets
+picks
+pickup
+pickups
+picnic
+picnicked
+picnickers
+picnicking
+picnics
+picoseconds
+pictogram
+pictograms
+pictographic
+pictorial
+pictorially
+pictural
+picture
+pictured
+pictures
+picturesque
+picturesquely
+picturesqueness
+picturing
+pidgin
+pie
+piebald
+piece
+pieced
+piecemeal
+pieces
+piecewise
+piecework
+piecing
+pied
+pier
+pierce
+pierced
+piercer
+piercers
+pierces
+piercing
+piercingly
+piers
+pies
+pieta
+piety
+piezoelectric
+piffle
+pig
+pigeon
+pigeons
+piggery
+piggish
+piggy
+piggyback
+piglet
+piglets
+pigment
+pigmentation
+pigmented
+pigments
+pigs
+pigsties
+pigsty
+pigtail
+pigtailed
+pigtails
+pike
+pikemen
+pikes
+pikestaff
+pilaster
+pilasters
+pilchard
+pilchards
+pile
+piled
+piles
+pileup
+pilfer
+pilfered
+pilfering
+pilgrim
+pilgrimage
+pilgrimages
+pilgrims
+piling
+pill
+pillage
+pillaged
+pillages
+pillaging
+pillar
+pillared
+pillars
+pillbox
+pillion
+pilloried
+pillories
+pillory
+pillow
+pillowcase
+pillowcases
+pillowed
+pillows
+pills
+pilot
+piloted
+piloting
+pilots
+pimp
+pimpernel
+pimping
+pimple
+pimpled
+pimples
+pimply
+pimps
+pin
+pinafore
+pinafores
+pinball
+pincer
+pincered
+pincers
+pinch
+pinched
+pincher
+pinches
+pinching
+pincushion
+pincushions
+pine
+pineal
+pineapple
+pineapples
+pined
+pines
+ping
+pingpong
+pings
+pinhead
+pinheads
+pinhole
+pinholes
+pining
+pinion
+pinioned
+pinions
+pink
+pinked
+pinker
+pinkie
+pinkies
+pinking
+pinkish
+pinkness
+pinks
+pinky
+pinnacle
+pinnacled
+pinnacles
+pinned
+pinning
+pinpoint
+pinpointed
+pinpointing
+pinpoints
+pinprick
+pinpricks
+pins
+pinstripe
+pinstriped
+pinstripes
+pint
+pints
+pintsized
+pinup
+pinups
+piny
+pion
+pioneer
+pioneered
+pioneering
+pioneers
+pions
+pious
+piously
+pip
+pipe
+piped
+pipeline
+pipelines
+piper
+pipers
+pipes
+pipette
+pipettes
+pipework
+piping
+pipings
+pipit
+pipits
+pipped
+pippin
+pipping
+pips
+piquancy
+piquant
+pique
+piqued
+piracies
+piracy
+piranha
+piranhas
+pirate
+pirated
+pirates
+piratical
+pirating
+pirouette
+pirouetted
+pirouettes
+pirouetting
+pisa
+pistol
+pistols
+piston
+pistons
+pit
+pitbull
+pitch
+pitchdark
+pitched
+pitcher
+pitchers
+pitches
+pitchfork
+pitchforks
+pitching
+piteous
+piteously
+pitfall
+pitfalls
+pith
+pithead
+pithier
+pithiest
+pithily
+piths
+pithy
+pitiable
+pitiably
+pitied
+pities
+pitiful
+pitifully
+pitiless
+pitilessly
+piton
+pitons
+pits
+pittance
+pitted
+pitting
+pituitary
+pity
+pitying
+pityingly
+pivot
+pivotal
+pivoted
+pivoting
+pivots
+pixel
+pixels
+pixie
+pixies
+pizazz
+pizza
+pizzas
+pizzeria
+pizzerias
+pizzicato
+placard
+placards
+placate
+placated
+placates
+placating
+placatingly
+placatory
+place
+placebo
+placed
+placeholder
+placemen
+placement
+placements
+placenta
+placentae
+placental
+placentas
+placer
+placers
+places
+placid
+placidity
+placidly
+placing
+placings
+plagiarise
+plagiarised
+plagiarising
+plagiarism
+plagiarist
+plagiarists
+plague
+plagued
+plagues
+plaguing
+plaice
+plaid
+plaids
+plain
+plainest
+plainly
+plainness
+plains
+plaint
+plaintiff
+plaintiffs
+plaintive
+plaintively
+plait
+plaited
+plaiting
+plaits
+plan
+planar
+plane
+planed
+planes
+planet
+planetarium
+planetary
+planetesimals
+planetoids
+planets
+plangent
+planing
+plank
+planking
+planks
+plankton
+planktonic
+planned
+planner
+planners
+planning
+plans
+plant
+plantain
+plantation
+plantations
+planted
+planter
+planters
+planting
+plantings
+plants
+plaque
+plaques
+plasm
+plasma
+plasmas
+plasmid
+plasmids
+plaster
+plasterboard
+plastered
+plasterer
+plasterers
+plastering
+plasters
+plasterwork
+plastic
+plasticised
+plasticisers
+plasticity
+plastics
+plate
+plateau
+plateaus
+plateaux
+plated
+plateful
+platefuls
+platelet
+platelets
+platen
+platens
+plates
+platform
+platforms
+plating
+platinum
+platitude
+platitudes
+platitudinous
+plato
+platonic
+platoon
+platoons
+platter
+platters
+platypus
+platypuses
+plaudits
+plausibility
+plausible
+plausibly
+play
+playable
+playback
+playboy
+playboys
+played
+player
+players
+playfellow
+playfellows
+playful
+playfully
+playfulness
+playground
+playgrounds
+playgroup
+playgroups
+playhouse
+playing
+playings
+playmate
+playmates
+playroom
+plays
+plaything
+playthings
+playtime
+playwright
+playwrights
+plaza
+plazas
+plea
+plead
+pleaded
+pleading
+pleadingly
+pleadings
+pleads
+pleas
+pleasant
+pleasanter
+pleasantest
+pleasantly
+pleasantness
+pleasantries
+pleasantry
+please
+pleased
+pleases
+pleasing
+pleasingly
+pleasurable
+pleasurably
+pleasure
+pleasures
+pleat
+pleated
+pleats
+pleb
+plebeian
+plebiscite
+plebs
+plectrum
+plectrums
+pledge
+pledged
+pledges
+pledging
+plenary
+plenipotentiary
+plenitude
+plenteous
+plenteously
+plentiful
+plentifully
+plenty
+plenum
+plethora
+pleura
+pleural
+pleurisy
+plexus
+pliable
+pliant
+plied
+pliers
+plies
+plight
+plights
+plimsolls
+plinth
+plinths
+plod
+plodded
+plodder
+plodding
+plods
+plop
+plopped
+plopping
+plops
+plosive
+plot
+plots
+plotted
+plotter
+plotters
+plotting
+plough
+ploughed
+ploughers
+ploughing
+ploughman
+ploughmen
+ploughs
+ploughshare
+ploughshares
+plover
+plovers
+ploy
+ploys
+pluck
+plucked
+plucker
+pluckier
+pluckiest
+plucking
+plucks
+plucky
+plug
+plugged
+plugging
+plughole
+plugs
+plum
+plumage
+plumages
+plumb
+plumbago
+plumbed
+plumber
+plumbers
+plumbing
+plumbs
+plume
+plumed
+plumes
+pluming
+plummet
+plummeted
+plummeting
+plummets
+plummy
+plump
+plumped
+plumper
+plumping
+plumpness
+plums
+plumtree
+plumy
+plunder
+plundered
+plunderers
+plundering
+plunders
+plunge
+plunged
+plunger
+plungers
+plunges
+plunging
+pluperfect
+plural
+pluralisation
+pluralise
+pluralised
+pluralising
+pluralism
+pluralist
+pluralistic
+pluralists
+plurality
+plurals
+plus
+pluses
+plush
+plushy
+pluto
+plutocracy
+plutocrats
+plutonic
+plutonium
+ply
+plying
+plywood
+pneumatic
+pneumatics
+pneumonia
+poach
+poached
+poacher
+poachers
+poaches
+poaching
+pock
+pocked
+pocket
+pocketbook
+pocketed
+pocketful
+pocketing
+pockets
+pockmarked
+pocks
+pod
+podded
+podgy
+podia
+podium
+podiums
+pods
+poem
+poems
+poet
+poetess
+poetic
+poetical
+poetically
+poetics
+poetise
+poetry
+poets
+pogo
+pogrom
+pogroms
+poignancy
+poignant
+poignantly
+poikilothermic
+poinsettias
+point
+pointblank
+pointed
+pointedly
+pointedness
+pointer
+pointers
+pointillism
+pointillist
+pointing
+pointless
+pointlessly
+pointlessness
+points
+pointy
+poise
+poised
+poises
+poising
+poison
+poisoned
+poisoner
+poisoning
+poisonings
+poisonous
+poisons
+poke
+poked
+poker
+pokerfaced
+pokers
+pokes
+poking
+poky
+poland
+polar
+polarisation
+polarisations
+polarise
+polarised
+polarising
+polarities
+polarity
+polder
+pole
+polecat
+polecats
+poled
+polemic
+polemical
+polemicist
+polemics
+poles
+polestar
+polevaulting
+poleward
+polewards
+police
+policed
+policeman
+policemen
+polices
+policewoman
+policewomen
+policies
+policing
+policy
+policyholder
+policyholders
+polio
+poliomyelitis
+polish
+polished
+polisher
+polishers
+polishes
+polishing
+polishings
+politburo
+polite
+politely
+politeness
+politer
+politesse
+politest
+politic
+political
+politically
+politician
+politicians
+politicisation
+politicise
+politicised
+politicising
+politicking
+politics
+polity
+polka
+polkas
+poll
+pollarded
+polled
+pollen
+pollens
+pollinate
+pollinated
+pollinating
+pollination
+pollinator
+pollinators
+polling
+polls
+pollster
+pollsters
+pollutant
+pollutants
+pollute
+polluted
+polluter
+polluters
+pollutes
+polluting
+pollution
+pollutions
+polo
+polonaise
+polonaises
+poloneck
+polonies
+polonium
+polony
+poltergeist
+poltergeists
+poltroon
+polyandry
+polyatomic
+polycarbonate
+polychromatic
+polychrome
+polycotton
+polycrystalline
+polycyclic
+polyester
+polyesters
+polyethylene
+polygamous
+polygamy
+polyglot
+polyglots
+polygon
+polygonal
+polygons
+polygraph
+polygynous
+polygyny
+polyhedra
+polyhedral
+polyhedron
+polymath
+polymer
+polymerase
+polymerases
+polymeric
+polymerisation
+polymerised
+polymers
+polymorphic
+polymorphism
+polymorphisms
+polymorphous
+polynomial
+polynomially
+polynomials
+polyp
+polypeptide
+polypeptides
+polyphonic
+polyphony
+polypropylene
+polyps
+polysaccharide
+polysaccharides
+polystyrene
+polysyllabic
+polysyllable
+polysyllables
+polytechnic
+polytechnics
+polytheism
+polytheist
+polytheistic
+polytheists
+polythene
+polytopes
+polyunsaturated
+polyunsaturates
+polyurethane
+pomade
+pomades
+pomegranate
+pomegranates
+pomelo
+pomp
+pompadour
+pompeii
+pompey
+pomposity
+pompous
+pompously
+pompousness
+ponce
+poncho
+pond
+ponder
+pondered
+pondering
+ponderous
+ponderously
+ponders
+ponds
+ponies
+pontiff
+pontiffs
+pontifical
+pontificate
+pontificated
+pontificating
+pontification
+pontifications
+pontoon
+pontoons
+pony
+ponytail
+pooch
+pooches
+poodle
+poodles
+poof
+pooh
+pool
+pooled
+pooling
+pools
+poolside
+poop
+poor
+poorer
+poorest
+poorly
+poorness
+poorspirited
+pop
+popcorn
+pope
+popes
+popeyed
+poplar
+poplars
+popmusic
+popped
+popper
+poppet
+poppies
+popping
+poppy
+poppycock
+pops
+populace
+popular
+popularisation
+popularisations
+popularise
+popularised
+popularising
+popularity
+popularly
+populate
+populated
+populating
+population
+populations
+populism
+populist
+populists
+populous
+popup
+porcelain
+porch
+porches
+porcine
+porcupine
+porcupines
+pore
+pored
+pores
+poring
+pork
+porkchop
+porker
+porky
+porn
+porno
+pornographer
+pornographers
+pornographic
+pornography
+porns
+porosity
+porous
+porphyritic
+porphyry
+porpoise
+porpoises
+porridge
+port
+portability
+portable
+portables
+portage
+portal
+portals
+portcullis
+portcullises
+ported
+portend
+portended
+portending
+portends
+portent
+portentous
+portentously
+portents
+porter
+porterage
+porters
+portfolio
+porthole
+portholes
+portico
+porting
+portion
+portions
+portly
+portmanteau
+portmanteaus
+portrait
+portraitist
+portraits
+portraiture
+portray
+portrayal
+portrayals
+portrayed
+portraying
+portrays
+ports
+portugal
+pose
+posed
+poseidon
+poser
+posers
+poses
+poseur
+poseurs
+posh
+posies
+posing
+posit
+posited
+positing
+position
+positionable
+positional
+positionally
+positioned
+positioning
+positions
+positive
+positively
+positiveness
+positives
+positivism
+positivist
+positivists
+positivity
+positron
+positrons
+posits
+posse
+possess
+possessed
+possesses
+possessing
+possession
+possessions
+possessive
+possessively
+possessiveness
+possessives
+possessor
+possessors
+possibilities
+possibility
+possible
+possibles
+possibly
+possum
+possums
+post
+postage
+postal
+postbag
+postbox
+postboxes
+postcard
+postcards
+postcode
+postcodes
+postdated
+posted
+poster
+posterior
+posteriors
+posterity
+posters
+postfixes
+postgraduate
+postgraduates
+posthumous
+posthumously
+postilion
+postilions
+postillion
+posting
+postings
+postlude
+postman
+postmark
+postmarked
+postmarks
+postmaster
+postmasters
+postmen
+postmistress
+postmodern
+postmodernism
+postmodernist
+postmortem
+postmortems
+postnatal
+postoperative
+postoperatively
+postpone
+postponed
+postponement
+postponements
+postpones
+postponing
+posts
+postscript
+postscripts
+postulate
+postulated
+postulates
+postulating
+postulation
+postural
+posture
+postured
+postures
+posturing
+posturings
+posy
+pot
+potable
+potash
+potassium
+potato
+potbellied
+potch
+potencies
+potency
+potent
+potentate
+potentates
+potential
+potentialities
+potentiality
+potentially
+potentials
+potentiometer
+potentiometers
+potently
+pothole
+potholes
+potion
+potions
+potpourri
+pots
+potsherds
+potshot
+potshots
+pottage
+potted
+potter
+pottered
+potteries
+pottering
+potters
+pottery
+potties
+potting
+potty
+pouch
+pouches
+pouffe
+pouffes
+poult
+poulterer
+poultice
+poultry
+pounce
+pounced
+pounces
+pouncing
+pound
+poundage
+pounded
+pounding
+pounds
+pour
+pourable
+poured
+pouring
+pours
+pout
+pouted
+pouter
+pouting
+pouts
+poverty
+povertystricken
+powder
+powdered
+powdering
+powders
+powdery
+power
+powerboat
+powerboats
+powered
+powerful
+powerfully
+powerfulness
+powerhouse
+powerhouses
+powering
+powerless
+powerlessness
+powers
+powersharing
+pox
+practicabilities
+practicability
+practicable
+practical
+practicalities
+practicality
+practically
+practicals
+practice
+practices
+practise
+practised
+practises
+practising
+practitioner
+practitioners
+pragmatic
+pragmatically
+pragmatics
+pragmatism
+pragmatist
+pragmatists
+prague
+prairie
+prairies
+praise
+praised
+praises
+praiseworthy
+praising
+praline
+pram
+prams
+prance
+pranced
+prancer
+prancing
+prang
+prank
+pranks
+prankster
+pranksters
+prat
+prattle
+prattled
+prattler
+prattling
+prawn
+prawns
+pray
+prayed
+prayer
+prayerbook
+prayerful
+prayerfully
+prayers
+praying
+prays
+pre
+preach
+preached
+preacher
+preachers
+preaches
+preaching
+preachings
+preadolescent
+preallocate
+preamble
+preambles
+preamp
+preamplifier
+prearranged
+preauthorise
+prebend
+prebendary
+precarious
+precariously
+precariousness
+precaution
+precautionary
+precautions
+precede
+preceded
+precedence
+precedences
+precedent
+precedents
+precedes
+preceding
+precept
+precepts
+precess
+precessed
+precessing
+precession
+precinct
+precincts
+precious
+preciously
+preciousness
+precipice
+precipices
+precipitate
+precipitated
+precipitately
+precipitates
+precipitating
+precipitation
+precipitous
+precipitously
+precis
+precise
+precisely
+preciseness
+precision
+precisions
+preclinical
+preclude
+precluded
+precludes
+precluding
+precocious
+precociously
+precociousness
+precocity
+precognition
+precognitions
+precomputed
+preconceived
+preconception
+preconceptions
+precondition
+preconditions
+precooked
+precursor
+precursors
+predate
+predated
+predates
+predating
+predation
+predations
+predator
+predators
+predatory
+predeceased
+predecessor
+predecessors
+predeclared
+predefine
+predefined
+predefining
+predestination
+predestined
+predetermination
+predetermine
+predetermined
+predetermines
+predicament
+predicaments
+predicate
+predicated
+predicates
+predicating
+predicative
+predict
+predictability
+predictable
+predictably
+predicted
+predicting
+prediction
+predictions
+predictive
+predictor
+predictors
+predicts
+predilection
+predilections
+predispose
+predisposed
+predisposes
+predisposing
+predisposition
+predispositions
+predominance
+predominant
+predominantly
+predominate
+predominated
+predominates
+predominating
+preen
+preened
+preening
+preens
+prefab
+prefabricated
+prefabrication
+prefabs
+preface
+prefaced
+prefaces
+prefacing
+prefatory
+prefect
+prefects
+prefecture
+prefer
+preferable
+preferably
+preference
+preferences
+preferential
+preferentially
+preferment
+preferred
+preferring
+prefers
+prefigured
+prefix
+prefixed
+prefixes
+prefixing
+pregnancies
+pregnancy
+pregnant
+preheat
+preheating
+prehensile
+prehistoric
+prehistory
+prejudge
+prejudged
+prejudging
+prejudice
+prejudiced
+prejudices
+prejudicial
+prejudicing
+prelate
+prelates
+preliminaries
+preliminarily
+preliminary
+prelude
+preludes
+premature
+prematurely
+prematureness
+prematurity
+premeditate
+premeditated
+premeditation
+premenstrual
+premier
+premiere
+premiered
+premieres
+premiers
+premiership
+premise
+premised
+premises
+premising
+premiss
+premisses
+premium
+premiums
+premolar
+premolars
+premonition
+premonitions
+prenatal
+preoccupation
+preoccupations
+preoccupied
+preoccupy
+preoccupying
+preordained
+prep
+prepaid
+preparation
+preparations
+preparative
+preparatory
+prepare
+prepared
+preparedness
+preparer
+preparers
+prepares
+preparing
+prepayment
+prepays
+preplanned
+preponderance
+preponderant
+preponderantly
+preposition
+prepositional
+prepositions
+preposterous
+preposterously
+preps
+prerogative
+prerogatives
+presbytery
+preschool
+prescribe
+prescribed
+prescribes
+prescribing
+prescription
+prescriptions
+prescriptive
+prescriptively
+prescriptivism
+prescriptivist
+preselect
+preselected
+preselects
+presence
+presences
+present
+presentable
+presentation
+presentational
+presentations
+presented
+presenter
+presenters
+presentiment
+presentiments
+presenting
+presently
+presents
+preservation
+preservationists
+preservative
+preservatives
+preserve
+preserved
+preserver
+preserves
+preserving
+preset
+presets
+presetting
+preside
+presided
+presidencies
+presidency
+president
+presidential
+presidents
+presides
+presiding
+presidium
+press
+pressed
+presses
+pressing
+pressingly
+pressings
+pressman
+pressmen
+pressup
+pressups
+pressure
+pressurecooking
+pressured
+pressures
+pressuring
+pressurise
+pressurised
+pressurises
+pressurising
+prestidigitation
+prestidigitator
+prestidigitatorial
+prestige
+prestigious
+presto
+presumable
+presumably
+presume
+presumed
+presumes
+presuming
+presumption
+presumptions
+presumptive
+presumptively
+presumptuous
+presumptuously
+presumptuousness
+presuppose
+presupposed
+presupposes
+presupposing
+presupposition
+presuppositions
+pretence
+pretences
+pretend
+pretended
+pretender
+pretenders
+pretending
+pretends
+pretension
+pretensions
+pretentious
+pretentiously
+pretentiousness
+preterite
+preternatural
+preternaturally
+pretext
+pretexts
+pretor
+pretoria
+pretreated
+pretreatment
+pretreatments
+prettier
+prettiest
+prettify
+prettily
+prettiness
+pretty
+prevail
+prevailed
+prevailing
+prevails
+prevalence
+prevalent
+prevalently
+prevaricate
+prevaricated
+prevaricating
+prevarication
+prevent
+preventable
+prevented
+preventing
+prevention
+preventions
+preventive
+prevents
+preview
+previewed
+previewer
+previewers
+previewing
+previews
+previous
+previously
+prevue
+prevues
+prey
+preyed
+preying
+preys
+priapic
+price
+priced
+priceless
+prices
+pricewar
+pricey
+pricier
+pricing
+prick
+pricked
+pricking
+prickle
+prickled
+prickles
+pricklier
+prickliest
+prickliness
+prickling
+prickly
+pricks
+pricy
+pride
+prided
+prides
+pried
+pries
+priest
+priestess
+priestesses
+priesthood
+priestly
+priests
+prig
+priggish
+priggishly
+priggishness
+prim
+primacy
+primaeval
+primal
+primaries
+primarily
+primary
+primate
+primates
+prime
+primed
+primeness
+primer
+primers
+primes
+primetime
+primeval
+priming
+primitive
+primitively
+primitiveness
+primitives
+primly
+primness
+primogeniture
+primordial
+primrose
+primroses
+primus
+prince
+princelings
+princely
+princes
+princess
+princesses
+principal
+principalities
+principality
+principally
+principals
+principle
+principled
+principles
+print
+printable
+printed
+printer
+printers
+printing
+printings
+printmakers
+printmaking
+printout
+printouts
+prints
+prions
+prior
+priories
+priorities
+prioritisation
+prioritise
+prioritised
+prioritises
+prioritising
+priority
+priors
+priory
+prise
+prised
+prises
+prising
+prism
+prismatic
+prisms
+prison
+prisoner
+prisoners
+prisons
+prissy
+pristine
+privacy
+private
+privateer
+privateers
+privately
+privates
+privation
+privations
+privatisation
+privatisations
+privatise
+privatised
+privatises
+privatising
+privet
+privilege
+privileged
+privileges
+privileging
+privy
+prize
+prized
+prizer
+prizes
+prizewinner
+prizing
+pro
+proactive
+probabilist
+probabilistic
+probabilistically
+probabilities
+probability
+probable
+probably
+probate
+probation
+probationary
+probative
+probe
+probed
+prober
+probes
+probing
+probity
+problem
+problematic
+problematical
+problematically
+problems
+proboscis
+procedural
+procedurally
+procedure
+procedures
+proceed
+proceeded
+proceeding
+proceedings
+proceeds
+process
+processable
+processed
+processes
+processing
+procession
+processional
+processions
+processor
+processors
+proclaim
+proclaimed
+proclaimers
+proclaiming
+proclaims
+proclamation
+proclamations
+proclivities
+proclivity
+procrastinate
+procrastinating
+procrastination
+procrastinations
+procrastinator
+procrastinators
+procreate
+procreated
+procreating
+procreation
+procreational
+procreative
+procreatory
+proctor
+proctorial
+proctors
+procurable
+procure
+procured
+procurement
+procurements
+procures
+procuring
+prod
+prodded
+prodding
+prodeo
+prodigal
+prodigality
+prodigally
+prodigies
+prodigious
+prodigiously
+prodigy
+prods
+produce
+produced
+producer
+producers
+produces
+producible
+producing
+product
+production
+productions
+productive
+productively
+productivity
+products
+profanation
+profane
+profaned
+profanely
+profaneness
+profanities
+profanity
+profess
+professed
+professedly
+professes
+professing
+profession
+professional
+professionalisation
+professionalised
+professionalism
+professionally
+professionals
+professions
+professor
+professorial
+professors
+professorship
+professorships
+proffer
+proffered
+proffering
+proffers
+proficiencies
+proficiency
+proficient
+proficiently
+profile
+profiled
+profiles
+profiling
+profit
+profitability
+profitable
+profitably
+profited
+profiteering
+profiteers
+profiteroles
+profiting
+profitless
+profits
+profittaking
+profligacy
+profligate
+profligately
+proforma
+proformas
+profound
+profounder
+profoundest
+profoundly
+profundity
+profuse
+profusely
+profuseness
+profusion
+progenitor
+progenitors
+progeny
+progesterone
+prognoses
+prognosis
+prognosticate
+prognostication
+prognostications
+program
+programmable
+programmatic
+programme
+programmed
+programmer
+programmers
+programmes
+programming
+programs
+progress
+progressed
+progresses
+progressing
+progression
+progressions
+progressive
+progressively
+progressiveness
+progressives
+prohibit
+prohibited
+prohibiting
+prohibition
+prohibitionist
+prohibitionists
+prohibitions
+prohibitive
+prohibitively
+prohibits
+project
+projected
+projectile
+projectiles
+projecting
+projection
+projectionist
+projections
+projective
+projectively
+projector
+projectors
+projects
+prokaryotes
+prolactin
+prolapse
+prolapsed
+proletarian
+proletarianisation
+proletarians
+proletariat
+proliferate
+proliferated
+proliferates
+proliferating
+proliferation
+proliferative
+prolific
+prolifically
+prolix
+prologue
+prologues
+prolong
+prolongation
+prolonged
+prolonging
+prolongs
+promenade
+promenaded
+promenader
+promenaders
+promenades
+prominence
+prominences
+prominent
+prominently
+promiscuity
+promiscuous
+promiscuously
+promise
+promised
+promises
+promising
+promisingly
+promissory
+promontories
+promontory
+promotable
+promote
+promoted
+promoter
+promoters
+promotes
+promoting
+promotion
+promotional
+promotions
+prompt
+prompted
+prompter
+prompters
+prompting
+promptings
+promptitude
+promptly
+promptness
+prompts
+promulgate
+promulgated
+promulgating
+promulgation
+promulgations
+prone
+proneness
+prong
+prongs
+pronominal
+pronoun
+pronounce
+pronounceable
+pronounced
+pronouncedly
+pronouncement
+pronouncements
+pronounces
+pronouncing
+pronouns
+pronto
+pronunciation
+pronunciations
+proof
+proofed
+proofing
+proofread
+proofreader
+proofreaders
+proofreading
+proofreads
+proofs
+prop
+propaganda
+propagandist
+propagandists
+propagate
+propagated
+propagates
+propagating
+propagation
+propagator
+propagators
+propane
+propel
+propellant
+propellants
+propelled
+propeller
+propellers
+propelling
+propels
+propensities
+propensity
+proper
+properly
+propertied
+properties
+property
+prophecies
+prophecy
+prophesied
+prophesies
+prophesy
+prophesying
+prophet
+prophetess
+prophetic
+prophetically
+prophets
+prophylactic
+prophylactics
+prophylaxis
+propinquity
+propionate
+propitiate
+propitiated
+propitiating
+propitiation
+propitiatory
+propitious
+proponent
+proponents
+proportion
+proportional
+proportionality
+proportionally
+proportionate
+proportionately
+proportioned
+proportions
+proposal
+proposals
+propose
+proposed
+proposer
+proposers
+proposes
+proposing
+proposition
+propositional
+propositioned
+propositioning
+propositions
+propound
+propounded
+propounding
+propped
+propping
+proprietary
+proprieties
+proprietor
+proprietorial
+proprietorially
+proprietors
+proprietorship
+proprietress
+propriety
+proprioceptive
+props
+propulsion
+propulsive
+propylene
+pros
+prosaic
+prosaically
+prosaist
+proscenium
+proscribe
+proscribed
+proscription
+proscriptive
+prose
+prosecutable
+prosecute
+prosecuted
+prosecutes
+prosecuting
+prosecution
+prosecutions
+prosecutor
+prosecutorial
+prosecutors
+proselytise
+proselytising
+prosodic
+prosody
+prospect
+prospecting
+prospective
+prospectively
+prospector
+prospectors
+prospects
+prospectus
+prospectuses
+prosper
+prospered
+prospering
+prosperity
+prosperous
+prosperously
+prospers
+prostaglandin
+prostaglandins
+prostate
+prostates
+prostatic
+prosthesis
+prosthetic
+prostitute
+prostituted
+prostitutes
+prostituting
+prostitution
+prostrate
+prostrated
+prostrates
+prostrating
+prostration
+protactinium
+protagonist
+protagonists
+protea
+protean
+proteas
+protease
+protect
+protected
+protecting
+protection
+protectionism
+protectionist
+protectionists
+protections
+protective
+protectively
+protectiveness
+protector
+protectorate
+protectorates
+protectors
+protects
+protege
+protegee
+protegees
+proteges
+protein
+proteins
+protest
+protestant
+protestantism
+protestants
+protestation
+protestations
+protested
+protester
+protesters
+protesting
+protestor
+protestors
+protests
+protists
+protocol
+protocols
+proton
+protons
+protoplasm
+protoplasmic
+prototype
+prototyped
+prototypes
+prototypical
+prototyping
+protozoa
+protozoan
+protozoans
+protract
+protracted
+protractor
+protractors
+protrude
+protruded
+protrudes
+protruding
+protrusion
+protrusions
+protrusive
+protuberance
+protuberances
+proud
+prouder
+proudest
+proudly
+provable
+provably
+prove
+proved
+proven
+provenance
+provence
+proverb
+proverbial
+proverbially
+proverbs
+proves
+providable
+provide
+provided
+providence
+provident
+providential
+providentially
+provider
+providers
+provides
+providing
+province
+provinces
+provincial
+provincialism
+proving
+provision
+provisional
+provisionally
+provisioned
+provisioning
+provisions
+provocation
+provocations
+provocative
+provocatively
+provoke
+provoked
+provoker
+provokes
+provoking
+provokingly
+provost
+prow
+prowess
+prowl
+prowled
+prowler
+prowlers
+prowling
+prowls
+prows
+proxies
+proximal
+proximally
+proximate
+proximately
+proximity
+proximo
+proxy
+prude
+prudence
+prudent
+prudential
+prudently
+prudery
+prudish
+prudishness
+prune
+pruned
+pruners
+prunes
+pruning
+prunings
+prurience
+prurient
+pruritus
+prussia
+prussian
+prussic
+pry
+prying
+pryings
+psalm
+psalmist
+psalmody
+psalms
+psalter
+psalters
+psaltery
+psephologist
+pseudo
+pseudonym
+pseudonymous
+pseudonyms
+pseudopod
+psoriasis
+psyche
+psychedelia
+psychedelic
+psychiatric
+psychiatrist
+psychiatrists
+psychiatry
+psychic
+psychically
+psychics
+psycho
+psychoanalyse
+psychoanalysis
+psychoanalyst
+psychoanalysts
+psychoanalytic
+psychokinesis
+psychokinetic
+psycholinguistic
+psycholinguistics
+psycholinguists
+psychological
+psychologically
+psychologies
+psychologist
+psychologists
+psychology
+psychometric
+psychopath
+psychopathic
+psychopathology
+psychopaths
+psychoses
+psychosis
+psychosocial
+psychosomatic
+psychotherapist
+psychotherapists
+psychotherapy
+psychotic
+psychotically
+psychotics
+ptarmigan
+ptarmigans
+pterodactyl
+pterosaurs
+ptolemy
+pub
+puberty
+pubescent
+pubic
+public
+publican
+publicans
+publication
+publications
+publicise
+publicised
+publicises
+publicising
+publicist
+publicists
+publicity
+publicly
+publish
+publishable
+published
+publisher
+publishers
+publishes
+publishing
+pubs
+pudding
+puddings
+puddle
+puddles
+puerile
+puerility
+puerperal
+puff
+puffballs
+puffed
+puffer
+puffin
+puffiness
+puffing
+puffins
+puffs
+puffy
+pug
+pugilist
+pugilistic
+pugnacious
+pugnaciously
+pugnacity
+pugs
+puissant
+puke
+puking
+pulchritude
+puling
+pull
+pulled
+puller
+pullets
+pulley
+pulleys
+pulling
+pullover
+pullovers
+pulls
+pulmonary
+pulp
+pulped
+pulping
+pulpit
+pulpits
+pulps
+pulpy
+pulsar
+pulsars
+pulsate
+pulsated
+pulsates
+pulsating
+pulsation
+pulsations
+pulse
+pulsed
+pulses
+pulsing
+pulverisation
+pulverise
+pulverised
+pulverising
+puma
+pumas
+pumice
+pummel
+pummelled
+pummelling
+pummels
+pump
+pumped
+pumping
+pumpkin
+pumpkins
+pumps
+pun
+punch
+punchable
+punchbowl
+punchcard
+punched
+puncher
+punches
+punching
+punchline
+punchlines
+punchy
+punctate
+punctilious
+punctiliously
+punctual
+punctuality
+punctually
+punctuate
+punctuated
+punctuates
+punctuating
+punctuation
+punctuational
+punctuations
+puncture
+punctured
+punctures
+puncturing
+pundit
+pundits
+pungency
+pungent
+pungently
+punier
+puniest
+punish
+punishable
+punished
+punishes
+punishing
+punishment
+punishments
+punitive
+punitively
+punk
+punks
+punky
+punned
+punnet
+punning
+puns
+punster
+punt
+punted
+punter
+punters
+punting
+punts
+puny
+pup
+pupa
+pupae
+pupal
+pupated
+pupates
+pupating
+pupil
+pupillage
+pupils
+puppet
+puppeteer
+puppetry
+puppets
+puppies
+puppy
+puppyhood
+pups
+purblind
+purchasable
+purchase
+purchased
+purchaser
+purchasers
+purchases
+purchasing
+purdah
+pure
+puree
+purees
+purely
+pureness
+purer
+purest
+purgative
+purgatorial
+purgatory
+purge
+purged
+purges
+purging
+purgings
+purification
+purified
+purifier
+purifies
+purify
+purifying
+purims
+purines
+purist
+purists
+puritan
+puritanical
+puritanism
+puritans
+purities
+purity
+purl
+purlieus
+purling
+purlins
+purloin
+purloined
+purls
+purple
+purples
+purplish
+purport
+purported
+purportedly
+purporting
+purports
+purpose
+purposed
+purposeful
+purposefully
+purposefulness
+purposeless
+purposelessly
+purposely
+purposes
+purposing
+purposive
+purr
+purred
+purring
+purrs
+purse
+pursed
+purser
+purses
+pursing
+pursuance
+pursuant
+pursue
+pursued
+pursuer
+pursuers
+pursues
+pursuing
+pursuit
+pursuits
+purvey
+purveyance
+purveyed
+purveying
+purveyor
+purveyors
+purview
+pus
+push
+pushable
+pushed
+pusher
+pushers
+pushes
+pushier
+pushing
+pushovers
+pushups
+pushy
+puss
+pussy
+pussycat
+pussyfooting
+pustular
+pustule
+pustules
+put
+putative
+putatively
+putput
+putrefaction
+putrefy
+putrefying
+putrescent
+putrid
+putridity
+puts
+putsch
+putt
+putted
+putter
+putters
+putti
+putting
+putts
+putty
+puzzle
+puzzled
+puzzlement
+puzzler
+puzzles
+puzzling
+puzzlingly
+pygmies
+pygmy
+pyjama
+pyjamas
+pylon
+pylons
+pyracantha
+pyramid
+pyramidal
+pyramids
+pyre
+pyres
+pyridine
+pyrite
+pyrites
+pyrolyse
+pyrolysis
+pyromaniac
+pyromaniacs
+pyrotechnic
+pyrotechnics
+pyroxene
+pyroxenes
+python
+pythons
+qatar
+qua
+quack
+quacked
+quacking
+quackish
+quacks
+quadrangle
+quadrangles
+quadrangular
+quadrant
+quadrants
+quadratic
+quadratically
+quadratics
+quadrature
+quadratures
+quadrilateral
+quadrilaterals
+quadrille
+quadrilles
+quadripartite
+quadrophonic
+quadruped
+quadrupeds
+quadruple
+quadrupled
+quadruples
+quadruplets
+quadruplicate
+quadrupling
+quadruply
+quadrupole
+quaff
+quaffed
+quaffing
+quagga
+quaggas
+quagmire
+quagmires
+quail
+quailed
+quails
+quaint
+quainter
+quaintly
+quaintness
+quake
+quaked
+quaker
+quakers
+quakes
+quaking
+qualification
+qualifications
+qualified
+qualifier
+qualifiers
+qualifies
+qualify
+qualifying
+qualitative
+qualitatively
+qualities
+quality
+qualm
+qualms
+quantifiable
+quantification
+quantified
+quantifier
+quantifiers
+quantifies
+quantify
+quantifying
+quantisation
+quantise
+quantised
+quantitative
+quantitatively
+quantities
+quantity
+quantum
+quarantine
+quarantined
+quark
+quarks
+quarrel
+quarrelled
+quarrelling
+quarrels
+quarrelsome
+quarried
+quarries
+quarry
+quarrying
+quarrymen
+quart
+quarter
+quarterback
+quartered
+quartering
+quarterly
+quartermaster
+quarters
+quarterstaff
+quarterstaffs
+quartet
+quartets
+quartic
+quartics
+quartile
+quartiles
+quarto
+quarts
+quartz
+quartzite
+quasar
+quasars
+quash
+quashed
+quashing
+quasi
+quasilinear
+quaternary
+quaternion
+quaternions
+quatrain
+quatrains
+quaver
+quavered
+quavering
+quavers
+quay
+quays
+quayside
+queasiness
+queasy
+quebec
+queen
+queenly
+queens
+queer
+queerest
+queerly
+quell
+quelled
+quelling
+quells
+quench
+quenched
+quencher
+quenchers
+quenches
+quenching
+queried
+queries
+quern
+querulous
+querulously
+querulousness
+query
+querying
+quest
+questing
+question
+questionable
+questionably
+questioned
+questioner
+questioners
+questioning
+questioningly
+questionings
+questionnaire
+questionnaires
+questions
+quests
+queue
+queued
+queueing
+queues
+queuing
+quibble
+quibbles
+quibbling
+quiche
+quiches
+quick
+quicken
+quickened
+quickening
+quickens
+quicker
+quickest
+quicklime
+quickly
+quickness
+quicksand
+quicksands
+quicksilver
+quickwitted
+quid
+quids
+quiesce
+quiesced
+quiescence
+quiescent
+quiet
+quieted
+quieten
+quietened
+quietening
+quietens
+quieter
+quietest
+quieting
+quietly
+quietness
+quiets
+quietus
+quiff
+quill
+quills
+quilt
+quilted
+quilting
+quilts
+quince
+quincentenary
+quinces
+quinine
+quinquennial
+quintessence
+quintessential
+quintessentially
+quintet
+quintets
+quintic
+quintillion
+quintuple
+quip
+quipped
+quipper
+quips
+quire
+quirk
+quirkier
+quirkiest
+quirkiness
+quirks
+quirky
+quisling
+quit
+quite
+quits
+quitted
+quitter
+quitting
+quiver
+quivered
+quivering
+quiveringly
+quivers
+quixotic
+quiz
+quizzed
+quizzes
+quizzical
+quizzically
+quizzing
+quoins
+quoits
+quondam
+quorate
+quorum
+quota
+quotable
+quotas
+quotation
+quotations
+quote
+quoted
+quoter
+quotes
+quotidian
+quotient
+quotients
+quoting
+quovadis
+rabat
+rabats
+rabbi
+rabbis
+rabbit
+rabbiting
+rabbits
+rabble
+rabid
+rabidly
+rabies
+raccoon
+raccoons
+race
+racecourse
+racecourses
+raced
+racegoers
+racehorse
+racehorses
+racer
+racers
+races
+racetrack
+rachis
+racial
+racialism
+racialist
+racialists
+racially
+racier
+raciest
+racily
+racing
+racings
+racism
+racist
+racists
+rack
+racked
+racket
+racketeering
+rackets
+racking
+racks
+raconteur
+racoon
+racquet
+racquets
+racy
+rad
+radar
+radars
+radial
+radially
+radials
+radian
+radiance
+radiancy
+radians
+radiant
+radiantly
+radiate
+radiated
+radiates
+radiating
+radiation
+radiations
+radiative
+radiatively
+radiator
+radiators
+radical
+radicalism
+radically
+radicals
+radices
+radii
+radio
+radioactive
+radioactively
+radioactivity
+radioastronomical
+radiocarbon
+radioed
+radiogalaxies
+radiogalaxy
+radiogram
+radiograph
+radiographer
+radiographers
+radiographic
+radiographs
+radiography
+radioing
+radiological
+radiologist
+radiologists
+radiology
+radiometric
+radionuclide
+radios
+radiotherapy
+radish
+radishes
+radium
+radius
+radix
+radon
+raffia
+raffle
+raffled
+raffles
+raft
+rafter
+rafters
+rafting
+raftman
+rafts
+raftsman
+rag
+ragamuffin
+ragamuffins
+ragbag
+rage
+raged
+rages
+ragged
+raggedly
+raging
+ragout
+rags
+ragstoriches
+ragtime
+ragwort
+raid
+raided
+raider
+raiders
+raiding
+raids
+rail
+railed
+railes
+railing
+railings
+raillery
+railroad
+rails
+railway
+railwayman
+railwaymen
+railways
+raiment
+rain
+rainbow
+rainbows
+raincloud
+rainclouds
+raincoat
+raincoats
+raindrop
+raindrops
+rained
+rainfall
+rainforest
+rainforests
+rainier
+rainiest
+raining
+rainless
+rainout
+rains
+rainstorm
+rainstorms
+rainswept
+rainwater
+rainy
+raise
+raised
+raiser
+raises
+raisin
+raising
+raisins
+raj
+rajah
+rake
+raked
+rakes
+raking
+rakish
+rallied
+rallies
+rally
+rallying
+ram
+ramble
+rambled
+rambler
+ramblers
+rambles
+rambling
+ramblings
+ramification
+ramifications
+ramified
+ramifies
+ramify
+rammed
+rammer
+ramming
+ramp
+rampage
+rampaged
+rampages
+rampaging
+rampant
+rampantly
+rampart
+ramparts
+ramped
+ramping
+ramps
+ramrod
+rams
+ramshackle
+ran
+ranch
+rancher
+ranchers
+ranches
+ranching
+rancid
+rancorous
+rancour
+rand
+random
+randomisation
+randomise
+randomised
+randomising
+randomly
+randomness
+rands
+randy
+rang
+range
+ranged
+ranger
+rangers
+ranges
+ranging
+rangy
+rani
+ranis
+rank
+ranked
+ranker
+rankers
+rankest
+ranking
+rankings
+rankle
+rankled
+rankles
+rankling
+rankness
+ranks
+ransack
+ransacked
+ransacking
+ransom
+ransomed
+ransoming
+ransoms
+rant
+ranted
+ranter
+ranters
+ranting
+rantings
+rants
+rap
+rapacious
+rapacity
+rape
+raped
+rapes
+rapeseed
+rapid
+rapidity
+rapidly
+rapids
+rapier
+rapiers
+rapine
+raping
+rapist
+rapists
+rapped
+rapping
+rapport
+rapporteur
+rapporteurs
+rapports
+rapprochement
+raps
+rapt
+raptor
+raptors
+rapture
+raptures
+rapturous
+rapturously
+rare
+rarebit
+rarefaction
+rarefactions
+rarefied
+rarely
+rareness
+rarer
+rarest
+raring
+rarities
+rarity
+rascal
+rascally
+rascals
+rased
+rash
+rasher
+rashers
+rashes
+rashest
+rashly
+rashness
+rasing
+rasp
+raspberries
+raspberry
+rasped
+rasper
+rasping
+rasps
+raspy
+raster
+rasters
+rat
+ratatouille
+rate
+rated
+ratepayer
+ratepayers
+rater
+rates
+rather
+ratification
+ratifications
+ratified
+ratifier
+ratifies
+ratify
+ratifying
+rating
+ratings
+ratio
+ratiocination
+ration
+rational
+rationale
+rationales
+rationalisation
+rationalisations
+rationalise
+rationalised
+rationalising
+rationalism
+rationalist
+rationalistic
+rationalists
+rationalities
+rationality
+rationally
+rationed
+rationing
+rations
+ratios
+ratlike
+ratrace
+rats
+rattier
+rattle
+rattled
+rattler
+rattles
+rattlesnake
+rattlesnakes
+rattling
+ratty
+raucous
+raucously
+ravage
+ravaged
+ravages
+ravaging
+rave
+raved
+ravel
+ravelled
+ravelling
+ravels
+raven
+ravening
+ravenous
+ravenously
+ravens
+raver
+ravers
+raves
+ravine
+ravines
+raving
+ravingly
+ravings
+ravioli
+ravish
+ravished
+ravisher
+ravishes
+ravishing
+ravishingly
+raw
+rawest
+rawness
+ray
+rayed
+rayon
+rays
+raze
+razed
+razes
+razing
+razor
+razorbills
+razorblades
+razoring
+razors
+razorsharp
+razzmatazz
+re
+reabsorb
+reabsorbed
+reabsorption
+reaccept
+reaccessed
+reach
+reachable
+reached
+reaches
+reachieved
+reaching
+reacquainting
+reacquired
+reacquisition
+react
+reactant
+reactants
+reacted
+reacting
+reaction
+reactionaries
+reactionary
+reactions
+reactivate
+reactivated
+reactivates
+reactivating
+reactivation
+reactive
+reactivities
+reactivity
+reactor
+reactors
+reacts
+read
+readability
+readable
+readably
+readapt
+reader
+readers
+readership
+readerships
+readied
+readier
+readies
+readiest
+readily
+readiness
+reading
+readings
+readjust
+readjusted
+readjusting
+readjustment
+readjustments
+readmission
+readmit
+readmits
+readmitted
+reads
+ready
+readying
+readymade
+reaffirm
+reaffirmation
+reaffirmed
+reaffirming
+reaffirms
+reafforestation
+reagent
+reagents
+real
+realign
+realigned
+realigning
+realignment
+realignments
+realigns
+realisable
+realisation
+realisations
+realise
+realised
+realises
+realising
+realism
+realist
+realistic
+realistically
+realists
+realities
+reality
+reallife
+reallocate
+reallocated
+reallocates
+reallocating
+reallocation
+really
+realm
+realms
+realness
+realpolitik
+reals
+realty
+ream
+reams
+reanimated
+reanimating
+reap
+reaped
+reaper
+reapers
+reaping
+reappear
+reappearance
+reappeared
+reappearing
+reappears
+reapplied
+reapply
+reapplying
+reappoint
+reappointed
+reappointment
+reappraisal
+reappraised
+reappraising
+reaps
+rear
+reared
+rearer
+rearguard
+rearing
+rearm
+rearmament
+rearmed
+rearming
+rearms
+rearrange
+rearranged
+rearrangement
+rearrangements
+rearranges
+rearranging
+rears
+rearview
+rearward
+reason
+reasonable
+reasonableness
+reasonably
+reasoned
+reasoner
+reasoners
+reasoning
+reasonless
+reasons
+reassemble
+reassembled
+reassembling
+reassembly
+reassert
+reasserted
+reasserting
+reassertion
+reasserts
+reassess
+reassessed
+reassessment
+reassessments
+reassign
+reassigned
+reassigning
+reassignment
+reassigns
+reassume
+reassuming
+reassurance
+reassurances
+reassure
+reassured
+reassures
+reassuring
+reassuringly
+reattachment
+reattempt
+reawaken
+reawakened
+reawakening
+rebalanced
+rebate
+rebates
+rebel
+rebelled
+rebelling
+rebellion
+rebellions
+rebellious
+rebelliously
+rebelliousness
+rebels
+rebind
+rebirth
+rebirths
+rebook
+reboot
+rebooted
+reborn
+rebound
+rebounded
+rebounding
+rebounds
+rebuff
+rebuffed
+rebuffing
+rebuffs
+rebuild
+rebuilding
+rebuilds
+rebuilt
+rebuke
+rebuked
+rebukes
+rebuking
+reburial
+reburied
+rebury
+rebus
+rebut
+rebuttable
+rebuttal
+rebuttals
+rebutted
+rebutting
+recalcitrance
+recalcitrant
+recalculate
+recalculated
+recalculation
+recalibrate
+recalibrating
+recalibration
+recall
+recalled
+recalling
+recalls
+recant
+recantation
+recanted
+recanting
+recants
+recap
+recapitalisation
+recapitulate
+recapitulates
+recapitulation
+recapped
+recaps
+recapture
+recaptured
+recapturing
+recast
+recasting
+recasts
+recede
+receded
+recedes
+receding
+receipt
+receipted
+receipts
+receivable
+receive
+received
+receiver
+receivers
+receivership
+receives
+receiving
+recency
+recension
+recent
+recently
+receptacle
+receptacles
+reception
+receptionist
+receptionists
+receptions
+receptive
+receptiveness
+receptivity
+receptor
+receptors
+recess
+recessed
+recesses
+recession
+recessional
+recessionary
+recessions
+recessive
+recharge
+rechargeable
+recharged
+recharger
+recharges
+recharging
+recheck
+rechecked
+rechecking
+recidivism
+recidivist
+recidivists
+recipe
+recipes
+recipient
+recipients
+reciprocal
+reciprocally
+reciprocals
+reciprocate
+reciprocated
+reciprocating
+reciprocation
+reciprocity
+recirculate
+recirculated
+recirculating
+recirculation
+recital
+recitals
+recitation
+recitations
+recitative
+recitatives
+recite
+recited
+recites
+reciting
+reckless
+recklessly
+recklessness
+reckon
+reckoned
+reckoner
+reckoning
+reckons
+reclaim
+reclaimable
+reclaimed
+reclaimer
+reclaiming
+reclaims
+reclamation
+reclamations
+reclassification
+reclassified
+reclassifies
+reclassify
+reclassifying
+recline
+reclined
+recliner
+reclines
+reclining
+reclothe
+recluse
+recluses
+reclusive
+recode
+recoded
+recodes
+recoding
+recognisable
+recognisably
+recognisances
+recognise
+recognised
+recogniser
+recognisers
+recognises
+recognising
+recognition
+recognitions
+recoil
+recoiled
+recoiling
+recoils
+recollect
+recollected
+recollecting
+recollection
+recollections
+recollects
+recombinant
+recombinants
+recombination
+recombine
+recombined
+recombines
+recombining
+recommence
+recommenced
+recommencement
+recommences
+recommencing
+recommend
+recommendable
+recommendation
+recommendations
+recommended
+recommending
+recommends
+recommissioning
+recompense
+recompensed
+recompenses
+recompilation
+recompilations
+recompile
+recompiled
+recompiling
+recomputable
+recompute
+recomputed
+recomputes
+recomputing
+reconcilable
+reconcile
+reconciled
+reconcilement
+reconciles
+reconciliation
+reconciliations
+reconciling
+recondite
+reconditioned
+reconditioning
+reconfigurable
+reconfiguration
+reconfigurations
+reconfigure
+reconfigured
+reconfigures
+reconfiguring
+reconnaissance
+reconnect
+reconnected
+reconnecting
+reconnection
+reconnoitre
+reconnoitred
+reconnoitring
+reconquer
+reconquest
+reconsider
+reconsideration
+reconsidered
+reconsidering
+reconsiders
+reconstitute
+reconstituted
+reconstitutes
+reconstituting
+reconstitution
+reconstruct
+reconstructed
+reconstructing
+reconstruction
+reconstructions
+reconstructs
+reconsult
+reconsulted
+reconsulting
+recontribute
+reconvene
+reconvened
+reconvening
+reconversion
+reconvert
+reconverted
+recopied
+recopy
+record
+recordable
+recordbreaking
+recorded
+recorder
+recorders
+recording
+recordings
+recordist
+recordists
+records
+recount
+recounted
+recounting
+recounts
+recoup
+recouped
+recouping
+recouple
+recoups
+recourse
+recover
+recoverability
+recoverable
+recovered
+recoveries
+recovering
+recovers
+recovery
+recreate
+recreated
+recreates
+recreating
+recreation
+recreational
+recreations
+recriminate
+recrimination
+recriminations
+recruit
+recruited
+recruiter
+recruiters
+recruiting
+recruitment
+recruits
+recrystallisation
+rectal
+rectangle
+rectangles
+rectangular
+rectifiable
+rectification
+rectified
+rectifier
+rectifies
+rectify
+rectifying
+rectilinear
+rectitude
+recto
+rector
+rectors
+rectory
+rectrix
+rectum
+rectums
+recumbent
+recuperate
+recuperated
+recuperates
+recuperating
+recuperation
+recuperative
+recur
+recured
+recures
+recuring
+recurred
+recurrence
+recurrences
+recurrent
+recurrently
+recurring
+recurs
+recursion
+recursions
+recursive
+recursively
+recyclable
+recycle
+recycled
+recyclers
+recycles
+recycling
+red
+redaction
+redblooded
+redbreast
+redcoats
+redcross
+redden
+reddened
+reddening
+reddens
+redder
+reddest
+reddish
+redeclaration
+redecorated
+redecorating
+redecoration
+rededication
+redeem
+redeemable
+redeemed
+redeemer
+redeeming
+redeems
+redefine
+redefined
+redefiner
+redefines
+redefining
+redefinition
+redefinitions
+redeliver
+redelivery
+redemption
+redemptions
+redemptive
+redeploy
+redeployed
+redeploying
+redeployment
+redeposited
+redeposition
+redesign
+redesigned
+redesigning
+redesigns
+redevelop
+redeveloped
+redeveloping
+redevelopment
+redfaced
+redhanded
+redhead
+redheaded
+redheads
+redial
+redialling
+redirect
+redirected
+redirecting
+redirection
+redirects
+rediscover
+rediscovered
+rediscoveries
+rediscovering
+rediscovers
+rediscovery
+rediscussed
+redisplay
+redisplayed
+redistributable
+redistribute
+redistributed
+redistributes
+redistributing
+redistribution
+redistributions
+redistributive
+redneck
+redness
+redo
+redoing
+redolent
+redone
+redouble
+redoubled
+redoubling
+redoubt
+redoubtable
+redoubts
+redound
+redounded
+redox
+redraft
+redrafted
+redrafting
+redraw
+redrawing
+redrawn
+redraws
+redress
+redressed
+redressing
+reds
+redsea
+redshift
+redshifts
+redstarts
+redtape
+reduce
+reduced
+reducer
+reducers
+reduces
+reducibility
+reducible
+reducing
+reduction
+reductionism
+reductionist
+reductionists
+reductions
+reductive
+redundancies
+redundancy
+redundant
+redundantly
+redwood
+reed
+reeds
+reef
+reefed
+reefing
+reefs
+reek
+reeked
+reeking
+reeks
+reel
+reelects
+reeled
+reeling
+reels
+ref
+refer
+referable
+referee
+refereed
+refereeing
+referees
+reference
+referenced
+referencer
+references
+referencing
+referenda
+referendum
+referendums
+referent
+referential
+referentially
+referents
+referral
+referrals
+referred
+referring
+refers
+refile
+refiled
+refiling
+refill
+refillable
+refilled
+refilling
+refillings
+refills
+refinance
+refinanced
+refinancing
+refine
+refined
+refinement
+refinements
+refiner
+refineries
+refiners
+refinery
+refines
+refining
+refinish
+refit
+refits
+refitted
+refitting
+reflation
+reflect
+reflectance
+reflected
+reflecting
+reflection
+reflectional
+reflections
+reflective
+reflectively
+reflectiveness
+reflectivity
+reflector
+reflectors
+reflects
+reflex
+reflexes
+reflexion
+reflexions
+reflexive
+reflexively
+reflexiveness
+reflexivity
+reflexology
+refloat
+reflooring
+reflux
+refluxed
+refluxing
+refocus
+refocused
+refocuses
+refocusing
+refocussed
+refocusses
+refocussing
+refolded
+refolding
+reforestation
+reform
+reformable
+reformat
+reformation
+reformations
+reformative
+reformatted
+reformatting
+reformed
+reformer
+reformers
+reforming
+reformist
+reformists
+reforms
+reformulate
+reformulated
+reformulates
+reformulating
+reformulation
+reformulations
+refract
+refracted
+refracting
+refraction
+refractions
+refractive
+refractors
+refractory
+refracts
+refrain
+refrained
+refraining
+refrains
+refreeze
+refresh
+refreshable
+refreshed
+refresher
+refreshes
+refreshing
+refreshingly
+refreshment
+refreshments
+refrigerant
+refrigerants
+refrigerate
+refrigerated
+refrigeration
+refrigerator
+refrigerators
+refs
+refuel
+refuelled
+refuelling
+refuels
+refuge
+refugee
+refugees
+refuges
+refund
+refundable
+refunded
+refunding
+refunds
+refurbish
+refurbished
+refurbishing
+refurbishment
+refurbishments
+refusal
+refusals
+refuse
+refused
+refuseniks
+refuses
+refusing
+refutable
+refutation
+refutations
+refute
+refuted
+refutes
+refuting
+regain
+regained
+regaining
+regains
+regal
+regale
+regaled
+regales
+regalia
+regaling
+regality
+regally
+regard
+regarded
+regarding
+regardless
+regards
+regatta
+regattas
+regelate
+regency
+regenerate
+regenerated
+regenerates
+regenerating
+regeneration
+regenerations
+regenerative
+regent
+regents
+reggae
+regicide
+regime
+regimen
+regimens
+regiment
+regimental
+regimentation
+regimented
+regiments
+regimes
+regina
+reginas
+region
+regional
+regionalisation
+regionalism
+regionally
+regions
+register
+registered
+registering
+registers
+registrable
+registrar
+registrars
+registration
+registrations
+registries
+registry
+regrading
+regress
+regressed
+regresses
+regressing
+regression
+regressions
+regressive
+regret
+regretful
+regretfully
+regrets
+regrettable
+regrettably
+regretted
+regretting
+regroup
+regrouped
+regrouping
+regrow
+regrowth
+regular
+regularisation
+regularise
+regularised
+regularities
+regularity
+regularly
+regulars
+regulate
+regulated
+regulates
+regulating
+regulation
+regulations
+regulative
+regulator
+regulators
+regulatory
+regurgitate
+regurgitated
+regurgitating
+regurgitation
+rehabilitate
+rehabilitated
+rehabilitating
+rehabilitation
+rehash
+rehashed
+rehashes
+rehashing
+reheard
+rehearing
+rehears
+rehearsal
+rehearsals
+rehearse
+rehearsed
+rehearses
+rehearsing
+reheat
+reheated
+reheating
+reheats
+rehouse
+rehoused
+rehousing
+rehydrate
+reich
+reification
+reify
+reign
+reigned
+reigning
+reigns
+reimburse
+reimbursed
+reimbursement
+reimburses
+reimbursing
+reimplementation
+reimplemented
+reimplementing
+reimporting
+reimpose
+reimposed
+rein
+reincarnate
+reincarnated
+reincarnating
+reincarnation
+reincarnations
+reindeer
+reined
+reinfection
+reinforce
+reinforced
+reinforcement
+reinforcements
+reinforces
+reinforcing
+reining
+reinitialisation
+reinitialise
+reinitialised
+reinitialising
+reins
+reinsert
+reinserted
+reinstall
+reinstalled
+reinstalling
+reinstate
+reinstated
+reinstatement
+reinstates
+reinstating
+reinsurance
+reintegration
+reinterpret
+reinterpretation
+reinterpreted
+reinterpreting
+reintroduce
+reintroduced
+reintroduces
+reintroducing
+reintroduction
+reintroductions
+reinvent
+reinvented
+reinventing
+reinvention
+reinventions
+reinvents
+reinvest
+reinvested
+reinvestigation
+reinvestment
+reinvigorate
+reinvigorated
+reissue
+reissued
+reissues
+reissuing
+reiterate
+reiterated
+reiterates
+reiterating
+reiteration
+reject
+rejected
+rejecting
+rejection
+rejections
+rejects
+rejoice
+rejoiced
+rejoices
+rejoicing
+rejoicings
+rejoin
+rejoinder
+rejoinders
+rejoined
+rejoining
+rejoins
+rejustified
+rejuvenate
+rejuvenated
+rejuvenating
+rejuvenation
+rejuvenations
+rejuvenatory
+rekindle
+rekindled
+relabel
+relabelled
+relabelling
+relabellings
+relaid
+relapse
+relapsed
+relapses
+relapsing
+relate
+related
+relatedness
+relates
+relating
+relation
+relational
+relationally
+relations
+relationship
+relationships
+relative
+relatively
+relatives
+relativism
+relativist
+relativistic
+relativistically
+relativists
+relativity
+relator
+relaunch
+relaunched
+relaunching
+relax
+relaxant
+relaxants
+relaxation
+relaxations
+relaxed
+relaxes
+relaxing
+relaxingly
+relay
+relayed
+relaying
+relays
+relearn
+relearning
+releasable
+release
+released
+releases
+releasing
+relegate
+relegated
+relegates
+relegating
+relegation
+relent
+relented
+relenting
+relentless
+relentlessly
+relentlessness
+relents
+relevance
+relevancy
+relevant
+relevantly
+reliabilities
+reliability
+reliable
+reliably
+reliance
+reliant
+relic
+relics
+relict
+relicts
+relied
+relief
+reliefs
+relies
+relieve
+relieved
+relieves
+relieving
+relight
+relighting
+religion
+religions
+religiosity
+religious
+religiously
+religiousness
+relined
+relink
+relinked
+relinking
+relinquish
+relinquished
+relinquishes
+relinquishing
+reliquaries
+reliquary
+relish
+relished
+relishes
+relishing
+relit
+relive
+relived
+relives
+reliving
+reload
+reloaded
+reloading
+reloads
+relocatable
+relocate
+relocated
+relocates
+relocating
+relocation
+relocations
+relocked
+reluctance
+reluctant
+reluctantly
+rely
+relying
+rem
+remade
+remain
+remainder
+remaindered
+remaindering
+remainders
+remained
+remaining
+remains
+remake
+remakes
+remaking
+remand
+remanded
+remands
+remap
+remaps
+remark
+remarkable
+remarkably
+remarked
+remarking
+remarks
+remarriage
+remarried
+remarry
+remaster
+remastered
+remastering
+remasters
+rematch
+rematching
+rematerialised
+remediable
+remedial
+remedied
+remedies
+remedy
+remedying
+remember
+remembered
+remembering
+remembers
+remembrance
+remembrances
+remind
+reminded
+reminder
+reminders
+reminding
+reminds
+reminisce
+reminisced
+reminiscence
+reminiscences
+reminiscent
+reminiscently
+reminisces
+reminiscing
+remiss
+remission
+remissions
+remit
+remits
+remittal
+remittance
+remittances
+remitted
+remitting
+remix
+remixed
+remixes
+remnant
+remnants
+remodel
+remodelled
+remodelling
+remonstrance
+remonstrate
+remonstrated
+remonstrating
+remonstration
+remonstrations
+remorse
+remorseful
+remorsefully
+remorseless
+remorselessly
+remote
+remotely
+remoteness
+remoter
+remotest
+remould
+remount
+remounted
+remounts
+removable
+removal
+removals
+remove
+removed
+remover
+removers
+removes
+removing
+remunerate
+remunerated
+remuneration
+remunerative
+remus
+renaissance
+renal
+rename
+renamed
+renames
+renaming
+render
+rendered
+rendering
+renderings
+renders
+rendezvous
+rendezvoused
+rending
+rendition
+renditions
+rends
+renegade
+renegades
+renege
+reneged
+reneging
+renegotiate
+renegotiated
+renegotiating
+renegotiation
+renew
+renewable
+renewal
+renewals
+renewed
+renewing
+renews
+renormalisation
+renounce
+renounced
+renouncement
+renounces
+renouncing
+renovate
+renovated
+renovating
+renovation
+renovations
+renown
+renowned
+rent
+rental
+rentals
+rented
+renter
+renters
+rentiers
+renting
+rents
+renumber
+renumbered
+renumbering
+renunciation
+renunciations
+reoccupation
+reoccupied
+reoccupy
+reoccupying
+reoccur
+reopen
+reopened
+reopening
+reopens
+reorder
+reordered
+reordering
+reorders
+reorganisation
+reorganisations
+reorganise
+reorganised
+reorganises
+reorganising
+reorientated
+reorientates
+reorientation
+rep
+repack
+repackage
+repackaged
+repacked
+repacking
+repaid
+repaint
+repainted
+repainting
+repair
+repairable
+repaired
+repairer
+repairers
+repairing
+repairman
+repairs
+repaper
+reparation
+reparations
+repartee
+repartition
+repartitioned
+repartitioning
+repast
+repasts
+repatriate
+repatriated
+repatriating
+repatriation
+repatriations
+repay
+repayable
+repaying
+repayment
+repayments
+repays
+repeal
+repealed
+repealing
+repeals
+repeat
+repeatability
+repeatable
+repeatably
+repeated
+repeatedly
+repeater
+repeaters
+repeating
+repeats
+repel
+repelled
+repellent
+repelling
+repellingly
+repels
+repent
+repentance
+repentant
+repentantly
+repented
+repenting
+repents
+repercussion
+repercussions
+repertoire
+repertoires
+repertory
+repetition
+repetitions
+repetitious
+repetitive
+repetitively
+repetitiveness
+rephrase
+rephrased
+rephrases
+rephrasing
+repine
+repined
+repining
+replace
+replaceable
+replaced
+replacement
+replacements
+replaces
+replacing
+replanning
+replant
+replanted
+replanting
+replay
+replayed
+replaying
+replays
+replenish
+replenished
+replenishing
+replenishment
+replete
+replica
+replicable
+replicas
+replicate
+replicated
+replicates
+replicating
+replication
+replications
+replicator
+replicators
+replied
+replier
+repliers
+replies
+replotted
+replug
+replugged
+replugging
+reply
+replying
+repopulate
+repopulated
+report
+reportable
+reportage
+reported
+reportedly
+reporter
+reporters
+reporting
+reports
+repose
+reposed
+reposes
+reposing
+reposition
+repositioned
+repositioning
+repositions
+repositories
+repository
+repossess
+repossessed
+repossessing
+repossession
+repossessions
+reprehend
+reprehensible
+represent
+representable
+representation
+representational
+representations
+representative
+representativeness
+representatives
+represented
+representing
+represents
+repress
+repressed
+represses
+repressing
+repression
+repressions
+repressive
+repressively
+reprieve
+reprieved
+reprimand
+reprimanded
+reprimanding
+reprimands
+reprint
+reprinted
+reprinting
+reprints
+reprisal
+reprisals
+reprise
+reproach
+reproached
+reproaches
+reproachful
+reproachfully
+reproachfulness
+reproaching
+reprobate
+reprobates
+reprocess
+reprocessed
+reprocessing
+reproduce
+reproduced
+reproduces
+reproducibility
+reproducible
+reproducibly
+reproducing
+reproduction
+reproductions
+reproductive
+reproductively
+reprogram
+reprogrammable
+reprogramme
+reprogrammed
+reprogramming
+reprojected
+reproof
+reproofs
+reprove
+reproved
+reprovingly
+reps
+reptile
+reptiles
+reptilian
+reptilians
+republic
+republican
+republicanism
+republicans
+republication
+republics
+republish
+republished
+republishes
+republishing
+repudiate
+repudiated
+repudiates
+repudiating
+repudiation
+repugnance
+repugnant
+repulse
+repulsed
+repulsing
+repulsion
+repulsions
+repulsive
+repulsively
+repulsiveness
+repurchase
+reputable
+reputably
+reputation
+reputations
+repute
+reputed
+reputedly
+reputes
+request
+requested
+requester
+requesting
+requests
+requiem
+requiems
+require
+required
+requirement
+requirements
+requires
+requiring
+requisite
+requisites
+requisition
+requisitioned
+requisitioning
+requisitions
+requital
+requite
+requited
+reran
+reread
+rereading
+rereads
+reregistration
+rerolled
+reroute
+rerouted
+rerouteing
+reroutes
+rerouting
+rerun
+rerunning
+reruns
+resale
+rescale
+rescaled
+rescales
+rescaling
+rescan
+rescanned
+rescanning
+rescans
+reschedule
+rescheduled
+rescheduling
+rescind
+rescinded
+rescinding
+rescue
+rescued
+rescuer
+rescuers
+rescues
+rescuing
+resea
+resealed
+research
+researched
+researcher
+researchers
+researches
+researching
+reseated
+reseeding
+reselect
+reselected
+reselection
+resell
+reseller
+resellers
+reselling
+resemblance
+resemblances
+resemble
+resembled
+resembles
+resembling
+resend
+resending
+resent
+resented
+resentful
+resentfully
+resenting
+resentment
+resentments
+resents
+reservation
+reservations
+reserve
+reserved
+reserver
+reserves
+reserving
+reservists
+reservoir
+reservoirs
+reset
+resets
+resettable
+resetting
+resettle
+resettled
+resettlement
+resettling
+reshape
+reshaped
+reshapes
+reshaping
+resharpen
+resharpened
+resharpening
+reshow
+reshowing
+reshuffle
+reshuffled
+reshuffles
+reshuffling
+reside
+resided
+residence
+residences
+residency
+resident
+residential
+residents
+resides
+residing
+residual
+residuals
+residuary
+residue
+residues
+residuum
+resign
+resignal
+resignation
+resignations
+resigned
+resignedly
+resigning
+resigns
+resilience
+resilient
+resin
+resinous
+resins
+resiny
+resist
+resistance
+resistances
+resistant
+resisted
+resistible
+resisting
+resistive
+resistively
+resistivity
+resistor
+resistors
+resists
+resit
+resiting
+resits
+resize
+resizing
+resold
+resolute
+resolutely
+resolution
+resolutions
+resolvability
+resolvable
+resolve
+resolved
+resolvent
+resolver
+resolvers
+resolves
+resolving
+resonance
+resonances
+resonant
+resonantly
+resonate
+resonated
+resonates
+resonating
+resonator
+resonators
+resort
+resorted
+resorting
+resorts
+resound
+resounded
+resounding
+resoundingly
+resounds
+resource
+resourced
+resourceful
+resourcefulness
+resources
+resourcing
+respecified
+respecify
+respect
+respectability
+respectable
+respectably
+respected
+respectful
+respectfully
+respecting
+respective
+respectively
+respects
+respiration
+respirator
+respirators
+respiratory
+respire
+respired
+respite
+resplendent
+respond
+responded
+respondent
+respondents
+responder
+responders
+responding
+responds
+response
+responses
+responsibilities
+responsibility
+responsible
+responsibly
+responsive
+responsively
+responsiveness
+respray
+resprayed
+resprays
+rest
+restart
+restartable
+restarted
+restarting
+restarts
+restate
+restated
+restatement
+restates
+restating
+restaurant
+restaurants
+restaurateur
+restaurateurs
+rested
+restful
+restfulness
+resting
+restitution
+restive
+restiveness
+restless
+restlessly
+restlessness
+restock
+restocking
+restoration
+restorations
+restorative
+restore
+restored
+restorer
+restorers
+restores
+restoring
+restrain
+restrained
+restraining
+restrains
+restraint
+restraints
+restrict
+restricted
+restricting
+restriction
+restrictions
+restrictive
+restrictively
+restricts
+restroom
+restructure
+restructured
+restructures
+restructuring
+rests
+restyled
+resubmission
+resubmissions
+resubmit
+resubmits
+resubmitted
+resubmitting
+resubstitute
+result
+resultant
+resulted
+resulting
+results
+resume
+resumed
+resumes
+resuming
+resumption
+resupply
+resurface
+resurfaced
+resurfacing
+resurgence
+resurgent
+resurrect
+resurrected
+resurrecting
+resurrection
+resurrects
+resuscitate
+resuscitated
+resuscitating
+resuscitation
+retail
+retailed
+retailer
+retailers
+retailing
+retails
+retain
+retained
+retainer
+retainers
+retaining
+retains
+retake
+retaken
+retakes
+retaking
+retaliate
+retaliated
+retaliates
+retaliating
+retaliation
+retaliatory
+retard
+retardant
+retardation
+retarded
+retarding
+retards
+retch
+retched
+retching
+retell
+retelling
+retention
+retentions
+retentive
+retentiveness
+retentivity
+retest
+retested
+retesting
+retests
+rethink
+rethinking
+rethought
+reticence
+reticent
+reticular
+reticulated
+reticulation
+reticule
+reticules
+reticulum
+retied
+retina
+retinal
+retinas
+retinitis
+retinue
+retinues
+retire
+retired
+retiree
+retirement
+retirements
+retires
+retiring
+retitle
+retitled
+retitling
+retold
+retook
+retort
+retorted
+retorting
+retorts
+retouch
+retouched
+retouching
+retrace
+retraced
+retraces
+retracing
+retract
+retractable
+retracted
+retracting
+retraction
+retractions
+retracts
+retrain
+retrained
+retraining
+retral
+retransmission
+retransmissions
+retransmit
+retransmits
+retransmitted
+retransmitting
+retread
+retreads
+retreat
+retreated
+retreating
+retreats
+retrench
+retrenchment
+retrial
+retribution
+retributive
+retried
+retries
+retrievable
+retrieval
+retrievals
+retrieve
+retrieved
+retriever
+retrievers
+retrieves
+retrieving
+retro
+retroactive
+retroactively
+retrofit
+retrofitted
+retrofitting
+retrograde
+retrogressive
+retrospect
+retrospection
+retrospective
+retrospectively
+retrospectives
+retroviruses
+retry
+retrying
+retsina
+retted
+retune
+retuning
+return
+returnable
+returned
+returnees
+returning
+returns
+retype
+retyped
+retypes
+retyping
+reunification
+reunified
+reunify
+reunion
+reunions
+reunite
+reunited
+reunites
+reuniting
+reusable
+reuse
+reused
+reuses
+reusing
+rev
+revaluation
+revaluations
+revalue
+revalued
+revalues
+revamp
+revamped
+revamping
+revamps
+revanchist
+reveal
+revealable
+revealed
+revealing
+revealingly
+reveals
+reveille
+revel
+revelation
+revelations
+revelatory
+revelled
+reveller
+revellers
+revelling
+revelries
+revelry
+revels
+revenant
+revenge
+revenged
+revengeful
+revenges
+revenging
+revenue
+revenues
+reverberant
+reverberate
+reverberated
+reverberates
+reverberating
+reverberation
+reverberations
+revere
+revered
+reverence
+reverend
+reverent
+reverential
+reverentially
+reverently
+reveres
+reverie
+reveries
+revering
+reversal
+reversals
+reverse
+reversed
+reverser
+reverses
+reversibility
+reversible
+reversibly
+reversing
+reversion
+revert
+reverted
+reverting
+reverts
+review
+reviewable
+reviewed
+reviewer
+reviewers
+reviewing
+reviews
+revile
+reviled
+reviling
+revisable
+revisal
+revise
+revised
+reviser
+revises
+revising
+revision
+revisionary
+revisionism
+revisionist
+revisionists
+revisions
+revisit
+revisited
+revisiting
+revisits
+revitalisation
+revitalise
+revitalised
+revitalising
+revival
+revivalism
+revivalist
+revivalists
+revivals
+revive
+revived
+reviver
+revives
+revivify
+revivifying
+reviving
+revocable
+revocation
+revocations
+revoke
+revoked
+revoker
+revokers
+revokes
+revoking
+revolt
+revolted
+revolting
+revoltingly
+revolts
+revolution
+revolutionaries
+revolutionary
+revolutionise
+revolutionised
+revolutionises
+revolutionising
+revolutions
+revolve
+revolved
+revolver
+revolvers
+revolves
+revolving
+revs
+revue
+revues
+revulsion
+revved
+revving
+reward
+rewarded
+rewarding
+rewards
+reweighed
+rewind
+rewindable
+rewinding
+rewinds
+rewire
+rewired
+rewiring
+reword
+reworded
+rewording
+rewordings
+rework
+reworked
+reworking
+reworks
+rewound
+rewrap
+rewritable
+rewrite
+rewrites
+rewriting
+rewritings
+rewritten
+rewrote
+rhapsodic
+rhapsodical
+rhapsodies
+rhapsody
+rhea
+rhein
+rhenium
+rheological
+rheology
+rheostat
+rhesus
+rhetoric
+rhetorical
+rhetorically
+rhetorician
+rhetoricians
+rheumatic
+rheumatics
+rheumatism
+rheumatoid
+rheumatology
+rhine
+rhinestone
+rhinitis
+rhino
+rhinoceros
+rhinoceroses
+rhizome
+rho
+rhodesia
+rhodium
+rhododendron
+rhododendrons
+rhombic
+rhomboids
+rhombus
+rhombuses
+rhubarb
+rhumbas
+rhyme
+rhymed
+rhymer
+rhymes
+rhyming
+rhythm
+rhythmic
+rhythmical
+rhythmically
+rhythms
+ria
+rial
+rials
+rialto
+rib
+ribald
+ribaldry
+ribbed
+ribbing
+ribbon
+ribbons
+ribcage
+riboflavin
+ribonucleic
+ribosomal
+ribosome
+ribosomes
+ribs
+rice
+rich
+richer
+riches
+richest
+richly
+richness
+rick
+rickets
+rickety
+ricking
+ricks
+ricksha
+rickshas
+rickshaw
+rickshaws
+ricochet
+ricocheted
+ricocheting
+rid
+riddance
+ridden
+ridding
+riddle
+riddled
+riddles
+riddling
+ride
+rider
+riders
+rides
+ridge
+ridged
+ridges
+ridicule
+ridiculed
+ridicules
+ridiculing
+ridiculous
+ridiculously
+ridiculousness
+riding
+ridings
+rids
+rife
+riff
+riffle
+riffled
+riffs
+rifle
+rifled
+rifleman
+riflemen
+rifles
+rifling
+riflings
+rift
+rifting
+rifts
+rig
+rigged
+rigger
+riggers
+rigging
+right
+righted
+righten
+righteous
+righteously
+righteousness
+righter
+rightful
+rightfully
+righthand
+righthanded
+righthandedness
+righthander
+righthanders
+righting
+rightist
+rightly
+rightminded
+rightmost
+rightness
+rights
+rightthinking
+rightward
+rightwards
+rightwing
+rightwinger
+rightwingers
+rigid
+rigidifies
+rigidify
+rigidities
+rigidity
+rigidly
+rigmarole
+rigor
+rigorous
+rigorously
+rigour
+rigours
+rigs
+rile
+riled
+riles
+riling
+rill
+rills
+rim
+rime
+rimless
+rimmed
+rims
+rind
+rinds
+ring
+ringed
+ringer
+ringers
+ringing
+ringingly
+ringleader
+ringleaders
+ringless
+ringlet
+ringlets
+ringmaster
+rings
+ringside
+ringworm
+rink
+rinks
+rinse
+rinsed
+rinses
+rinsing
+riot
+rioted
+rioter
+rioters
+rioting
+riotous
+riotously
+riots
+rip
+ripcord
+ripe
+ripely
+ripen
+ripened
+ripeness
+ripening
+ripens
+riper
+ripest
+riping
+ripoff
+riposte
+riposted
+ripostes
+ripped
+ripper
+rippers
+ripping
+ripple
+rippled
+ripples
+rippling
+rips
+ripstop
+rise
+risen
+riser
+risers
+rises
+risible
+rising
+risings
+risk
+risked
+riskier
+riskiest
+riskiness
+risking
+risks
+risky
+risotto
+risque
+rissole
+rissoles
+rite
+rites
+ritual
+ritualised
+ritualistic
+ritualistically
+ritually
+rituals
+rival
+rivalled
+rivalling
+rivalries
+rivalry
+rivals
+riven
+river
+riverine
+rivers
+riverside
+rivet
+riveted
+riveter
+riveting
+rivetingly
+rivets
+riviera
+rivulet
+rivulets
+roach
+roaches
+road
+roadblock
+roadblocks
+roadhouse
+roadmap
+roads
+roadshow
+roadshows
+roadside
+roadsides
+roadsigns
+roadster
+roadsweepers
+roadway
+roadways
+roadworks
+roadworthy
+roam
+roamed
+roamer
+roaming
+roams
+roan
+roar
+roared
+roarer
+roaring
+roars
+roast
+roasted
+roaster
+roasting
+roasts
+rob
+robbed
+robber
+robberies
+robbers
+robbery
+robbing
+robe
+robed
+robes
+robin
+robins
+robot
+robotic
+robotics
+robots
+robs
+robust
+robustly
+robustness
+roc
+rock
+rockbottom
+rocked
+rocker
+rockers
+rockery
+rocket
+rocketed
+rocketing
+rocketry
+rockets
+rockfall
+rockfalls
+rockier
+rockiest
+rocking
+rocks
+rocksolid
+rocky
+rococo
+rocs
+rod
+rode
+rodent
+rodents
+rodeo
+rodeos
+rods
+roe
+roebuck
+roentgen
+roes
+rogue
+roguery
+rogues
+roguish
+roguishly
+roguishness
+roister
+roistering
+role
+roles
+roll
+rollcall
+rolled
+roller
+rollercoaster
+rollers
+rollerskating
+rollicking
+rolling
+rolls
+rolypoly
+rom
+roman
+romance
+romanced
+romancer
+romances
+romancing
+romans
+romantic
+romantically
+romanticised
+romanticises
+romanticising
+romanticism
+romantics
+romany
+rome
+rommel
+romp
+romped
+romper
+romping
+romps
+romulus
+rondavel
+roo
+roof
+roofed
+roofer
+roofgarden
+roofing
+roofings
+roofless
+roofs
+rooftop
+rooftops
+rooibos
+rook
+rookeries
+rookery
+rookies
+rooks
+room
+roomful
+roomier
+roomiest
+roommate
+rooms
+roomy
+roost
+roosted
+rooster
+roosters
+roosting
+roosts
+root
+rooted
+rooting
+rootings
+rootless
+roots
+rope
+roped
+ropes
+roping
+rosaries
+rosary
+rose
+rosebud
+rosebuds
+rosebush
+rosemary
+roses
+rosette
+rosettes
+rosewood
+rosier
+rosiest
+rosily
+rosin
+roster
+rostering
+rosters
+rostrum
+rostrums
+rosy
+rot
+rota
+rotary
+rotas
+rotatable
+rotate
+rotated
+rotates
+rotating
+rotation
+rotational
+rotationally
+rotations
+rotator
+rotators
+rotatory
+rote
+rotor
+rotors
+rots
+rotted
+rotten
+rottenly
+rottenness
+rotter
+rotting
+rotund
+rotunda
+rotundity
+rouble
+roubles
+rouge
+rouged
+rouges
+rough
+roughage
+roughed
+roughen
+roughened
+roughens
+rougher
+roughest
+roughie
+roughing
+roughly
+roughness
+roughs
+roughshod
+roulette
+round
+roundabout
+roundabouts
+rounded
+roundel
+roundels
+rounder
+rounders
+roundest
+roundhouse
+rounding
+roundish
+roundly
+roundness
+rounds
+roundtheclock
+roundup
+roundups
+rouse
+roused
+rouses
+rousing
+rout
+route
+routed
+routeing
+router
+routers
+routes
+routine
+routinely
+routines
+routing
+routs
+rove
+roved
+rover
+rovers
+roves
+roving
+rovings
+row
+rowboat
+rowboats
+rowdier
+rowdiest
+rowdily
+rowdiness
+rowdy
+rowdyism
+rowed
+rower
+rowers
+rowing
+rows
+royal
+royalist
+royalists
+royally
+royals
+royalties
+royalty
+ruanda
+rub
+rubbed
+rubber
+rubberised
+rubbers
+rubberstamp
+rubberstamped
+rubberstamping
+rubbery
+rubbing
+rubbings
+rubbish
+rubbished
+rubbishes
+rubbishing
+rubbishy
+rubble
+rubbles
+rubella
+rubicon
+rubicund
+rubidium
+rubies
+rubric
+rubs
+ruby
+ruck
+rucks
+rucksack
+rucksacks
+ruction
+ructions
+rudder
+rudderless
+rudders
+ruddiness
+ruddy
+rude
+rudely
+rudeness
+ruder
+rudest
+rudimentary
+rudiments
+rue
+rueful
+ruefully
+ruefulness
+rues
+ruff
+ruffian
+ruffians
+ruffle
+ruffled
+ruffles
+ruffling
+ruffs
+rug
+rugby
+rugged
+ruggedly
+ruggedness
+rugs
+ruin
+ruination
+ruinations
+ruined
+ruiner
+ruining
+ruinous
+ruinously
+ruins
+rule
+rulebook
+rulebooks
+ruled
+ruler
+rulers
+rules
+ruling
+rulings
+rum
+rumania
+rumba
+rumbas
+rumble
+rumbled
+rumbles
+rumbling
+rumblings
+rumbustious
+rumen
+ruminant
+ruminants
+ruminate
+ruminated
+ruminating
+rumination
+ruminations
+ruminative
+ruminatively
+rummage
+rummaged
+rummages
+rummaging
+rummy
+rumour
+rumoured
+rumours
+rump
+rumple
+rumpled
+rumpling
+rumps
+rumpus
+rumpuses
+run
+runaway
+rundown
+rune
+runes
+rung
+rungs
+runnable
+runner
+runners
+runnersup
+runnerup
+runnier
+runniest
+running
+runny
+runofthemill
+runs
+runt
+runts
+runway
+runways
+rupee
+rupees
+rupert
+rupture
+ruptured
+ruptures
+rupturing
+rural
+ruralist
+rurally
+ruse
+rush
+rushed
+rushes
+rushhour
+rushier
+rushing
+rusk
+rusks
+russet
+russia
+russian
+rust
+rusted
+rustic
+rustically
+rusticate
+rusticated
+rusticity
+rustics
+rustier
+rustiest
+rustiness
+rusting
+rustle
+rustled
+rustler
+rustlers
+rustles
+rustling
+rustproof
+rusts
+rusty
+rut
+ruth
+ruthless
+ruthlessly
+ruthlessness
+ruts
+rutted
+rwanda
+rye
+sabbat
+sabbath
+sabbaths
+sabbatical
+sabbaticals
+saber
+sable
+sables
+sabotage
+sabotaged
+sabotages
+sabotaging
+saboteur
+saboteurs
+sabra
+sabras
+sabre
+sabres
+sabretoothed
+sac
+saccharides
+saccharin
+saccharine
+sacerdotal
+sachet
+sachets
+sack
+sackcloth
+sacked
+sackful
+sackfuls
+sacking
+sacks
+sacral
+sacrament
+sacramental
+sacraments
+sacred
+sacredly
+sacredness
+sacrifice
+sacrificed
+sacrifices
+sacrificial
+sacrificing
+sacrilege
+sacrilegious
+sacristy
+sacrosanct
+sacrum
+sacs
+sad
+sadden
+saddened
+saddening
+saddens
+sadder
+saddest
+saddle
+saddlebag
+saddlebags
+saddled
+saddler
+saddlers
+saddles
+saddling
+sadism
+sadist
+sadistic
+sadistically
+sadists
+sadly
+sadness
+sadomasochism
+sadomasochistic
+sadsack
+safari
+safaris
+safe
+safeguard
+safeguarded
+safeguarding
+safeguards
+safely
+safeness
+safer
+safes
+safest
+safeties
+safety
+saffron
+sag
+saga
+sagacious
+sagaciously
+sagacity
+sagas
+sage
+sagely
+sages
+sagest
+sagged
+sagging
+sago
+sags
+sahara
+sahib
+said
+saigon
+sail
+sailcloth
+sailed
+sailer
+sailing
+sailings
+sailmaker
+sailor
+sailors
+sails
+saint
+sainted
+sainthood
+saintlier
+saintliest
+saintliness
+saintly
+saints
+saipan
+sake
+sakes
+saki
+salaam
+salacious
+salad
+salads
+salamander
+salamanders
+salami
+salamis
+salaried
+salaries
+salary
+sale
+saleability
+saleable
+salem
+sales
+salesgirl
+salesman
+salesmanship
+salesmen
+salespeople
+salesperson
+saleswoman
+salicylic
+salience
+salient
+saline
+salinity
+saliva
+salivary
+salivas
+salivate
+salivating
+salivation
+salivations
+sallied
+sallies
+sallow
+sally
+sallying
+salmon
+salmonella
+salmons
+salome
+salon
+salons
+saloon
+saloons
+salsa
+salt
+salted
+saltier
+saltiest
+saltiness
+saltpetre
+salts
+saltwater
+salty
+salubrious
+salubrity
+salutary
+salutation
+salutations
+salute
+saluted
+salutes
+saluting
+salvage
+salvageable
+salvaged
+salvager
+salvages
+salvaging
+salvation
+salve
+salved
+salver
+salvers
+salving
+salvo
+sam
+samba
+sambas
+same
+sameness
+samizdat
+samoa
+samosas
+samovar
+sampan
+sample
+sampled
+sampler
+samplers
+samples
+sampling
+samplings
+samurai
+san
+sanatorium
+sanctification
+sanctified
+sanctifies
+sanctify
+sanctifying
+sanctimonious
+sanction
+sanctioned
+sanctioning
+sanctions
+sanctity
+sanctuaries
+sanctuary
+sanctum
+sand
+sandal
+sandalled
+sandals
+sandalwood
+sandbag
+sandbagged
+sandbags
+sandbank
+sandbanks
+sandcastle
+sandcastles
+sanddune
+sanded
+sander
+sandier
+sandiest
+sanding
+sandman
+sandpaper
+sandpapering
+sandpiper
+sandpipers
+sandpit
+sands
+sandstone
+sandstones
+sandwich
+sandwiched
+sandwiches
+sandwiching
+sandy
+sane
+sanely
+saner
+sanest
+sang
+sanguine
+sanitary
+sanitation
+sanitise
+sanitised
+sanitiser
+sanitisers
+sanity
+sank
+sanserif
+sanskrit
+santiago
+sap
+sapient
+sapling
+saplings
+sapped
+sapper
+sappers
+sapphire
+sapphires
+sapping
+saps
+sarcasm
+sarcasms
+sarcastic
+sarcastically
+sarcoma
+sarcophagi
+sarcophagus
+sardine
+sardines
+sardinia
+sardonic
+sardonically
+sarge
+sari
+saris
+sarong
+sartorial
+sartorially
+sash
+sashes
+sat
+satan
+satanic
+satanically
+satanism
+satchel
+satchels
+sated
+satellite
+satellites
+satiate
+satiated
+satiation
+satin
+sating
+satins
+satinwood
+satiny
+satire
+satires
+satiric
+satirical
+satirically
+satirise
+satirised
+satirises
+satirising
+satirist
+satirists
+satisfaction
+satisfactions
+satisfactorily
+satisfactory
+satisfiable
+satisfied
+satisfies
+satisfy
+satisfying
+satisfyingly
+satrap
+satraps
+satsumas
+saturate
+saturated
+saturates
+saturating
+saturation
+saturday
+saturn
+saturnalia
+saturnine
+satyr
+satyric
+satyrs
+sauce
+saucepan
+saucepans
+saucer
+saucers
+sauces
+saucier
+sauciest
+saucily
+sauciness
+saucy
+saudi
+saudis
+sauerkraut
+sauna
+saunas
+saunter
+sauntered
+sauntering
+saunters
+sausage
+sausages
+saute
+savage
+savaged
+savagely
+savagery
+savages
+savaging
+savanna
+savannah
+savant
+savants
+save
+saved
+saveloy
+saver
+savers
+saves
+saving
+savings
+saviour
+saviours
+savour
+savoured
+savouring
+savours
+savoury
+savvy
+saw
+sawdust
+sawed
+sawing
+sawmill
+sawmills
+sawn
+saws
+sawtooth
+sawyer
+sawyers
+saxon
+saxons
+saxony
+saxophone
+saxophones
+saxophonist
+say
+saying
+sayings
+says
+scab
+scabbard
+scabbards
+scabbed
+scabby
+scabies
+scabs
+scaffold
+scaffolding
+scaffolds
+scalability
+scalable
+scalar
+scalars
+scald
+scalded
+scalding
+scalds
+scale
+scaled
+scalene
+scales
+scaling
+scallop
+scalloped
+scallops
+scalp
+scalped
+scalpel
+scalpels
+scalping
+scalps
+scaly
+scam
+scamp
+scamped
+scamper
+scampered
+scampering
+scampi
+scams
+scan
+scandal
+scandalise
+scandalised
+scandalous
+scandalously
+scandals
+scanned
+scanner
+scanners
+scanning
+scans
+scansion
+scant
+scantier
+scantiest
+scantily
+scantiness
+scanty
+scape
+scapegoat
+scapegoats
+scapula
+scar
+scarab
+scarce
+scarcely
+scarceness
+scarcer
+scarcest
+scarcities
+scarcity
+scare
+scarecrow
+scarecrows
+scared
+scaremonger
+scaremongering
+scares
+scarf
+scarfs
+scarier
+scariest
+scarified
+scarify
+scarifying
+scarily
+scaring
+scarlet
+scarlets
+scarp
+scarred
+scarring
+scars
+scarves
+scary
+scat
+scathe
+scathed
+scathing
+scathingly
+scatological
+scatter
+scattered
+scatterer
+scatterers
+scattering
+scatterings
+scatters
+scavenge
+scavenged
+scavenger
+scavengers
+scavenging
+scenario
+scene
+scenery
+scenes
+scenic
+scenically
+scent
+scented
+scenting
+scentless
+scents
+sceptic
+sceptical
+sceptically
+scepticism
+sceptics
+sceptre
+sceptred
+sceptres
+schedule
+scheduled
+scheduler
+schedulers
+schedules
+scheduling
+schema
+schemas
+schemata
+schematic
+schematically
+schematics
+scheme
+schemed
+schemer
+schemes
+scheming
+scherzi
+scherzo
+schism
+schismatic
+schismatics
+schisms
+schist
+schistosomiasis
+schists
+schizoid
+schizophrenia
+schizophrenic
+schizophrenically
+schizophrenics
+schmalz
+schnapps
+scholar
+scholarly
+scholars
+scholarship
+scholarships
+scholastic
+scholasticism
+school
+schoolboy
+schoolboys
+schoolchild
+schoolchildren
+schooldays
+schooled
+schoolgirl
+schoolgirls
+schoolhouse
+schooling
+schoolmaster
+schoolmasters
+schoolmates
+schoolmistress
+schoolroom
+schools
+schoolteacher
+schoolteachers
+schooner
+schooners
+schwa
+schwas
+sciatica
+science
+sciences
+scientific
+scientifically
+scientist
+scientists
+scifi
+scimitar
+scimitars
+scintigraphy
+scintillate
+scintillated
+scintillating
+scintillation
+scintillations
+scintillator
+scintillators
+scissor
+scissored
+scissors
+sclerosis
+scoff
+scoffed
+scoffing
+scold
+scolded
+scolder
+scolding
+scolds
+scone
+scones
+scoop
+scooped
+scooper
+scoopful
+scooping
+scoops
+scoot
+scooter
+scooters
+scooting
+scoots
+scope
+scopes
+scorch
+scorched
+scorcher
+scorches
+scorching
+score
+scoreboard
+scoreboards
+scorecard
+scorecards
+scored
+scoreless
+scoreline
+scorer
+scorers
+scores
+scoring
+scorn
+scorned
+scornful
+scornfully
+scorning
+scorns
+scorpion
+scorpions
+scot
+scotch
+scotched
+scotches
+scotfree
+scotland
+scots
+scotsman
+scottish
+scoundrel
+scoundrels
+scour
+scoured
+scourge
+scourged
+scourges
+scourging
+scouring
+scours
+scout
+scouted
+scouting
+scoutmaster
+scoutmasters
+scouts
+scowl
+scowled
+scowling
+scowls
+scrabble
+scrabbled
+scrabbling
+scram
+scramble
+scrambled
+scrambler
+scramblers
+scrambles
+scrambling
+scrams
+scrap
+scrapbook
+scrapbooks
+scrape
+scraped
+scraper
+scrapers
+scrapes
+scrapie
+scraping
+scrapings
+scrapped
+scrappier
+scrappiest
+scrapping
+scrappy
+scraps
+scrapyard
+scrapyards
+scratch
+scratched
+scratches
+scratchier
+scratchiest
+scratchiness
+scratching
+scratchings
+scratchy
+scrawl
+scrawled
+scrawling
+scrawls
+scrawnier
+scrawniest
+scrawny
+scream
+screamed
+screamer
+screamers
+screaming
+screamingly
+screams
+scree
+screech
+screeched
+screeches
+screechier
+screechiest
+screeching
+screechy
+screed
+screeds
+screen
+screened
+screening
+screenings
+screenplay
+screenplays
+screens
+screenwriter
+screw
+screwdriver
+screwdrivers
+screwed
+screwing
+screws
+screwy
+scribal
+scribble
+scribbled
+scribbler
+scribblers
+scribbles
+scribbling
+scribblings
+scribe
+scribed
+scribes
+scribing
+scrimped
+script
+scripted
+scripting
+scriptorium
+scripts
+scriptural
+scripture
+scriptures
+scriptwriter
+scriptwriters
+scriptwriting
+scroll
+scrollable
+scrolled
+scrolling
+scrolls
+scrooge
+scrooges
+scrotum
+scrub
+scrubbed
+scrubber
+scrubbers
+scrubbing
+scrubby
+scrubland
+scrubs
+scruff
+scruffier
+scruffy
+scrum
+scrumhalf
+scrummage
+scrummaging
+scrums
+scrunched
+scruple
+scruples
+scrupulous
+scrupulously
+scrupulousness
+scrutineers
+scrutinies
+scrutinise
+scrutinised
+scrutinises
+scrutinising
+scrutiny
+scuba
+scubas
+scud
+scudded
+scudding
+scuds
+scuff
+scuffed
+scuffing
+scuffle
+scuffled
+scuffles
+scuffling
+scull
+sculled
+sculler
+sculleries
+scullery
+sculling
+sculls
+sculpt
+sculpted
+sculpting
+sculptor
+sculptors
+sculptress
+sculptural
+sculpture
+sculptured
+sculptures
+scum
+scupper
+scuppered
+scurried
+scurries
+scurrilous
+scurry
+scurrying
+scurryings
+scurvy
+scuttle
+scuttled
+scuttles
+scuttling
+scythe
+scythed
+scythes
+scything
+sea
+seabed
+seabird
+seabirds
+seaboard
+seaborne
+seacow
+seacows
+seafarer
+seafarers
+seafaring
+seafood
+seafront
+seagod
+seagoing
+seagreen
+seagull
+seagulls
+seal
+sealant
+sealants
+sealed
+sealer
+sealers
+sealing
+sealion
+seals
+seam
+seamail
+seaman
+seamanship
+seamed
+seamen
+seamier
+seamless
+seamlessly
+seams
+seamstress
+seamstresses
+seamy
+seance
+seances
+seaplane
+seaplanes
+seaport
+seaports
+sear
+search
+searched
+searcher
+searchers
+searches
+searching
+searchingly
+searchlight
+searchlights
+seared
+searing
+sears
+seas
+seascape
+seascapes
+seashells
+seashore
+seashores
+seasick
+seasickness
+seaside
+season
+seasonable
+seasonably
+seasonal
+seasonality
+seasonally
+seasoned
+seasoner
+seasoning
+seasons
+seat
+seated
+seating
+seatings
+seats
+seattle
+seaward
+seawards
+seawater
+seaweed
+seaweeds
+seaworthy
+sebaceous
+sec
+secant
+secateurs
+secede
+seceded
+secedes
+seceding
+secession
+secessionist
+secessionists
+secessions
+seclude
+secluded
+seclusion
+second
+secondaries
+secondarily
+secondary
+secondbest
+secondclass
+seconded
+seconder
+seconders
+secondhand
+seconding
+secondly
+secondment
+secondments
+secondrate
+seconds
+secrecy
+secret
+secretarial
+secretariat
+secretariats
+secretaries
+secretary
+secretaryship
+secrete
+secreted
+secretes
+secreting
+secretion
+secretions
+secretive
+secretively
+secretiveness
+secretly
+secretory
+secrets
+sect
+sectarian
+sectarianism
+section
+sectional
+sectioned
+sectioning
+sections
+sector
+sectoral
+sectored
+sectors
+sects
+secular
+secularisation
+secularised
+secularism
+secularist
+secularists
+secure
+secured
+securely
+securer
+secures
+securest
+securing
+securities
+security
+sedan
+sedate
+sedated
+sedately
+sedateness
+sedater
+sedates
+sedating
+sedation
+sedative
+sedatives
+sedentary
+sedge
+sedges
+sediment
+sedimentary
+sedimentation
+sediments
+sedition
+seditious
+seduce
+seduced
+seducer
+seducers
+seduces
+seducing
+seduction
+seductions
+seductive
+seductively
+seductiveness
+sedulously
+see
+seeable
+seed
+seedbed
+seeded
+seeder
+seedier
+seediest
+seediness
+seeding
+seedless
+seedling
+seedlings
+seeds
+seedy
+seeing
+seeings
+seek
+seeker
+seekers
+seeking
+seeks
+seem
+seemed
+seeming
+seemingly
+seemlier
+seemliest
+seemly
+seems
+seen
+seep
+seepage
+seeped
+seeping
+seeps
+seer
+seers
+sees
+seesaw
+seesaws
+seethe
+seethed
+seethes
+seething
+seethrough
+segment
+segmental
+segmentation
+segmented
+segmenting
+segments
+segregate
+segregated
+segregates
+segregating
+segregation
+seine
+seisin
+seismic
+seismogram
+seismograph
+seismological
+seismologist
+seismologists
+seismology
+seismometer
+seismometers
+seize
+seized
+seizer
+seizes
+seizing
+seizure
+seizures
+seldom
+select
+selectable
+selected
+selectee
+selecting
+selection
+selections
+selective
+selectively
+selectivity
+selector
+selectors
+selects
+selenium
+selenology
+self
+selfcentred
+selfcentredness
+selfconfidence
+selfconfident
+selfconscious
+selfconsciously
+selfconsciousness
+selfcontrol
+selfcontrolled
+selfdefence
+selfdestruct
+selfdestructed
+selfdestructing
+selfdestruction
+selfdestructive
+selfdestructs
+selfdiscipline
+selfemployed
+selfesteem
+selfevident
+selfgoverning
+selfgovernment
+selfinflicted
+selfinterest
+selfish
+selfishly
+selfishness
+selfless
+selflessly
+selfmade
+selfpity
+selfportrait
+selfportraits
+selfrespect
+selfrespecting
+selfrestraint
+selfrighteous
+selfrighteously
+selfrighteousness
+selfsacrifice
+selfsacrificing
+selfsame
+selfsupporting
+selftaught
+sell
+sellable
+seller
+sellers
+selling
+sells
+selves
+semantic
+semantically
+semantics
+semaphore
+semaphores
+semaphoring
+semblance
+semblances
+semen
+semester
+semesters
+semi
+semicircle
+semicircular
+semicolon
+semicolons
+semiconducting
+semiconductor
+semiconductors
+semiconscious
+semidetached
+semifinal
+semifinalist
+semifinalists
+semifinals
+seminar
+seminaries
+seminars
+seminary
+semite
+semites
+semitic
+semitics
+sen
+senate
+senates
+senator
+senatorial
+senators
+send
+sender
+senders
+sending
+sends
+senegal
+senhor
+senhors
+senile
+senility
+senior
+seniority
+seniors
+senora
+senoritas
+sensation
+sensational
+sensationalised
+sensationalism
+sensationalist
+sensationalistic
+sensationally
+sensations
+sense
+sensed
+senseless
+senselessly
+senselessness
+senses
+sensibilities
+sensibility
+sensible
+sensibleness
+sensibly
+sensing
+sensings
+sensitisation
+sensitised
+sensitisers
+sensitive
+sensitively
+sensitiveness
+sensitivities
+sensitivity
+sensor
+sensors
+sensory
+sensual
+sensuality
+sensually
+sensuous
+sensuously
+sensuousness
+sent
+sentence
+sentenced
+sentences
+sentencing
+sentential
+sententious
+sententiously
+sentience
+sentient
+sentiment
+sentimental
+sentimentalised
+sentimentalism
+sentimentalist
+sentimentality
+sentimentally
+sentiments
+sentinel
+sentinels
+sentries
+sentry
+seoul
+separability
+separable
+separate
+separated
+separately
+separateness
+separates
+separating
+separation
+separations
+separatism
+separatist
+separatists
+separator
+separators
+sepia
+september
+septet
+septets
+septic
+septicaemia
+sepulchral
+sepulchre
+sepulchres
+sequel
+sequels
+sequence
+sequenced
+sequencer
+sequencers
+sequences
+sequencing
+sequent
+sequential
+sequentially
+sequestered
+sequestrated
+sequestration
+sequin
+sequinned
+sequins
+sequoia
+seraglio
+serai
+seraphic
+seraphically
+seraphim
+seraphs
+serenade
+serenader
+serenades
+serenading
+serenata
+serendipitous
+serendipitously
+serendipity
+serene
+serenely
+serener
+serenest
+serenity
+serf
+serfdom
+serfhood
+serfs
+serge
+sergeant
+sergeants
+serial
+serialisation
+serialisations
+serialise
+serialised
+serialising
+serially
+serials
+series
+serif
+serifed
+serifs
+serious
+seriously
+seriousness
+sermon
+sermons
+serological
+serology
+seronegative
+serotonin
+serpent
+serpentine
+serpents
+serrate
+serrated
+serried
+serum
+serums
+servant
+servants
+serve
+served
+server
+servers
+serves
+service
+serviceability
+serviceable
+serviced
+serviceman
+servicemen
+services
+servicing
+serviette
+servile
+servilely
+servility
+serving
+servings
+servitude
+sesame
+sesotho
+sessile
+session
+sessions
+set
+setback
+setbacks
+seth
+sets
+setswana
+settee
+settees
+setter
+setters
+setting
+settings
+settle
+settled
+settlement
+settlements
+settler
+settlers
+settles
+settling
+setts
+setup
+seven
+sevenfold
+sevenpence
+sevens
+seventeen
+seventeenth
+seventh
+seventies
+seventieth
+seventy
+sever
+severable
+several
+severally
+severance
+severe
+severed
+severely
+severer
+severest
+severing
+severity
+severs
+sew
+sewage
+sewed
+sewer
+sewerage
+sewerrat
+sewers
+sewing
+sewings
+sewn
+sews
+sex
+sexed
+sexes
+sexier
+sexiest
+sexily
+sexiness
+sexing
+sexism
+sexist
+sexists
+sexless
+sexologists
+sexology
+sextant
+sextants
+sextet
+sextets
+sexton
+sextons
+sextuplet
+sextuplets
+sexual
+sexualities
+sexuality
+sexually
+sexy
+shabbier
+shabbiest
+shabbily
+shabbiness
+shabby
+shack
+shackle
+shackled
+shackles
+shacks
+shade
+shaded
+shadeless
+shades
+shadier
+shadiest
+shadily
+shading
+shadings
+shadow
+shadowed
+shadowing
+shadowless
+shadows
+shadowy
+shady
+shaft
+shafted
+shafting
+shafts
+shag
+shagged
+shaggiest
+shaggy
+shags
+shah
+shahs
+shakable
+shake
+shakeable
+shakedown
+shaken
+shaker
+shakers
+shakes
+shakeup
+shakeups
+shakier
+shakiest
+shakily
+shaking
+shaky
+shale
+shall
+shallot
+shallots
+shallow
+shallower
+shallowest
+shallowly
+shallowness
+shallows
+sham
+shaman
+shamanic
+shamanism
+shamanistic
+shamans
+shamble
+shambled
+shambles
+shambling
+shame
+shamed
+shamefaced
+shamefacedly
+shameful
+shamefully
+shameless
+shamelessly
+shamelessness
+shames
+shaming
+shammed
+shamming
+shampoo
+shampooed
+shampooing
+shampoos
+shamrock
+shams
+shandy
+shank
+shanks
+shanties
+shanty
+shape
+shaped
+shapeless
+shapelier
+shapeliest
+shapely
+shaper
+shapers
+shapes
+shaping
+sharable
+shard
+shards
+share
+shareable
+shared
+shareholder
+shareholders
+shareholding
+shareholdings
+sharer
+shares
+shareware
+sharing
+shark
+sharks
+sharp
+sharpen
+sharpened
+sharpener
+sharpeners
+sharpening
+sharpens
+sharper
+sharpest
+sharply
+sharpness
+sharps
+shatter
+shattered
+shattering
+shatteringly
+shatterproof
+shatters
+shave
+shaved
+shaven
+shaver
+shavers
+shaves
+shaving
+shavings
+shaw
+shawl
+shawls
+she
+sheaf
+shear
+sheared
+shearer
+shearers
+shearing
+shears
+shearwater
+shearwaters
+sheath
+sheathe
+sheathed
+sheathing
+sheaths
+sheaves
+shed
+shedding
+sheds
+sheen
+sheep
+sheepdog
+sheepdogs
+sheepish
+sheepishly
+sheepishness
+sheepskin
+sheepskins
+sheer
+sheered
+sheerest
+sheerness
+sheet
+sheeted
+sheeting
+sheets
+sheik
+sheikh
+sheikhs
+sheiks
+shekel
+shekels
+shelf
+shell
+shellac
+shelled
+shellfire
+shellfish
+shelling
+shells
+shelter
+sheltered
+sheltering
+shelters
+shelve
+shelved
+shelves
+shelving
+shepherd
+shepherded
+shepherdess
+shepherding
+shepherds
+sherbet
+sherds
+sheriff
+sheriffs
+sherlock
+sherries
+sherry
+shetland
+shibboleth
+shibboleths
+shied
+shield
+shielded
+shielding
+shields
+shielings
+shies
+shift
+shifted
+shifter
+shifters
+shiftier
+shiftily
+shiftiness
+shifting
+shiftless
+shifts
+shifty
+shilling
+shimmer
+shimmered
+shimmering
+shimmers
+shin
+shinbone
+shindig
+shine
+shined
+shiner
+shines
+shingle
+shingles
+shinier
+shiniest
+shining
+shinned
+shinning
+shins
+shiny
+ship
+shipboard
+shipborne
+shipbuilder
+shipbuilders
+shipbuilding
+shipload
+shiploads
+shipmate
+shipmates
+shipment
+shipments
+shipowner
+shipowners
+shippable
+shipped
+shipping
+ships
+shipshape
+shipwreck
+shipwrecked
+shipwrecks
+shipwright
+shipwrights
+shipyard
+shipyards
+shire
+shires
+shirk
+shirked
+shirking
+shirt
+shirtless
+shirts
+shirtsleeves
+shiver
+shivered
+shivering
+shiveringly
+shivers
+shivery
+shoal
+shoals
+shock
+shocked
+shocker
+shockers
+shocking
+shockingly
+shocks
+shod
+shoddier
+shoddiest
+shoddily
+shoddiness
+shoddy
+shoe
+shoebox
+shoed
+shoehorn
+shoeing
+shoelace
+shoelaces
+shoeless
+shoemaker
+shoemakers
+shoes
+shoestring
+shoestrings
+shogun
+shoguns
+shone
+shoo
+shooed
+shooing
+shook
+shoot
+shooter
+shooters
+shooting
+shootings
+shoots
+shop
+shopfront
+shopfronts
+shopkeeper
+shopkeepers
+shopkeeping
+shoplift
+shoplifted
+shoplifter
+shoplifters
+shoplifting
+shopped
+shopper
+shoppers
+shopping
+shops
+shore
+shored
+shoreline
+shorelines
+shores
+shoreward
+shorewards
+shoring
+shorn
+short
+shortage
+shortages
+shortbread
+shortcircuit
+shortcircuited
+shortcircuiting
+shortcoming
+shortcomings
+shortcrust
+shortcut
+shortcuts
+shorted
+shorten
+shortened
+shortening
+shortens
+shorter
+shortest
+shortfall
+shortfalls
+shorthand
+shorting
+shortish
+shortlist
+shortlisted
+shortlisting
+shortlived
+shortly
+shortness
+shorts
+shortsighted
+shortsightedly
+shortsightedness
+shortstaffed
+shorttempered
+shortterm
+shortwinded
+shorty
+shot
+shotgun
+shotguns
+shots
+should
+shoulder
+shouldered
+shouldering
+shoulders
+shout
+shouted
+shouter
+shouters
+shouting
+shouts
+shove
+shoved
+shovel
+shovelful
+shovelled
+shoveller
+shovelling
+shovels
+shoves
+shoving
+show
+showcase
+showcases
+showcasing
+showdown
+showed
+shower
+showered
+showering
+showers
+showery
+showgirl
+showground
+showier
+showiest
+showing
+showings
+showjumpers
+showman
+showmanship
+showmen
+shown
+showoff
+showpiece
+showpieces
+showplace
+showroom
+showrooms
+shows
+showy
+shrank
+shrapnel
+shred
+shredded
+shredder
+shredders
+shredding
+shreds
+shrew
+shrewd
+shrewder
+shrewdest
+shrewdly
+shrewdness
+shrews
+shriek
+shrieked
+shrieker
+shriekers
+shrieking
+shrieks
+shrift
+shrill
+shrilled
+shrillest
+shrillness
+shrills
+shrilly
+shrimp
+shrimps
+shrine
+shrines
+shrink
+shrinkable
+shrinkage
+shrinking
+shrinkingly
+shrinks
+shrivel
+shrivelled
+shrivelling
+shrivels
+shroud
+shrouded
+shrouding
+shrouds
+shrub
+shrubberies
+shrubbery
+shrubby
+shrubs
+shrug
+shrugged
+shrugging
+shrugs
+shrunk
+shrunken
+shudder
+shuddered
+shuddering
+shudders
+shuffle
+shuffled
+shuffler
+shufflers
+shuffles
+shuffling
+shun
+shunned
+shunning
+shuns
+shunt
+shunted
+shunter
+shunters
+shunting
+shunts
+shushed
+shut
+shutdown
+shutdowns
+shuts
+shutter
+shuttered
+shuttering
+shutters
+shutting
+shuttle
+shuttlecock
+shuttlecocks
+shuttled
+shuttles
+shuttling
+shutup
+shy
+shyer
+shyest
+shying
+shyly
+shyness
+siam
+siamese
+siberia
+siberian
+sibilance
+sibilancy
+sibilant
+sibling
+siblings
+sibyl
+sic
+sicilian
+sicily
+sick
+sickbay
+sickbed
+sicken
+sickened
+sickening
+sickeningly
+sickens
+sicker
+sickest
+sickle
+sickles
+sickliest
+sickly
+sickness
+sicknesses
+sickroom
+side
+sideband
+sidebands
+sideboard
+sideboards
+sideburns
+sidecar
+sided
+sidekick
+sidelight
+sidelights
+sideline
+sidelines
+sidelong
+sider
+sidereal
+sides
+sideshow
+sideshows
+sidestep
+sidestepped
+sidestepping
+sidesteps
+sideswipes
+sidetrack
+sidetracked
+sidetracking
+sidewalk
+sidewards
+sideways
+sidewinders
+siding
+sidings
+sidle
+sidled
+sidling
+siege
+sieges
+sienna
+sierra
+siesta
+siestas
+sieve
+sieved
+sieves
+sieving
+sift
+sifted
+sifter
+sifters
+sifting
+siftings
+sifts
+sigh
+sighed
+sighing
+sighs
+sight
+sighted
+sightedness
+sighting
+sightings
+sightless
+sightlessly
+sightly
+sights
+sightsee
+sightseeing
+sightseers
+sigma
+sigmoid
+sign
+signal
+signalled
+signaller
+signallers
+signalling
+signally
+signalman
+signalmen
+signals
+signatories
+signatory
+signature
+signatures
+signboards
+signed
+signer
+signers
+signet
+significance
+significances
+significant
+significantly
+signification
+significations
+signified
+signifier
+signifies
+signify
+signifying
+signing
+signings
+signor
+signora
+signors
+signpost
+signposted
+signposting
+signposts
+signs
+signwriter
+silage
+silence
+silenced
+silencer
+silencers
+silences
+silencing
+silent
+silently
+silhouette
+silhouetted
+silhouettes
+silica
+silicate
+silicates
+silicon
+silicone
+silicosis
+silk
+silken
+silkier
+silkiest
+silkily
+silkiness
+silklike
+silks
+silkworm
+silkworms
+silky
+sillier
+silliest
+silliness
+silly
+silo
+silt
+silted
+silting
+silts
+siltstone
+silty
+silver
+silvered
+silvering
+silvers
+silversmith
+silversmiths
+silverware
+silvery
+simeon
+similar
+similarities
+similarity
+similarly
+simile
+similes
+similitude
+simmer
+simmered
+simmering
+simmers
+simper
+simpered
+simpering
+simpers
+simple
+simpleminded
+simpler
+simplest
+simpleton
+simpletons
+simplex
+simplexes
+simplicities
+simplicity
+simplification
+simplifications
+simplified
+simplifier
+simplifies
+simplify
+simplifying
+simplism
+simplistic
+simplistically
+simply
+simulacrum
+simulate
+simulated
+simulates
+simulating
+simulation
+simulations
+simulator
+simulators
+simulcasts
+simultaneity
+simultaneous
+simultaneously
+sin
+sinai
+since
+sincere
+sincerely
+sincerest
+sincerity
+sine
+sinecure
+sinecures
+sinecurist
+sines
+sinew
+sinews
+sinewy
+sinful
+sinfully
+sinfulness
+sing
+singable
+singalong
+singe
+singed
+singeing
+singer
+singers
+singes
+singing
+single
+singlehanded
+singlehandedly
+singleminded
+singlemindedly
+singlemindedness
+singleness
+singles
+singly
+sings
+singsong
+singular
+singularisation
+singularities
+singularity
+singularly
+singulars
+sinister
+sinisterly
+sinistral
+sink
+sinkable
+sinker
+sinkers
+sinking
+sinks
+sinless
+sinned
+sinner
+sinners
+sinning
+sins
+sinter
+sinters
+sinuous
+sinuously
+sinus
+sinuses
+sinusitis
+sinusoid
+sinusoidal
+sinusoidally
+sip
+siphon
+siphoned
+siphoning
+siphons
+sipped
+sipper
+sippers
+sipping
+sips
+sir
+sire
+sired
+siren
+sirens
+sires
+sirius
+sirloin
+sirloins
+sirs
+sis
+sisal
+sissies
+sissy
+sister
+sisterhood
+sisterinlaw
+sisterly
+sisters
+sistersinlaw
+sit
+sitar
+sitcom
+sitcoms
+site
+sited
+sites
+siting
+sitings
+sits
+sitter
+sitters
+sitting
+sittings
+situate
+situated
+situating
+situation
+situational
+situationally
+situationist
+situations
+six
+sixes
+sixfold
+sixpence
+sixteen
+sixteenth
+sixth
+sixths
+sixties
+sixtieth
+sixty
+size
+sizeable
+sized
+sizes
+sizing
+sizzle
+sizzled
+sizzles
+sizzling
+sjambok
+skate
+skateboard
+skateboards
+skated
+skater
+skaters
+skates
+skating
+skein
+skeletal
+skeleton
+skeletons
+skeptic
+skerries
+sketch
+sketchbook
+sketchbooks
+sketched
+sketcher
+sketches
+sketchier
+sketchiest
+sketchily
+sketching
+sketchpad
+sketchy
+skew
+skewed
+skewer
+skewered
+skewers
+skewness
+skews
+ski
+skid
+skidded
+skidding
+skids
+skied
+skier
+skiers
+skies
+skiing
+skilful
+skilfully
+skill
+skilled
+skillet
+skillful
+skills
+skim
+skimmed
+skimmer
+skimming
+skimp
+skimped
+skimping
+skimpy
+skims
+skin
+skincare
+skindeep
+skinflint
+skinhead
+skinheads
+skinless
+skinned
+skinner
+skinners
+skinnier
+skinniest
+skinning
+skinny
+skins
+skintight
+skip
+skipped
+skipper
+skippered
+skippering
+skippers
+skipping
+skips
+skirl
+skirmish
+skirmishes
+skirmishing
+skirt
+skirted
+skirting
+skirts
+skis
+skit
+skits
+skittish
+skittishly
+skittishness
+skittle
+skittles
+skua
+skuas
+skulduggery
+skulk
+skulked
+skulking
+skulks
+skull
+skullcap
+skullduggery
+skulls
+skunk
+skunks
+sky
+skydive
+skydived
+skydiver
+skydivers
+skydives
+skydiving
+skyhigh
+skylark
+skylarks
+skylight
+skylights
+skyline
+skylines
+skyscape
+skyscraper
+skyscrapers
+skyward
+skywards
+slab
+slabs
+slack
+slacked
+slacken
+slackened
+slackening
+slackens
+slacker
+slackers
+slackest
+slacking
+slackly
+slackness
+slacks
+slag
+slags
+slain
+slake
+slaked
+slalom
+slaloms
+slam
+slammed
+slamming
+slams
+slander
+slandered
+slanderer
+slanderers
+slandering
+slanderous
+slanders
+slang
+slanging
+slant
+slanted
+slanting
+slants
+slantwise
+slap
+slapdash
+slapped
+slapper
+slapping
+slaps
+slapstick
+slash
+slashed
+slasher
+slashes
+slashing
+slat
+slate
+slated
+slater
+slaters
+slates
+slating
+slats
+slatted
+slaughter
+slaughtered
+slaughterer
+slaughterhouse
+slaughterhouses
+slaughtering
+slaughterings
+slaughters
+slav
+slave
+slaved
+slavedriver
+slavedrivers
+slaver
+slavered
+slavering
+slavers
+slavery
+slaves
+slavic
+slaving
+slavish
+slavishly
+slavs
+slay
+slayed
+slayer
+slayers
+slaying
+slays
+sleaze
+sleazier
+sleaziest
+sleazy
+sled
+sledding
+sledge
+sledgehammer
+sledgehammers
+sledges
+sledging
+sleds
+sleek
+sleeker
+sleekly
+sleekness
+sleeks
+sleep
+sleeper
+sleepers
+sleepier
+sleepiest
+sleepily
+sleepiness
+sleeping
+sleepless
+sleeplessness
+sleeps
+sleepwalk
+sleepwalker
+sleepwalking
+sleepwalks
+sleepy
+sleet
+sleets
+sleeve
+sleeved
+sleeveless
+sleeves
+sleigh
+sleighs
+sleight
+sleights
+slender
+slenderest
+slenderly
+slenderness
+slept
+sleuth
+sleuths
+slew
+slewed
+slewing
+slice
+sliced
+slicer
+slicers
+slices
+slicing
+slicings
+slick
+slicked
+slicker
+slickest
+slickly
+slickness
+slicks
+slid
+slide
+slided
+slider
+sliders
+slides
+sliding
+slight
+slighted
+slighter
+slightest
+slighting
+slightingly
+slightly
+slights
+slily
+slim
+slime
+slimes
+slimier
+slimiest
+slimline
+slimly
+slimmed
+slimmer
+slimmers
+slimmest
+slimming
+slimness
+slims
+slimy
+sling
+slinging
+slings
+slingshot
+slink
+slinking
+slinky
+slip
+slippage
+slipped
+slipper
+slipperiness
+slippers
+slippery
+slipping
+slips
+slipshod
+slipstream
+slipup
+slipway
+slit
+slither
+slithered
+slithering
+slithers
+slithery
+slits
+slitting
+sliver
+slivers
+slob
+slobber
+slobbering
+slobbers
+slobbery
+slobs
+slog
+slogan
+slogans
+slogged
+slogging
+slogs
+sloop
+slop
+slope
+sloped
+slopes
+sloping
+slopped
+sloppier
+sloppiest
+sloppily
+sloppiness
+slopping
+sloppy
+slops
+slosh
+sloshed
+sloshing
+slot
+sloth
+slothful
+sloths
+slots
+slotted
+slotting
+slouch
+slouched
+slouches
+slouching
+slough
+sloughed
+sloughing
+slovak
+slovenia
+slovenliness
+slovenly
+slow
+slowcoaches
+slowdown
+slowed
+slower
+slowest
+slowing
+slowish
+slowly
+slowness
+slowpoke
+slows
+sludge
+sludgy
+slug
+sluggard
+sluggards
+slugged
+slugging
+sluggish
+sluggishly
+sluggishness
+slugs
+sluice
+sluiced
+sluices
+sluicing
+slum
+slumber
+slumbered
+slumbering
+slumbers
+slumming
+slump
+slumped
+slumping
+slumps
+slums
+slung
+slunk
+slur
+slurp
+slurped
+slurping
+slurps
+slurred
+slurring
+slurry
+slurs
+slush
+slushed
+slushes
+slushier
+slushiest
+slushy
+slut
+sluts
+sly
+slyer
+slyly
+slyness
+smack
+smacked
+smacker
+smacking
+smacks
+small
+smaller
+smallest
+smallholder
+smallholders
+smallholding
+smallholdings
+smallish
+smallminded
+smallmindedness
+smallness
+smallpox
+smalls
+smallscale
+smalltalk
+smalltime
+smalltown
+smart
+smarted
+smarten
+smartened
+smartening
+smarter
+smartest
+smarting
+smartly
+smartness
+smarts
+smash
+smashed
+smasher
+smashes
+smashing
+smattering
+smatterings
+smear
+smeared
+smearing
+smears
+smegma
+smell
+smellable
+smelled
+smellier
+smelliest
+smelling
+smells
+smelly
+smelt
+smelted
+smelter
+smelters
+smelting
+smidgeon
+smile
+smiled
+smiler
+smilers
+smiles
+smiling
+smilingly
+smirk
+smirked
+smirking
+smirks
+smite
+smith
+smithereens
+smiths
+smithy
+smiting
+smitten
+smock
+smocks
+smog
+smoggy
+smogs
+smoke
+smoked
+smokeless
+smoker
+smokers
+smokes
+smokescreen
+smokestack
+smokestacks
+smokier
+smokiest
+smokiness
+smoking
+smoky
+smolder
+smooch
+smooth
+smoothed
+smoother
+smoothest
+smoothing
+smoothly
+smoothness
+smooths
+smoothtongued
+smote
+smother
+smothered
+smothering
+smothers
+smoulder
+smouldered
+smouldering
+smoulders
+smudge
+smudged
+smudges
+smudgier
+smudgiest
+smudging
+smudgy
+smug
+smuggle
+smuggled
+smuggler
+smugglers
+smuggles
+smuggling
+smugly
+smugness
+smut
+smuts
+smutty
+snack
+snacks
+snaffle
+snag
+snagged
+snagging
+snags
+snail
+snails
+snake
+snaked
+snakepit
+snakes
+snakeskin
+snaking
+snaky
+snap
+snapped
+snapper
+snappier
+snappily
+snapping
+snappy
+snaps
+snapshot
+snapshots
+snare
+snared
+snares
+snaring
+snarl
+snarled
+snarling
+snarls
+snatch
+snatched
+snatcher
+snatchers
+snatches
+snatching
+sneak
+sneaked
+sneakers
+sneakier
+sneakiest
+sneakily
+sneaking
+sneaks
+sneaky
+sneer
+sneered
+sneering
+sneeringly
+sneers
+sneeze
+sneezed
+sneezes
+sneezing
+snick
+snide
+sniff
+sniffed
+sniffer
+sniffers
+sniffing
+sniffle
+sniffles
+sniffling
+sniffly
+sniffs
+snifter
+snigger
+sniggered
+sniggering
+sniggers
+snip
+snipe
+sniper
+snipers
+snipes
+sniping
+snipped
+snippet
+snippets
+snipping
+snips
+snits
+snivel
+snivelling
+snob
+snobbery
+snobbish
+snobbishly
+snobbishness
+snobs
+snoek
+snooker
+snoop
+snooped
+snooper
+snoopers
+snooping
+snoops
+snoopy
+snooze
+snoozed
+snoozes
+snoozing
+snore
+snored
+snorer
+snorers
+snores
+snoring
+snorkel
+snorkelling
+snorkels
+snort
+snorted
+snorting
+snorts
+snotty
+snout
+snouts
+snow
+snowball
+snowballed
+snowballing
+snowballs
+snowbound
+snowcapped
+snowdrift
+snowdrifts
+snowdrop
+snowdrops
+snowed
+snowfall
+snowfalls
+snowfields
+snowflake
+snowflakes
+snowier
+snowiest
+snowing
+snowline
+snowman
+snowmen
+snowplough
+snowploughs
+snows
+snowstorm
+snowstorms
+snowwhite
+snowy
+snub
+snubbed
+snubbing
+snubnosed
+snubs
+snuff
+snuffbox
+snuffed
+snuffing
+snuffle
+snuffled
+snuffles
+snuffling
+snuffs
+snug
+snugger
+snuggle
+snuggled
+snuggles
+snuggling
+snugly
+snugness
+so
+soak
+soaked
+soaker
+soakers
+soaking
+soakings
+soaks
+soandso
+soap
+soapbox
+soaped
+soapier
+soapiest
+soaping
+soaps
+soapy
+soar
+soared
+soaring
+soaringly
+soars
+sob
+sobbed
+sobbing
+sobbings
+sober
+sobered
+soberer
+sobering
+soberly
+sobers
+sobriety
+sobriquet
+sobs
+socalled
+soccer
+sociability
+sociable
+sociably
+social
+socialisation
+socialise
+socialised
+socialising
+socialism
+socialist
+socialistic
+socialists
+socialite
+socially
+socials
+societal
+societies
+society
+sociobiology
+sociocultural
+socioeconomic
+sociolinguistic
+sociolinguistics
+sociolinguists
+sociological
+sociologically
+sociologist
+sociologists
+sociology
+sociopolitical
+sock
+socked
+socket
+sockets
+socking
+socks
+socrates
+sod
+soda
+sodas
+sodded
+sodden
+soddy
+sodium
+sodom
+sodomise
+sodomised
+sodomising
+sodomite
+sodomites
+sodomy
+sods
+sofa
+sofas
+soffit
+soft
+softball
+softboiled
+soften
+softened
+softener
+softeners
+softening
+softens
+softer
+softest
+softhearted
+softie
+softish
+softly
+softness
+softspoken
+software
+softwood
+softy
+soggier
+soggiest
+soggy
+soh
+soil
+soiled
+soiling
+soilings
+soils
+soiree
+sojourn
+sojourned
+sojourner
+sojourners
+sojourning
+sojourns
+solace
+solaces
+solanum
+solar
+solaria
+solarium
+sold
+solder
+soldered
+soldering
+solders
+soldier
+soldiered
+soldiering
+soldierly
+soldiers
+soldiery
+sole
+solecism
+solecisms
+solely
+solemn
+solemnities
+solemnity
+solemnly
+solenoid
+solenoidal
+solenoids
+soler
+soles
+solfa
+solicit
+solicitation
+solicitations
+solicited
+soliciting
+solicitor
+solicitors
+solicitous
+solicitously
+solicits
+solicitude
+solid
+solidarity
+solidification
+solidified
+solidifies
+solidify
+solidifying
+solidity
+solidly
+solidness
+solids
+solitaire
+solitary
+solitude
+solitudes
+solo
+soloing
+soloist
+soloists
+solstice
+solstices
+solubility
+soluble
+solute
+solutes
+solution
+solutions
+solvable
+solve
+solved
+solvency
+solvent
+solvents
+solver
+solvers
+solves
+solving
+soma
+somali
+somalia
+somas
+somatic
+sombre
+sombrely
+sombreness
+sombrero
+some
+somebody
+someday
+somehow
+someone
+somersault
+somersaulted
+somersaulting
+somersaults
+something
+sometime
+sometimes
+someway
+someways
+somewhat
+somewhere
+somnambulist
+somnolence
+somnolent
+son
+sonar
+sonars
+sonata
+sonatas
+sones
+song
+songbird
+songbirds
+songbook
+songs
+songsters
+songwriter
+songwriters
+songwriting
+sonic
+sonically
+soninlaw
+sonnet
+sonnets
+sonny
+sonora
+sonorities
+sonority
+sonorous
+sonorously
+sonorousness
+sons
+sonsinlaw
+soon
+sooner
+soonest
+soonish
+soot
+soothe
+soothed
+soothers
+soothes
+soothing
+soothingly
+soothsayer
+soothsayers
+soothsaying
+sootier
+soots
+sooty
+sop
+sophist
+sophisticate
+sophisticated
+sophisticates
+sophistication
+sophistry
+sophists
+soporific
+sopping
+soppy
+soprano
+sorbet
+sorbets
+sorcerer
+sorcerers
+sorceress
+sorcery
+sordid
+sordidly
+sordidness
+sore
+sorely
+soreness
+sores
+sorghum
+sorority
+sorrel
+sorrier
+sorriest
+sorrow
+sorrowed
+sorrowful
+sorrowfully
+sorrowing
+sorrows
+sorry
+sort
+sortable
+sorted
+sorter
+sorters
+sortie
+sorties
+sorting
+sorts
+sos
+soso
+sot
+sotho
+soubriquet
+soudan
+souffle
+sought
+soughtafter
+souk
+souks
+soul
+souldestroying
+souled
+soulful
+soulfully
+soulless
+souls
+soulsearching
+sound
+soundcheck
+sounded
+sounder
+soundest
+sounding
+soundings
+soundless
+soundlessly
+soundly
+soundness
+soundproof
+soundproofed
+soundproofing
+sounds
+soundtrack
+soundtracks
+soup
+soups
+soupy
+sour
+source
+sourced
+sourceless
+sources
+sourcing
+soured
+sourest
+souring
+sourly
+sourness
+sours
+soused
+south
+southbound
+southerly
+southern
+southerner
+southerners
+southernmost
+southward
+southwards
+souvenir
+souvenirs
+sovereign
+sovereigns
+sovereignty
+soviet
+sow
+sowed
+sower
+sowers
+soweto
+sowing
+sown
+sows
+soy
+soya
+soybean
+soybeans
+spa
+space
+spaceage
+spacecraft
+spaced
+spaceflight
+spaceman
+spacemen
+spacer
+spacers
+spaces
+spaceship
+spaceships
+spacesuit
+spacesuits
+spacey
+spacial
+spacing
+spacings
+spacious
+spaciously
+spaciousness
+spade
+spaded
+spades
+spadework
+spaghetti
+spain
+spam
+span
+spandrels
+spangle
+spangled
+spangles
+spaniel
+spaniels
+spanish
+spank
+spanked
+spanker
+spanking
+spankings
+spanks
+spanned
+spanner
+spanners
+spanning
+spans
+spar
+spare
+spared
+sparely
+spares
+sparetime
+sparing
+sparingly
+spark
+sparked
+sparking
+sparkle
+sparkled
+sparkler
+sparklers
+sparkles
+sparkling
+sparklingly
+sparkly
+sparks
+sparred
+sparring
+sparrow
+sparrowhawk
+sparrows
+spars
+sparse
+sparsely
+sparseness
+sparser
+sparsest
+sparsity
+sparta
+spartan
+spartans
+spas
+spasm
+spasmodic
+spasmodically
+spasms
+spastic
+spastics
+spat
+spate
+spatial
+spatially
+spats
+spatter
+spattered
+spattering
+spatters
+spatula
+spatulas
+spawn
+spawned
+spawning
+spawns
+spay
+spayed
+spaying
+spays
+speak
+speakable
+speaker
+speakers
+speaking
+speaks
+spear
+speared
+spearhead
+spearheaded
+spearheading
+spearheads
+spearing
+spears
+spec
+special
+specialisation
+specialisations
+specialise
+specialised
+specialises
+specialising
+specialism
+specialisms
+specialist
+specialists
+specialities
+speciality
+specially
+specialness
+specials
+specialty
+speciation
+species
+specifiable
+specifiably
+specific
+specifically
+specification
+specifications
+specificities
+specificity
+specificness
+specifics
+specified
+specifier
+specifiers
+specifies
+specify
+specifying
+specimen
+specimens
+specious
+speck
+speckle
+speckled
+speckles
+specks
+specs
+spectacle
+spectacles
+spectacular
+spectacularly
+spectaculars
+spectator
+spectators
+spectra
+spectral
+spectre
+spectres
+spectrogram
+spectrograph
+spectrometer
+spectrometers
+spectrometric
+spectrometry
+spectrophotometer
+spectrophotometers
+spectrophotometry
+spectroscope
+spectroscopes
+spectroscopic
+spectroscopically
+spectroscopy
+spectrum
+specular
+speculate
+speculated
+speculates
+speculating
+speculation
+speculations
+speculative
+speculatively
+speculator
+speculators
+speculum
+sped
+speech
+speeches
+speechifying
+speechless
+speechlessly
+speed
+speedboat
+speedboats
+speedcop
+speeded
+speedier
+speediest
+speedily
+speeding
+speedometer
+speedometers
+speeds
+speedup
+speedway
+speedwell
+speedy
+spell
+spellable
+spellbinder
+spellbinding
+spellbound
+spelled
+speller
+spellers
+spelling
+spellings
+spells
+spelt
+spencer
+spend
+spender
+spenders
+spending
+spends
+spendthrift
+spent
+spermatozoa
+spew
+spewed
+spewing
+spews
+sphagnum
+sphere
+spheres
+spheric
+spherical
+spherically
+spheroid
+spheroidal
+sphincter
+sphincters
+sphinx
+sphygmomanometer
+spice
+spiced
+spicer
+spicery
+spices
+spicier
+spicily
+spicing
+spicy
+spider
+spiders
+spidery
+spied
+spies
+spigot
+spike
+spiked
+spikes
+spikier
+spikiest
+spiking
+spiky
+spill
+spillage
+spillages
+spilled
+spiller
+spilling
+spills
+spilt
+spin
+spinach
+spinal
+spindle
+spindles
+spindly
+spindrier
+spindriers
+spindrift
+spindry
+spine
+spinechilling
+spineless
+spines
+spinet
+spinnaker
+spinner
+spinners
+spinney
+spinning
+spinoff
+spinoffs
+spins
+spinster
+spinsterhood
+spinsters
+spiny
+spiral
+spiralled
+spiralling
+spirally
+spirals
+spirant
+spirants
+spire
+spires
+spirit
+spirited
+spiritedl
+spiritedly
+spiritless
+spirits
+spiritual
+spiritualised
+spiritualism
+spiritualist
+spiritualists
+spirituality
+spiritually
+spirituals
+spit
+spite
+spiteful
+spitefully
+spitfire
+spitfires
+spits
+spitting
+spittle
+spittoon
+spittoons
+splash
+splashdown
+splashed
+splashes
+splashing
+splashy
+splat
+splatter
+splattered
+splattering
+splayed
+splaying
+spleen
+spleens
+splendid
+splendidly
+splendour
+splendours
+splenetic
+splice
+spliced
+splicer
+splicers
+splices
+splicing
+spline
+splines
+splint
+splinted
+splinter
+splintered
+splintering
+splinters
+splints
+split
+splits
+splittable
+splitter
+splitters
+splitting
+splittings
+splodge
+splodges
+splotches
+splurge
+splutter
+spluttered
+spluttering
+splutters
+spoil
+spoilage
+spoiled
+spoiler
+spoilers
+spoiling
+spoils
+spoilsport
+spoilt
+spoke
+spoken
+spokes
+spokeshave
+spokeshaves
+spokesman
+spokesmen
+spokespeople
+spokesperson
+spokespersons
+spokeswoman
+spokeswomen
+sponge
+sponged
+sponger
+sponges
+spongier
+spongiest
+sponginess
+sponging
+spongy
+sponsor
+sponsored
+sponsoring
+sponsors
+sponsorship
+sponsorships
+spontaneity
+spontaneous
+spontaneously
+spoof
+spoofs
+spook
+spooked
+spooking
+spooks
+spooky
+spool
+spooled
+spooling
+spools
+spoon
+spooned
+spoonful
+spoonfuls
+spooning
+spoons
+spoor
+sporadic
+sporadically
+spore
+spores
+sporran
+sporrans
+sport
+sported
+sporting
+sportingly
+sportive
+sports
+sportsman
+sportsmanship
+sportsmen
+sportswear
+sporty
+spot
+spotless
+spotlessly
+spotlessness
+spotlight
+spotlighting
+spotlights
+spotlit
+spoton
+spots
+spotted
+spotter
+spotters
+spottier
+spottiest
+spotting
+spotty
+spouse
+spouses
+spout
+spouted
+spouting
+spouts
+sprain
+sprained
+spraining
+sprains
+sprang
+sprat
+sprats
+sprawl
+sprawled
+sprawling
+sprawls
+spray
+sprayed
+sprayer
+sprayers
+spraying
+sprays
+spread
+spreadeagled
+spreaders
+spreading
+spreads
+spreadsheet
+spreadsheets
+spree
+spreeing
+sprig
+sprightlier
+sprightliest
+sprightliness
+sprightly
+sprigs
+spring
+springboard
+springboards
+springbok
+springboks
+springclean
+springcleaned
+springer
+springier
+springiest
+springing
+springs
+springtime
+springy
+sprinkle
+sprinkled
+sprinkler
+sprinklers
+sprinkles
+sprinkling
+sprint
+sprinted
+sprinter
+sprinters
+sprinting
+sprints
+sprite
+sprites
+sprocket
+sprockets
+sprout
+sprouted
+sprouting
+sprouts
+spruce
+spruced
+sprucing
+sprung
+spry
+spud
+spume
+spun
+spunky
+spur
+spurge
+spurges
+spurious
+spuriously
+spurn
+spurned
+spurning
+spurns
+spurred
+spurring
+spurs
+spurt
+spurted
+spurting
+spurts
+sputnik
+sputniks
+sputter
+sputtered
+sputtering
+sputum
+spy
+spyglass
+spyhole
+spying
+spyings
+squabble
+squabbled
+squabbles
+squabbling
+squad
+squadron
+squadrons
+squads
+squalid
+squall
+squalling
+squalls
+squally
+squalor
+squander
+squandered
+squandering
+squanders
+square
+squared
+squarely
+squareness
+squarer
+squares
+squaring
+squarish
+squash
+squashed
+squashes
+squashier
+squashiest
+squashing
+squashy
+squat
+squats
+squatted
+squatter
+squatters
+squatting
+squaw
+squawk
+squawked
+squawking
+squawks
+squeak
+squeaked
+squeaker
+squeakier
+squeakiest
+squeaking
+squeaks
+squeaky
+squeal
+squealed
+squealer
+squealing
+squeals
+squeamish
+squeamishly
+squeamishness
+squeegee
+squeeze
+squeezed
+squeezer
+squeezes
+squeezing
+squeezy
+squelch
+squelched
+squelching
+squelchy
+squib
+squibs
+squid
+squids
+squiggle
+squiggles
+squint
+squinted
+squinting
+squints
+squire
+squirearchy
+squires
+squirm
+squirmed
+squirming
+squirms
+squirrel
+squirrelled
+squirrels
+squirt
+squirted
+squirting
+squirts
+srilanka
+stab
+stabbed
+stabber
+stabbing
+stabbings
+stabilisation
+stabilise
+stabilised
+stabiliser
+stabilisers
+stabilises
+stabilising
+stability
+stable
+stabled
+stablemate
+stabler
+stables
+stabling
+stably
+stabs
+staccato
+stack
+stacked
+stacker
+stacking
+stacks
+stadia
+stadium
+stadiums
+staff
+staffed
+staffing
+staffroom
+staffs
+stag
+stage
+stagecoach
+stagecoaches
+staged
+stagehands
+stager
+stages
+stagey
+stagflation
+stagger
+staggered
+staggering
+staggeringly
+staggers
+staging
+stagings
+stagnancy
+stagnant
+stagnate
+stagnated
+stagnates
+stagnating
+stagnation
+stags
+staid
+staidness
+stain
+stained
+stainer
+staining
+stainless
+stains
+stair
+staircase
+staircases
+stairhead
+stairs
+stairway
+stairways
+stairwell
+stairwells
+stake
+staked
+stakeholder
+stakeholders
+stakes
+staking
+stalactite
+stalactites
+stalagmite
+stalagmites
+stale
+stalemate
+stalemated
+stalemates
+staleness
+stalin
+stalk
+stalked
+stalker
+stalkers
+stalking
+stalks
+stall
+stalled
+stallholders
+stalling
+stallion
+stallions
+stalls
+stalwart
+stalwarts
+stamen
+stamens
+stamina
+stammer
+stammered
+stammering
+stammers
+stamp
+stamped
+stampede
+stampeded
+stampeding
+stamper
+stampers
+stamping
+stampings
+stamps
+stance
+stances
+stanchion
+stanchions
+stand
+standard
+standardisation
+standardisations
+standardise
+standardised
+standardises
+standardising
+standards
+standby
+standing
+standings
+standpoint
+standpoints
+stands
+standstill
+stank
+stanza
+stanzas
+stapes
+staphylococcus
+staple
+stapled
+stapler
+staplers
+staples
+stapling
+star
+starboard
+starch
+starched
+starches
+starchier
+starchiest
+starchy
+stardom
+stardust
+stare
+stared
+starer
+stares
+starfish
+stargaze
+stargazer
+stargazers
+stargazing
+staring
+stark
+starker
+starkest
+starkly
+starkness
+starless
+starlet
+starlets
+starlight
+starlike
+starling
+starlings
+starlit
+starred
+starrier
+starriest
+starring
+starry
+starryeyed
+stars
+starship
+starspangled
+starstruck
+starstudded
+start
+started
+starter
+starters
+starting
+startle
+startled
+startles
+startling
+startlingly
+starts
+startup
+startups
+starvation
+starve
+starved
+starves
+starving
+stashed
+stashes
+stashing
+stasis
+state
+statecraft
+stated
+statehood
+stateless
+stateliest
+stateliness
+stately
+statement
+statements
+stateoftheart
+staterooms
+states
+statesman
+statesmanlike
+statesmanship
+statesmen
+static
+statical
+statically
+statics
+stating
+station
+stationary
+stationed
+stationer
+stationers
+stationery
+stationing
+stationmaster
+stations
+statistic
+statistical
+statistically
+statistician
+statisticians
+statistics
+stator
+stators
+statuary
+statue
+statues
+statuesque
+statuette
+statuettes
+stature
+statures
+status
+statuses
+statute
+statutes
+statutorily
+statutory
+staunch
+staunchest
+staunching
+staunchly
+staunchness
+stave
+staved
+staves
+staving
+stay
+stayed
+stayers
+staying
+stays
+stead
+steadfast
+steadfastly
+steadfastness
+steadied
+steadier
+steadiest
+steadily
+steadiness
+steady
+steadygoing
+steadying
+steak
+steaks
+steal
+stealer
+stealers
+stealing
+steals
+stealth
+stealthier
+stealthiest
+stealthily
+stealthy
+steam
+steamboat
+steamboats
+steamed
+steamer
+steamers
+steamier
+steamiest
+steaming
+steamroller
+steamrollers
+steams
+steamship
+steamships
+steamy
+steed
+steeds
+steel
+steelclad
+steeled
+steeling
+steels
+steelwork
+steelworker
+steelworkers
+steelworks
+steely
+steep
+steeped
+steepen
+steepened
+steepening
+steepens
+steeper
+steepest
+steeping
+steeple
+steeplechase
+steeplechaser
+steeplechasers
+steeplechasing
+steepled
+steeplejack
+steeples
+steeply
+steepness
+steeps
+steer
+steerable
+steerage
+steered
+steering
+steers
+stegosaurus
+stellar
+stellated
+stem
+stemmed
+stemming
+stems
+stench
+stenches
+stencil
+stencilled
+stencils
+stenographer
+stenographers
+stenographic
+stenography
+stenosis
+stentor
+stentorian
+step
+stepbrother
+stepchildren
+stepdaughter
+stepfather
+stepladder
+stepmother
+stepparents
+steppe
+stepped
+steppes
+stepping
+steps
+stepsister
+stepson
+stepsons
+stepwise
+steradians
+stereo
+stereographic
+stereophonic
+stereos
+stereoscopic
+stereoscopically
+stereoscopy
+stereotype
+stereotyped
+stereotypes
+stereotypical
+stereotypically
+stereotyping
+sterile
+sterilisation
+sterilisations
+sterilise
+sterilised
+steriliser
+sterilising
+sterility
+sterling
+stern
+sterner
+sternest
+sternly
+sternness
+sterns
+sternum
+steroid
+steroids
+stet
+stethoscope
+stevedore
+stew
+steward
+stewardess
+stewardesses
+stewards
+stewardship
+stewed
+stewing
+stews
+stick
+sticker
+stickers
+stickiest
+stickily
+stickiness
+sticking
+stickleback
+sticklebacks
+stickler
+sticks
+sticky
+sties
+stiff
+stiffen
+stiffened
+stiffener
+stiffening
+stiffens
+stiffer
+stiffest
+stiffly
+stiffnecked
+stiffness
+stifle
+stifled
+stifles
+stifling
+stiflingly
+stigma
+stigmas
+stigmata
+stigmatisation
+stigmatise
+stigmatised
+stigmatising
+stiletto
+still
+stillbirths
+stillborn
+stilled
+stiller
+stilling
+stillness
+stills
+stilt
+stilted
+stilts
+stimulant
+stimulants
+stimulate
+stimulated
+stimulates
+stimulating
+stimulation
+stimulator
+stimulatory
+stimuli
+stimulus
+sting
+stinged
+stinger
+stingers
+stingier
+stingily
+stinging
+stingray
+stings
+stingy
+stink
+stinker
+stinkers
+stinking
+stinks
+stinky
+stint
+stinted
+stints
+stipel
+stipend
+stipendiary
+stipends
+stippled
+stipples
+stipulate
+stipulated
+stipulates
+stipulating
+stipulation
+stipulations
+stir
+stirfried
+stirfry
+stirred
+stirrer
+stirrers
+stirring
+stirrings
+stirrup
+stirrups
+stirs
+stitch
+stitched
+stitcher
+stitches
+stitching
+stoa
+stoat
+stoats
+stochastic
+stock
+stockade
+stockbroker
+stockbrokers
+stockbroking
+stockcar
+stocked
+stockholders
+stockholding
+stockier
+stockily
+stocking
+stockinged
+stockings
+stockist
+stockists
+stockpile
+stockpiled
+stockpiles
+stockpiling
+stockroom
+stocks
+stocktaking
+stocky
+stodge
+stodgier
+stodgiest
+stodgy
+stoep
+stoic
+stoical
+stoically
+stoicism
+stoics
+stoke
+stoked
+stoker
+stokers
+stokes
+stoking
+stole
+stolen
+stolid
+stolidity
+stolidly
+stoma
+stomach
+stomachache
+stomachs
+stomata
+stomp
+stomped
+stomping
+stomps
+stone
+stonecold
+stoned
+stoneless
+stonemason
+stonemasons
+stones
+stonewalled
+stoneware
+stonework
+stonier
+stoniest
+stonily
+stoning
+stony
+stood
+stooge
+stooges
+stool
+stoolpigeon
+stools
+stoop
+stooped
+stooping
+stoops
+stop
+stopcock
+stopgap
+stopover
+stoppable
+stoppage
+stoppages
+stopped
+stopper
+stoppered
+stoppers
+stopping
+stops
+stopwatch
+storage
+storages
+store
+stored
+storehouse
+storehouses
+storekeeper
+storekeepers
+storeman
+storeroom
+storerooms
+stores
+storey
+storeys
+stories
+storing
+stork
+storks
+storm
+stormed
+stormer
+stormers
+stormier
+stormiest
+storming
+storms
+stormtroopers
+stormy
+story
+storybook
+storyline
+storylines
+storyteller
+storytellers
+storytelling
+stout
+stouter
+stoutest
+stoutly
+stoutness
+stove
+stovepipe
+stoves
+stow
+stowage
+stowaway
+stowed
+stowing
+stows
+straddle
+straddled
+straddles
+straddling
+strafe
+strafed
+strafing
+straggle
+straggled
+straggler
+stragglers
+straggling
+straggly
+straight
+straightaway
+straighten
+straightened
+straightening
+straightens
+straighter
+straightest
+straightforward
+straightforwardly
+straightforwardness
+straightness
+strain
+strained
+strainer
+strainers
+straining
+strains
+strait
+straiten
+straitened
+straitjacket
+straitjackets
+straits
+strand
+stranded
+stranding
+strands
+strange
+strangely
+strangeness
+stranger
+strangers
+strangest
+strangle
+strangled
+stranglehold
+strangler
+stranglers
+strangles
+strangling
+strangulated
+strangulation
+strap
+strapless
+strapped
+strapper
+strapping
+straps
+strata
+stratagem
+stratagems
+strategic
+strategically
+strategies
+strategist
+strategists
+strategy
+stratification
+stratified
+stratifies
+stratifying
+stratigraphic
+stratigraphical
+stratigraphy
+stratosphere
+stratospheric
+stratospherically
+stratum
+stratus
+straw
+strawberries
+strawberry
+strawman
+straws
+stray
+strayed
+strayer
+straying
+strays
+streak
+streaked
+streaker
+streakers
+streakier
+streakiest
+streaking
+streaks
+streaky
+stream
+streamed
+streamer
+streamers
+streaming
+streamline
+streamlined
+streamlines
+streamlining
+streams
+street
+streets
+streetwalkers
+streetwise
+strength
+strengthen
+strengthened
+strengthening
+strengthens
+strengths
+strenuous
+strenuously
+streptococcal
+streptococci
+streptomycin
+stress
+stressed
+stresses
+stressful
+stressfulness
+stressing
+stretch
+stretchability
+stretchable
+stretched
+stretcher
+stretchered
+stretchers
+stretches
+stretchiness
+stretching
+stretchy
+strew
+strewed
+strewing
+strewn
+striated
+striation
+striations
+stricken
+strict
+stricter
+strictest
+strictly
+strictness
+stricture
+strictures
+stride
+stridency
+strident
+stridently
+strider
+strides
+striding
+strife
+strifes
+strike
+striker
+strikers
+strikes
+striking
+strikingly
+string
+stringed
+stringencies
+stringency
+stringent
+stringently
+stringer
+stringing
+strings
+stringy
+strip
+stripe
+striped
+striper
+stripes
+stripier
+stripiest
+striping
+stripling
+stripped
+stripper
+strippers
+stripping
+strips
+stripy
+strive
+strived
+striven
+striver
+strives
+striving
+strivings
+strode
+stroke
+stroked
+strokes
+stroking
+stroll
+strolled
+stroller
+strollers
+strolling
+strolls
+strong
+stronger
+strongest
+stronghold
+strongholds
+strongish
+strongly
+strongman
+strongmen
+strongminded
+strongroom
+strontium
+strop
+stropped
+stropping
+strops
+strove
+struck
+structural
+structuralism
+structuralist
+structuralists
+structurally
+structure
+structured
+structureless
+structures
+structuring
+strudel
+strudels
+struggle
+struggled
+struggles
+struggling
+strum
+strummed
+strumming
+strumpet
+strung
+strut
+struts
+strutted
+strutter
+strutting
+strychnine
+stub
+stubbed
+stubbing
+stubble
+stubbled
+stubbles
+stubbly
+stubborn
+stubbornly
+stubbornness
+stubby
+stubs
+stucco
+stuccoed
+stuck
+stuckup
+stud
+studded
+student
+students
+studentship
+studentships
+studied
+studier
+studiers
+studies
+studio
+studios
+studious
+studiously
+studiousness
+studs
+study
+studying
+stuff
+stuffed
+stuffer
+stuffier
+stuffiest
+stuffiness
+stuffing
+stuffs
+stuffy
+stultified
+stultify
+stultifying
+stumble
+stumbled
+stumbles
+stumbling
+stumblingly
+stump
+stumped
+stumping
+stumps
+stumpy
+stun
+stung
+stunned
+stunner
+stunning
+stunningly
+stuns
+stunt
+stunted
+stunting
+stuntman
+stunts
+stupefaction
+stupefied
+stupefy
+stupefying
+stupefyingly
+stupendous
+stupendously
+stupid
+stupider
+stupidest
+stupidities
+stupidity
+stupidly
+stupor
+stupors
+sturdier
+sturdiest
+sturdily
+sturdy
+sturgeon
+sturgeons
+stutter
+stuttered
+stuttering
+stutters
+sty
+style
+styled
+styles
+styli
+styling
+stylisation
+stylised
+stylish
+stylishly
+stylishness
+stylist
+stylistic
+stylistically
+stylistics
+stylists
+stylus
+styluses
+stymie
+stymied
+styrene
+styx
+suasion
+suave
+suavely
+sub
+subaltern
+subalterns
+subarctic
+subatomic
+subbed
+subbing
+subclass
+subclasses
+subcommittee
+subcommittees
+subconscious
+subconsciously
+subconsciousness
+subcontinent
+subcontract
+subcontracted
+subcontracting
+subcontractor
+subcontractors
+subcultural
+subculture
+subcultures
+subcutaneous
+subcutaneously
+subdivide
+subdivided
+subdivides
+subdividing
+subdivision
+subdivisions
+subducted
+subduction
+subdue
+subdued
+subdues
+subduing
+subeditor
+subeditors
+subfamily
+subgroup
+subgroups
+subharmonic
+subharmonics
+subhuman
+subject
+subjected
+subjecting
+subjection
+subjective
+subjectively
+subjectivism
+subjectivist
+subjectivity
+subjects
+subjugate
+subjugated
+subjugating
+subjugation
+subjunctive
+sublayer
+sublimate
+sublimated
+sublimation
+sublime
+sublimed
+sublimely
+sublimes
+sublimest
+subliminal
+subliminally
+sublimity
+sublunary
+submarine
+submarines
+submerge
+submerged
+submergence
+submerges
+submerging
+submersible
+submersion
+submission
+submissions
+submissive
+submissively
+submissiveness
+submit
+submits
+submittable
+submitted
+submitter
+submitters
+submitting
+subnormal
+suboptimal
+subordinate
+subordinated
+subordinates
+subordinating
+subordination
+subplot
+subplots
+subpoena
+subpoenaed
+subprogram
+subprograms
+subregional
+subroutine
+subroutines
+subs
+subscribe
+subscribed
+subscriber
+subscribers
+subscribes
+subscribing
+subscript
+subscription
+subscriptions
+subscripts
+subsection
+subsections
+subsequent
+subsequently
+subservience
+subservient
+subset
+subsets
+subside
+subsided
+subsidence
+subsides
+subsidiaries
+subsidiarity
+subsidiary
+subsidies
+subsiding
+subsidise
+subsidised
+subsidises
+subsidising
+subsidy
+subsist
+subsisted
+subsistence
+subsisting
+subsists
+subsoil
+subsonic
+subspace
+subspaces
+subspecies
+substance
+substances
+substandard
+substantial
+substantially
+substantiate
+substantiated
+substantiates
+substantiating
+substantiation
+substantive
+substantively
+substantives
+substation
+substitutable
+substitute
+substituted
+substitutes
+substituting
+substitution
+substitutions
+substrata
+substrate
+substrates
+substratum
+substructure
+substructures
+subsume
+subsumed
+subsumes
+subsuming
+subsurface
+subsystem
+subsystems
+subtenants
+subtend
+subtended
+subtending
+subtends
+subterfuge
+subterranean
+subtext
+subtitle
+subtitled
+subtitles
+subtitling
+subtle
+subtler
+subtlest
+subtleties
+subtlety
+subtly
+subtotal
+subtotals
+subtract
+subtracted
+subtracting
+subtraction
+subtractions
+subtractive
+subtractively
+subtracts
+subtropical
+subtropics
+subtype
+subtypes
+subunit
+subunits
+suburb
+suburban
+suburbanisation
+suburbanites
+suburbia
+suburbs
+subvention
+subventions
+subversion
+subversive
+subversively
+subversives
+subvert
+subverted
+subverting
+subverts
+subway
+subways
+subzero
+succeed
+succeeded
+succeeding
+succeeds
+success
+successes
+successful
+successfully
+succession
+successions
+successive
+successively
+successor
+successors
+succinct
+succinctly
+succinctness
+succour
+succulence
+succulent
+succumb
+succumbed
+succumbing
+succumbs
+such
+suchandsuch
+suchlike
+suck
+suckable
+sucked
+sucker
+suckers
+sucking
+suckle
+suckled
+suckles
+suckling
+sucklings
+sucks
+sucrose
+suction
+sud
+sudan
+sudden
+suddenly
+suddenness
+suds
+sue
+sued
+suede
+sues
+suet
+suffer
+sufferance
+suffered
+sufferer
+sufferers
+suffering
+sufferings
+suffers
+suffice
+sufficed
+suffices
+sufficiency
+sufficient
+sufficiently
+sufficing
+suffix
+suffixed
+suffixes
+suffocate
+suffocated
+suffocates
+suffocating
+suffocatingly
+suffocation
+suffrage
+suffragette
+suffragettes
+suffragist
+suffuse
+suffused
+suffuses
+suffusing
+suffusion
+sugar
+sugarcoated
+sugared
+sugaring
+sugarplums
+sugars
+sugary
+suggest
+suggested
+suggester
+suggesters
+suggestibility
+suggestible
+suggesting
+suggestion
+suggestions
+suggestive
+suggestively
+suggestiveness
+suggests
+sugillate
+suicidal
+suicidally
+suicide
+suicides
+suing
+suit
+suitabilities
+suitability
+suitable
+suitableness
+suitably
+suitcase
+suitcases
+suite
+suited
+suites
+suiting
+suitor
+suitors
+suits
+sulk
+sulked
+sulkier
+sulkiest
+sulkily
+sulkiness
+sulking
+sulks
+sulky
+sullen
+sullenly
+sullenness
+sullied
+sully
+sullying
+sulphate
+sulphates
+sulphide
+sulphides
+sulphonamides
+sulphur
+sulphuric
+sulphurous
+sultan
+sultana
+sultanas
+sultans
+sultry
+sum
+sumatra
+summa
+summability
+summable
+summaries
+summarily
+summarise
+summarised
+summariser
+summarisers
+summarises
+summarising
+summary
+summation
+summations
+summed
+summer
+summers
+summertime
+summery
+summing
+summit
+summits
+summon
+summoned
+summoner
+summoning
+summonings
+summons
+summonsed
+summonses
+summonsing
+sumo
+sump
+sumps
+sumptuous
+sumptuously
+sumptuousness
+sums
+sun
+sunbath
+sunbathe
+sunbathed
+sunbathers
+sunbathing
+sunbeam
+sunbeams
+sunbed
+sunbeds
+sunblock
+sunburn
+sunburned
+sunburns
+sunburnt
+sunburst
+suncream
+sundaes
+sunday
+sundays
+sundial
+sundials
+sundown
+sundried
+sundries
+sundry
+sunflower
+sunflowers
+sung
+sunglasses
+sunk
+sunken
+sunking
+sunless
+sunlight
+sunlit
+sunlounger
+sunned
+sunnier
+sunniest
+sunning
+sunny
+sunrise
+sunrises
+sunroof
+suns
+sunscreen
+sunscreens
+sunset
+sunsets
+sunshade
+sunshine
+sunspot
+sunspots
+sunstroke
+suntan
+suntanned
+sup
+super
+superabundance
+superabundant
+superannuate
+superannuated
+superannuating
+superannuation
+superb
+superbly
+supercharged
+supercharger
+supercilious
+superciliously
+superciliousness
+supercomputer
+supercomputers
+supercomputing
+superconducting
+superconductivity
+superconductor
+superconductors
+supercooled
+supercooling
+supercritical
+superdense
+superfamily
+superficial
+superficiality
+superficially
+superfix
+superfluities
+superfluity
+superfluous
+superfluously
+superglue
+superheat
+superheated
+superhero
+superhuman
+superimpose
+superimposed
+superimposes
+superimposing
+superimposition
+superintend
+superintendence
+superintendent
+superintendents
+superior
+superiority
+superiors
+superlative
+superlatively
+superlatives
+superman
+supermarket
+supermarkets
+supermen
+supermodel
+supermodels
+supernatant
+supernatural
+supernaturally
+supernova
+supernovae
+supernumerary
+superordinate
+superpose
+superposed
+superposition
+superpositions
+superpower
+superpowers
+supersaturated
+supersaturation
+superscript
+superscripts
+supersede
+superseded
+supersedes
+superseding
+supersonic
+supersonically
+superstar
+superstars
+superstate
+superstates
+superstition
+superstitions
+superstitious
+superstitiously
+superstore
+superstores
+superstructure
+superstructures
+supertanker
+supertankers
+supervene
+supervise
+supervised
+supervises
+supervising
+supervision
+supervisions
+supervisor
+supervisors
+supervisory
+supine
+supped
+supper
+suppers
+supping
+supplant
+supplanted
+supplanting
+supple
+supplement
+supplemental
+supplementary
+supplementation
+supplemented
+supplementing
+supplements
+suppleness
+suppliant
+suppliants
+supplicant
+supplicants
+supplicate
+supplicating
+supplication
+supplications
+supplied
+supplier
+suppliers
+supplies
+supply
+supplying
+support
+supportability
+supportable
+supported
+supporter
+supporters
+supporting
+supportive
+supports
+suppose
+supposed
+supposedly
+supposes
+supposing
+supposition
+suppositions
+suppositories
+suppress
+suppressed
+suppresses
+suppressible
+suppressing
+suppression
+suppressive
+suppressor
+suppressors
+suppurating
+supranational
+supranationalism
+supremacist
+supremacy
+supremal
+supreme
+supremely
+supremo
+sups
+surcharge
+surcharged
+surcharges
+surd
+sure
+surefooted
+surely
+sureness
+surer
+surest
+sureties
+surety
+surf
+surface
+surfaced
+surfacer
+surfaces
+surfacing
+surfactant
+surfactants
+surfboard
+surfed
+surfeit
+surfer
+surfers
+surfing
+surfings
+surfs
+surge
+surged
+surgeon
+surgeons
+surgeries
+surgery
+surges
+surgical
+surgically
+surging
+surliest
+surlily
+surliness
+surly
+surmise
+surmised
+surmises
+surmising
+surmount
+surmountable
+surmounted
+surmounting
+surname
+surnames
+surpass
+surpassed
+surpasses
+surpassing
+surplice
+surplus
+surpluses
+surprise
+surprised
+surprises
+surprising
+surprisingly
+surreal
+surrealism
+surrealist
+surrealistic
+surrealists
+surreality
+surrender
+surrendered
+surrendering
+surrenders
+surreptitious
+surreptitiously
+surrey
+surreys
+surrogacy
+surrogate
+surrogates
+surround
+surrounded
+surrounding
+surroundings
+surrounds
+surtax
+surtitles
+surveillance
+survey
+surveyed
+surveying
+surveyor
+surveyors
+surveys
+survivability
+survivable
+survival
+survivals
+survive
+survived
+survives
+surviving
+survivor
+survivors
+susceptibilities
+susceptibility
+susceptible
+sushi
+sushis
+suspect
+suspected
+suspecting
+suspects
+suspend
+suspended
+suspender
+suspenders
+suspending
+suspends
+suspense
+suspension
+suspensions
+suspicion
+suspicions
+suspicious
+suspiciously
+sustain
+sustainability
+sustainable
+sustainably
+sustained
+sustaining
+sustains
+sustenance
+suture
+sutures
+suzerainty
+swab
+swabbed
+swabbing
+swabs
+swad
+swaddled
+swaddling
+swads
+swag
+swagger
+swaggered
+swaggering
+swags
+swahili
+swains
+swallow
+swallowed
+swallower
+swallowing
+swallows
+swallowtail
+swam
+swamp
+swamped
+swampier
+swampiest
+swamping
+swampland
+swamplands
+swamps
+swampy
+swan
+swans
+swansong
+swap
+swappable
+swapped
+swapper
+swappers
+swapping
+swaps
+sward
+swarm
+swarmed
+swarming
+swarms
+swarthier
+swarthiest
+swarthy
+swashbuckling
+swastika
+swastikas
+swat
+swathe
+swathed
+swathes
+swats
+swatted
+swatting
+sway
+swayed
+swaying
+sways
+swazi
+swazis
+swear
+swearer
+swearers
+swearing
+swears
+swearword
+swearwords
+sweat
+sweatband
+sweated
+sweater
+sweaters
+sweatier
+sweatiest
+sweatily
+sweating
+sweats
+sweatshirt
+sweatshirts
+sweatshop
+sweatshops
+sweaty
+swede
+sweden
+swedish
+sweep
+sweepable
+sweeper
+sweepers
+sweeping
+sweepingly
+sweepings
+sweeps
+sweepstake
+sweet
+sweetbread
+sweetcorn
+sweeten
+sweetened
+sweetener
+sweeteners
+sweetening
+sweetens
+sweeter
+sweetest
+sweetheart
+sweethearts
+sweetie
+sweetish
+sweetly
+sweetmeat
+sweetmeats
+sweetness
+sweetpea
+sweets
+sweetshop
+swell
+swelled
+swelling
+swellings
+swells
+sweltering
+sweltry
+swept
+swerve
+swerved
+swerves
+swerving
+swift
+swifter
+swiftest
+swiftlet
+swiftly
+swiftness
+swifts
+swill
+swilled
+swilling
+swim
+swimmer
+swimmers
+swimming
+swimmingly
+swims
+swimsuit
+swimsuits
+swimwear
+swindle
+swindled
+swindler
+swindlers
+swindles
+swindling
+swine
+swines
+swing
+swingeing
+swinger
+swingers
+swinging
+swings
+swingy
+swipe
+swiped
+swipes
+swirl
+swirled
+swirling
+swirls
+swish
+swished
+swishing
+swishy
+swiss
+switch
+switchable
+switchback
+switchboard
+switchboards
+switched
+switcher
+switches
+switchgear
+switching
+swivel
+swivelled
+swivelling
+swivels
+swollen
+swoon
+swooned
+swooning
+swoons
+swoop
+swooped
+swooping
+swoops
+swop
+swopped
+swopping
+swops
+sword
+swordfish
+swords
+swordsman
+swordsmen
+swore
+sworn
+swot
+swots
+swotted
+swotting
+swum
+swung
+sycamore
+sycamores
+sycophancy
+sycophant
+sycophantic
+sycophantically
+sycophants
+sydney
+syllabary
+syllabi
+syllabic
+syllable
+syllables
+syllabub
+syllabus
+syllabuses
+syllogism
+syllogisms
+syllogistic
+sylph
+sylphs
+symbiont
+symbiosis
+symbiotic
+symbiotically
+symbol
+symbolic
+symbolical
+symbolically
+symbolisation
+symbolise
+symbolised
+symbolises
+symbolising
+symbolism
+symbolist
+symbolists
+symbols
+symmetric
+symmetrical
+symmetrically
+symmetries
+symmetrisation
+symmetrising
+symmetry
+sympathetic
+sympathetically
+sympathies
+sympathise
+sympathised
+sympathiser
+sympathisers
+sympathises
+sympathising
+sympathy
+symphonic
+symphonies
+symphonists
+symphony
+symposia
+symposium
+symptom
+symptomatic
+symptomatically
+symptomless
+symptoms
+synagogue
+synagogues
+synapse
+synapses
+synaptic
+sync
+synchronic
+synchronicity
+synchronisation
+synchronise
+synchronised
+synchronises
+synchronising
+synchronous
+synchronously
+synchrony
+synchrotron
+syncopated
+syncopation
+syncretic
+syndicalism
+syndicalist
+syndicate
+syndicated
+syndicates
+syndication
+syndrome
+syndromes
+synergism
+synergistic
+synergy
+synod
+synodic
+synods
+synonym
+synonymic
+synonymous
+synonymously
+synonyms
+synonymy
+synopses
+synopsis
+synoptic
+synovial
+syntactic
+syntactical
+syntactically
+syntagmatic
+syntax
+syntheses
+synthesis
+synthesise
+synthesised
+synthesiser
+synthesisers
+synthesises
+synthesising
+synthetic
+synthetically
+synthetics
+syphilis
+syphilitic
+syphon
+syphoned
+syphoning
+syphons
+syria
+syrian
+syringe
+syringes
+syrup
+syrups
+syrupy
+system
+systematic
+systematically
+systematisation
+systematise
+systemic
+systemically
+systems
+systoles
+systolic
+taal
+tab
+tabasco
+tabbed
+tabbing
+tabby
+tabernacle
+tabernacles
+table
+tableau
+tableaux
+tablebay
+tablecloth
+tablecloths
+tabled
+tableland
+tables
+tablespoon
+tablespoonfuls
+tablespoons
+tablet
+tablets
+tableware
+tabling
+tabloid
+tabloids
+taboo
+taboos
+tabs
+tabular
+tabulate
+tabulated
+tabulates
+tabulating
+tabulation
+tabulations
+tabulator
+tachograph
+tachographs
+tachycardia
+tachyon
+tachyons
+tacit
+tacitly
+taciturn
+tack
+tacked
+tackier
+tackiest
+tackiness
+tacking
+tackle
+tackled
+tackler
+tackles
+tackling
+tacks
+tacky
+tact
+tactful
+tactfully
+tactic
+tactical
+tactically
+tactician
+tactics
+tactile
+tactless
+tactlessly
+tactlessness
+tactual
+tadpole
+tadpoles
+taffeta
+tag
+tagged
+tagging
+tags
+tahiti
+tahr
+tail
+tailed
+tailing
+tailless
+taillessness
+tailor
+tailorable
+tailored
+tailoring
+tailormade
+tailors
+tailpiece
+tailplane
+tails
+tailspin
+tailwind
+taint
+tainted
+tainting
+taints
+taipei
+taiwan
+take
+takeable
+takeaway
+takeaways
+taken
+takeover
+takeovers
+taker
+takers
+takes
+taking
+takings
+talc
+talcum
+tale
+talent
+talented
+talentless
+talents
+tales
+talisman
+talismans
+talk
+talkative
+talkativeness
+talkback
+talked
+talker
+talkers
+talkie
+talkies
+talking
+talkings
+talks
+tall
+tallboy
+taller
+tallest
+tallied
+tallies
+tallish
+tallness
+tallow
+tally
+tallyho
+tallying
+talmud
+talon
+talons
+tambourine
+tambourines
+tame
+tamed
+tamely
+tameness
+tamer
+tamers
+tames
+tamest
+taming
+tamp
+tamped
+tamper
+tampered
+tampering
+tampers
+tan
+tandem
+tandems
+tang
+tangelo
+tangent
+tangential
+tangentially
+tangents
+tangerine
+tangerines
+tangible
+tangibly
+tangle
+tangled
+tangles
+tangling
+tango
+tangy
+tank
+tankage
+tankard
+tankards
+tanked
+tanker
+tankers
+tankful
+tanking
+tanks
+tanned
+tanner
+tanneries
+tanners
+tannery
+tannic
+tannin
+tanning
+tannins
+tannoy
+tans
+tantalise
+tantalised
+tantalising
+tantalisingly
+tantalum
+tantamount
+tantrum
+tantrums
+tanzania
+tap
+tapas
+tapdance
+tapdancing
+tape
+taped
+taper
+taperecorded
+taperecording
+tapered
+taperer
+tapering
+tapers
+tapes
+tapestries
+tapestry
+tapeworm
+tapeworms
+taping
+tapioca
+tapir
+tapped
+tappers
+tapping
+tappings
+taproom
+taps
+tar
+taramasalata
+tarantula
+tarantulas
+tardily
+tardiness
+tardy
+tares
+target
+targeted
+targeting
+targets
+tariff
+tariffs
+tarmac
+tarmacadam
+tarn
+tarnish
+tarnished
+tarnishing
+tarns
+tarot
+tarpaulin
+tarpaulins
+tarragon
+tarred
+tarried
+tarrier
+tarriest
+tarring
+tarry
+tarrying
+tars
+tarsal
+tarsus
+tart
+tartan
+tartans
+tartar
+tartaric
+tartly
+tartness
+tartrate
+tarts
+tarty
+tarzan
+task
+tasked
+tasking
+taskmaster
+tasks
+tasmania
+tassel
+tasselled
+tassels
+taste
+tasted
+tasteful
+tastefully
+tastefulness
+tasteless
+tastelessly
+tastelessness
+taster
+tasters
+tastes
+tastier
+tastiest
+tasting
+tastings
+tasty
+tat
+tattered
+tatters
+tattle
+tattoo
+tattooed
+tattooing
+tattoos
+tatty
+tau
+taught
+taunt
+taunted
+taunter
+taunting
+tauntingly
+taunts
+taut
+tauter
+tautest
+tautly
+tautness
+tautological
+tautologically
+tautologies
+tautologous
+tautology
+tavern
+taverna
+tavernas
+taverns
+tawdry
+tawny
+tax
+taxable
+taxation
+taxdeductible
+taxed
+taxes
+taxfree
+taxi
+taxicab
+taxidermist
+taxidermists
+taxidermy
+taxied
+taxies
+taxiing
+taxing
+taxis
+taxman
+taxonomic
+taxonomical
+taxonomies
+taxonomist
+taxonomists
+taxonomy
+taxpayer
+taxpayers
+taxpaying
+taylor
+tea
+teabag
+teabags
+teach
+teachable
+teacher
+teachers
+teaches
+teaching
+teachings
+teacloth
+teacup
+teacups
+teak
+teal
+team
+teamed
+teaming
+teammate
+teammates
+teams
+teamster
+teamwork
+teaparty
+teapot
+teapots
+tear
+tearaway
+teardrop
+teardrops
+tearful
+tearfully
+tearfulness
+teargas
+tearing
+tearless
+tearoom
+tearooms
+tears
+tearstained
+teas
+tease
+teased
+teaser
+teasers
+teases
+teashop
+teashops
+teasing
+teasingly
+teaspoon
+teaspoonful
+teaspoonfuls
+teaspoons
+teat
+teatime
+teatimes
+teats
+tech
+technical
+technicalities
+technicality
+technically
+technician
+technicians
+technique
+techniques
+technocracies
+technocracy
+technocrat
+technocratic
+technocrats
+technological
+technologically
+technologies
+technologist
+technologists
+technology
+technophiles
+technophobia
+technophobic
+tectonic
+tectonically
+tectonics
+ted
+teddies
+teddy
+tedious
+tediously
+tediousness
+tedium
+tediums
+teds
+tee
+teed
+teehee
+teeing
+teem
+teemed
+teeming
+teems
+teen
+teenage
+teenaged
+teenager
+teenagers
+teeniest
+teens
+teensy
+teeny
+teenyweeny
+teepee
+teepees
+tees
+teeter
+teetered
+teetering
+teeth
+teethe
+teethed
+teethes
+teething
+teethmarks
+teetotal
+teetotalism
+teetotaller
+teetotallers
+teheran
+telaviv
+telecommunication
+telecommunications
+telecommuting
+telecoms
+teleconference
+telegram
+telegrams
+telegraph
+telegraphed
+telegraphic
+telegraphing
+telegraphs
+telegraphy
+telekinesis
+telemetry
+teleological
+teleology
+telepathic
+telepathically
+telepathy
+telephone
+telephoned
+telephones
+telephonic
+telephoning
+telephonist
+telephonists
+telephony
+telephoto
+teleprinter
+teleprinters
+telesales
+telescope
+telescoped
+telescopes
+telescopic
+telescoping
+teletext
+telethon
+teletype
+teletypes
+televise
+televised
+televising
+television
+televisions
+televisual
+teleworking
+telex
+telexes
+tell
+teller
+tellers
+telling
+tellingly
+tells
+telltale
+telly
+temerity
+temper
+tempera
+temperament
+temperamental
+temperamentally
+temperaments
+temperance
+temperate
+temperately
+temperature
+temperatures
+tempered
+tempering
+tempers
+tempest
+tempests
+tempestuous
+tempi
+template
+templates
+temple
+temples
+tempo
+temporal
+temporality
+temporally
+temporaries
+temporarily
+temporary
+tempt
+temptation
+temptations
+tempted
+tempter
+tempters
+tempting
+temptingly
+temptress
+tempts
+ten
+tenability
+tenable
+tenacious
+tenaciously
+tenacity
+tenancies
+tenancy
+tenant
+tenanted
+tenantry
+tenants
+tench
+tend
+tended
+tendencies
+tendency
+tendentious
+tendentiously
+tender
+tendered
+tenderer
+tenderest
+tendering
+tenderly
+tenderness
+tenders
+tending
+tendon
+tendons
+tendril
+tendrils
+tends
+tenement
+tenements
+tenet
+tenets
+tenfold
+tenners
+tennis
+tenon
+tenor
+tenors
+tens
+tense
+tensed
+tensely
+tenseness
+tenser
+tenses
+tensest
+tensile
+tensing
+tension
+tensional
+tensioned
+tensions
+tensity
+tensor
+tensors
+tent
+tentacle
+tentacled
+tentacles
+tentative
+tentatively
+tented
+tenterhooks
+tenth
+tenths
+tents
+tenuous
+tenuously
+tenure
+tenured
+tenures
+tenurial
+tepee
+tepid
+tequila
+tercentenary
+term
+termed
+terminal
+terminally
+terminals
+terminate
+terminated
+terminates
+terminating
+termination
+terminations
+terminator
+terminators
+terming
+termini
+terminological
+terminologies
+terminology
+terminus
+termite
+termites
+termly
+terms
+tern
+ternary
+terns
+terrace
+terraced
+terraces
+terracing
+terracotta
+terraform
+terraformed
+terrain
+terrains
+terrapin
+terrapins
+terrazzo
+terrestrial
+terrible
+terribly
+terrier
+terriers
+terrific
+terrifically
+terrified
+terrifies
+terrify
+terrifying
+terrifyingly
+terrine
+territorial
+territoriality
+territorially
+territories
+territory
+terror
+terrorise
+terrorised
+terrorising
+terrorism
+terrorist
+terrorists
+terrors
+terrorstricken
+terry
+terse
+tersely
+terseness
+terser
+tertiaries
+tertiary
+tessellated
+tessellation
+tessellations
+tesseral
+test
+testability
+testable
+testament
+testamentary
+testaments
+testdrive
+testdriving
+tested
+tester
+testers
+testes
+testicle
+testicles
+testicular
+testier
+testiest
+testified
+testifies
+testify
+testifying
+testily
+testimonial
+testimonials
+testimonies
+testimony
+testiness
+testing
+testings
+testis
+testosterone
+tests
+testtube
+testy
+tetanus
+tetchily
+tetchy
+tether
+tethered
+tethering
+tethers
+tetra
+tetrachloride
+tetrahedra
+tetrahedral
+tetrahedron
+tetrahedrons
+tetrameters
+tetroxide
+texan
+texans
+texas
+text
+textbook
+textbooks
+textile
+textiles
+texts
+textual
+textuality
+textually
+textural
+texturally
+texture
+textured
+textures
+thai
+thalamus
+thalidomide
+thallium
+thames
+than
+thane
+thank
+thanked
+thankful
+thankfully
+thankfulness
+thanking
+thankless
+thanklessly
+thanks
+thanksgiving
+that
+thatch
+thatched
+thatcher
+thatchers
+thatching
+thaumaturge
+thaw
+thawed
+thawing
+thaws
+the
+theatre
+theatres
+theatrical
+theatricality
+theatrically
+theatricals
+thebes
+thee
+theft
+thefts
+their
+theirs
+theism
+theist
+theistic
+theists
+them
+themas
+thematic
+thematically
+theme
+themed
+themes
+themselves
+then
+thence
+thenceforth
+thenceforward
+theocracies
+theocracy
+theodolite
+theodolites
+theologian
+theologians
+theological
+theologically
+theologies
+theologists
+theology
+theorem
+theorems
+theoretic
+theoretical
+theoretically
+theoretician
+theoreticians
+theories
+theorisation
+theorise
+theorised
+theorises
+theorising
+theorist
+theorists
+theory
+theosophy
+therapeutic
+therapeutically
+therapies
+therapist
+therapists
+therapy
+there
+thereabouts
+thereafter
+thereby
+therefor
+therefore
+therefrom
+therein
+thereof
+thereon
+thereto
+thereunder
+thereupon
+therewith
+thermal
+thermally
+thermals
+thermochemical
+thermodynamic
+thermodynamical
+thermodynamically
+thermodynamics
+thermoelectric
+thermometer
+thermometers
+thermoplastic
+thermostat
+thermostatic
+thermostatically
+thermostats
+therms
+thesauri
+thesaurus
+these
+thesis
+thespian
+thespians
+theta
+they
+thick
+thicken
+thickened
+thickening
+thickens
+thicker
+thickest
+thicket
+thickets
+thickish
+thickly
+thickness
+thicknesses
+thickset
+thickskinned
+thief
+thieve
+thieved
+thievery
+thieves
+thieving
+thievish
+thievishness
+thigh
+thighs
+thimble
+thimbleful
+thimblefuls
+thimbles
+thin
+thine
+thing
+things
+think
+thinkable
+thinker
+thinkers
+thinking
+thinks
+thinktank
+thinly
+thinned
+thinner
+thinners
+thinness
+thinnest
+thinning
+thinnish
+thins
+third
+thirdly
+thirds
+thirst
+thirsted
+thirstier
+thirstiest
+thirstily
+thirsting
+thirsts
+thirsty
+thirteen
+thirteenth
+thirties
+thirtieth
+thirty
+this
+thistle
+thistles
+thither
+thomas
+thong
+thongs
+thor
+thoracic
+thorax
+thorium
+thorn
+thornier
+thorniest
+thorns
+thorny
+thorough
+thoroughbred
+thoroughbreds
+thoroughfare
+thoroughfares
+thoroughgoing
+thoroughly
+thoroughness
+those
+thou
+though
+thought
+thoughtful
+thoughtfully
+thoughtfulness
+thoughtless
+thoughtlessly
+thoughtlessness
+thoughtprovoking
+thoughts
+thousand
+thousandfold
+thousands
+thousandth
+thousandths
+thrall
+thrash
+thrashed
+thrasher
+thrashes
+thrashing
+thrashings
+thread
+threadbare
+threaded
+threading
+threads
+threat
+threaten
+threatened
+threatening
+threateningly
+threatens
+threats
+three
+threedimensional
+threefold
+threequarters
+threes
+threesome
+threesomes
+thresh
+threshed
+thresher
+threshers
+threshing
+threshold
+thresholds
+threw
+thrice
+thrift
+thriftier
+thriftiest
+thriftless
+thrifts
+thrifty
+thrill
+thrilled
+thriller
+thrillers
+thrilling
+thrillingly
+thrills
+thrive
+thrived
+thrives
+thriving
+throat
+throatier
+throatiest
+throatily
+throats
+throaty
+throb
+throbbed
+throbbing
+throbs
+thromboses
+thrombosis
+thrombus
+throne
+throned
+thrones
+throng
+thronged
+thronging
+throngs
+throroughly
+throttle
+throttled
+throttles
+throttling
+through
+throughout
+throughput
+throw
+throwaway
+throwback
+thrower
+throwers
+throwing
+thrown
+throws
+thrum
+thrush
+thrushes
+thrust
+thruster
+thrusters
+thrusting
+thrusts
+thud
+thudded
+thudding
+thuds
+thug
+thuggery
+thuggish
+thugs
+thumb
+thumbed
+thumbing
+thumbnail
+thumbprint
+thumbs
+thumbscrew
+thumbscrews
+thump
+thumped
+thumping
+thumps
+thunder
+thunderbolt
+thunderbolts
+thunderclap
+thunderclaps
+thundercloud
+thundered
+thunderflashes
+thundering
+thunderous
+thunderously
+thunders
+thunderstorm
+thunderstorms
+thunderstruck
+thundery
+thursday
+thus
+thwack
+thwart
+thwarted
+thwarting
+thwarts
+thy
+thyme
+thymus
+thyristor
+thyristors
+thyroid
+thyroids
+thyself
+tiara
+tiaras
+tibia
+tibiae
+tic
+tick
+ticked
+ticker
+tickers
+ticket
+ticketed
+tickets
+ticking
+tickle
+tickled
+tickler
+tickles
+tickling
+ticklish
+ticks
+tics
+tidal
+tidbit
+tidbits
+tiddlers
+tiddlywinks
+tide
+tideless
+tides
+tideway
+tidied
+tidier
+tidies
+tidiest
+tidily
+tidiness
+tiding
+tidings
+tidy
+tidying
+tie
+tiebreak
+tied
+tier
+tiered
+tiers
+ties
+tiger
+tigerish
+tigers
+tight
+tighten
+tightened
+tightening
+tightens
+tighter
+tightest
+tightfisted
+tightlipped
+tightly
+tightness
+tightrope
+tights
+tightwad
+tigress
+tigris
+tikka
+tilde
+tildes
+tile
+tiled
+tiler
+tiles
+tiling
+tilings
+till
+tillage
+tilled
+tiller
+tillers
+tilling
+tills
+tilt
+tilted
+tilting
+tilts
+timber
+timbered
+timbre
+time
+timebase
+timeconsuming
+timed
+timeframe
+timehonoured
+timekeeper
+timekeepers
+timekeeping
+timelapse
+timeless
+timelessness
+timeliness
+timely
+timeout
+timepiece
+timer
+timers
+times
+timescale
+timescales
+timeshare
+timetable
+timetabled
+timetables
+timetabling
+timid
+timidity
+timidly
+timing
+timings
+tin
+tincan
+tincture
+tinctured
+tinder
+tinderbox
+tinfoil
+tinge
+tinged
+tinges
+tingle
+tingled
+tingles
+tinglier
+tingliest
+tingling
+tingly
+tinier
+tiniest
+tinker
+tinkered
+tinkering
+tinkers
+tinkle
+tinkled
+tinkling
+tinkly
+tinned
+tinner
+tinnier
+tinniest
+tinnily
+tinnitus
+tinny
+tinopener
+tinpot
+tins
+tinsel
+tinsels
+tint
+tinted
+tinting
+tintings
+tints
+tinware
+tiny
+tip
+tipoff
+tipoffs
+tipped
+tipper
+tipping
+tipple
+tippling
+tips
+tipster
+tipsters
+tipsy
+tiptoe
+tiptoed
+tiptoeing
+tiptoes
+tiptop
+tirade
+tirades
+tire
+tired
+tiredly
+tiredness
+tireless
+tirelessly
+tires
+tiresome
+tiresomely
+tiring
+tiro
+tissue
+tissues
+tit
+titan
+titanic
+titanically
+titanium
+titans
+titbit
+titbits
+titfortat
+tithe
+tithes
+tithing
+titillate
+titillated
+titillating
+titillation
+title
+titled
+titles
+titling
+titrated
+titration
+titre
+titres
+tits
+titter
+tittered
+tittering
+titters
+titular
+to
+toad
+toadies
+toads
+toadstool
+toadstools
+toady
+toast
+toasted
+toaster
+toasters
+toasting
+toasts
+toasty
+tobacco
+tobacconist
+tobacconists
+tobago
+toboggan
+tobogganing
+toby
+toccata
+tocsin
+today
+toddle
+toddled
+toddler
+toddlers
+toddling
+toddy
+todies
+toe
+toed
+toehold
+toeing
+toeless
+toenail
+toenails
+toes
+toffee
+toffees
+toffy
+tofu
+tog
+toga
+togas
+together
+togetherness
+toggle
+toggled
+toggles
+toggling
+togo
+togs
+toil
+toiled
+toiler
+toilet
+toileting
+toiletries
+toiletry
+toilets
+toilette
+toiling
+toils
+toitoi
+tokamak
+token
+tokenism
+tokenistic
+tokens
+tokyo
+tolbooth
+told
+toledo
+tolerable
+tolerably
+tolerance
+tolerances
+tolerant
+tolerantly
+tolerate
+tolerated
+tolerates
+tolerating
+toleration
+toll
+tolled
+tollgate
+tolling
+tolls
+toluene
+tomahawk
+tomahawks
+tomato
+tomb
+tombola
+tomboy
+tomboys
+tombs
+tombstone
+tombstones
+tomcat
+tome
+tomes
+tomfoolery
+tomography
+tomorrow
+tomorrows
+tomtom
+ton
+tonal
+tonalities
+tonality
+tonally
+tone
+toned
+tonedeaf
+toneless
+tonelessly
+toner
+toners
+tones
+tonga
+tongs
+tongue
+tongueincheek
+tongues
+tonguetied
+tonguetwister
+tonguetwisters
+tonic
+tonics
+tonight
+toning
+tonnage
+tonnages
+tonne
+tonnes
+tons
+tonsil
+tonsillectomy
+tonsillitis
+tonsils
+tonsure
+tony
+too
+took
+tool
+toolbox
+toolboxes
+tooled
+tooling
+toolmaker
+toolmaking
+tools
+toot
+tooted
+tooth
+toothache
+toothbrush
+toothbrushes
+toothed
+toothier
+toothiest
+toothless
+toothmarks
+toothpaste
+toothpick
+toothpicks
+toothsome
+toothy
+tooting
+tootle
+top
+topaz
+topazes
+topcoat
+topheavy
+topiary
+topic
+topical
+topicality
+topically
+topics
+topless
+toplevel
+topmost
+topnotch
+topographic
+topographical
+topographically
+topography
+topological
+topologically
+topologies
+topologist
+topologists
+topology
+topped
+topper
+topping
+toppings
+topple
+toppled
+topples
+toppling
+tops
+topsoil
+topspin
+topsyturvy
+torah
+torch
+torchbearer
+torchbearers
+torched
+torches
+torchlight
+torchlit
+tore
+tori
+tories
+torment
+tormented
+tormenting
+tormentor
+tormentors
+torments
+torn
+tornado
+toronto
+torpedo
+torpedoed
+torpid
+torpor
+torque
+torques
+torrent
+torrential
+torrents
+torrid
+torsion
+torsional
+torsions
+torso
+tortoise
+tortoises
+tortoiseshell
+torts
+tortuous
+tortuously
+torture
+tortured
+torturer
+torturers
+tortures
+torturing
+torturous
+torus
+tory
+toss
+tossed
+tossers
+tosses
+tossing
+tossup
+tossups
+tot
+total
+totalising
+totalitarian
+totalitarianism
+totality
+totalled
+totalling
+totally
+totals
+totem
+totemic
+totems
+tots
+totted
+totter
+tottered
+tottering
+totters
+totting
+toucans
+touch
+touchandgo
+touchdown
+touchdowns
+touche
+touched
+toucher
+touches
+touchier
+touchiest
+touchiness
+touching
+touchingly
+touchy
+tough
+toughen
+toughened
+toughens
+tougher
+toughest
+toughie
+toughies
+toughly
+toughness
+toughs
+toupee
+tour
+toured
+tourer
+tourers
+touring
+tourism
+tourist
+touristic
+tourists
+touristy
+tournament
+tournaments
+tourney
+tourniquet
+tours
+tousled
+tousles
+tout
+touted
+touting
+touts
+tow
+toward
+towards
+towed
+towel
+towelled
+towelling
+towels
+tower
+towered
+towering
+towers
+towing
+town
+towns
+townscape
+townscapes
+townsfolk
+township
+townships
+townsman
+townsmen
+townspeople
+towpath
+towpaths
+tows
+toxaemia
+toxic
+toxicity
+toxicological
+toxicology
+toxin
+toxins
+toy
+toyed
+toying
+toymaker
+toys
+toyshop
+trace
+traceability
+traceable
+traced
+traceless
+tracer
+tracers
+tracery
+traces
+trachea
+tracheal
+tracheostomy
+tracheotomy
+tracing
+tracings
+track
+trackbed
+tracked
+tracker
+trackers
+tracking
+trackless
+tracks
+tracksuit
+tracksuits
+trackway
+trackways
+tract
+tractability
+tractable
+traction
+tractor
+tractors
+tracts
+trad
+trade
+tradeable
+traded
+tradein
+tradeins
+trademark
+trademarked
+trademarks
+trader
+traders
+trades
+tradesman
+tradesmen
+tradespeople
+trading
+tradings
+tradition
+traditional
+traditionalism
+traditionalist
+traditionalists
+traditionally
+traditions
+traduced
+traducer
+traffic
+trafficked
+trafficker
+traffickers
+trafficking
+tragedian
+tragedians
+tragedies
+tragedy
+tragic
+tragical
+tragically
+trail
+trailed
+trailer
+trailers
+trailing
+trails
+train
+trained
+trainee
+trainees
+trainer
+trainers
+training
+trainings
+trainload
+trains
+trait
+traitor
+traitorous
+traitorously
+traitors
+traits
+trajectories
+trajectory
+tram
+tramcar
+tramcars
+tramlines
+trammel
+tramp
+tramped
+tramping
+trample
+trampled
+tramples
+trampling
+trampoline
+trampolines
+trampolining
+trampolinist
+tramps
+trams
+tramway
+tramways
+trance
+trances
+tranche
+tranches
+tranny
+tranquil
+tranquillise
+tranquillised
+tranquilliser
+tranquillisers
+tranquillity
+tranquilly
+transact
+transacted
+transacting
+transaction
+transactional
+transactions
+transactor
+transatlantic
+transceiver
+transceivers
+transcend
+transcended
+transcendence
+transcendent
+transcendental
+transcendentally
+transcendentals
+transcending
+transcends
+transcontinental
+transcribe
+transcribed
+transcriber
+transcribers
+transcribes
+transcribing
+transcript
+transcription
+transcriptional
+transcriptions
+transcripts
+transducer
+transducers
+transduction
+transection
+transept
+transepts
+transfer
+transferability
+transferable
+transferee
+transferees
+transference
+transferral
+transferred
+transferring
+transfers
+transfiguration
+transfigured
+transfinite
+transfinitely
+transfixed
+transform
+transformation
+transformational
+transformations
+transformative
+transformed
+transformer
+transformers
+transforming
+transforms
+transfused
+transfusing
+transfusion
+transfusions
+transgress
+transgressed
+transgresses
+transgressing
+transgression
+transgressions
+transgressive
+transgressor
+transgressors
+transhipment
+transience
+transient
+transiently
+transients
+transistor
+transistorised
+transistors
+transit
+transition
+transitional
+transitions
+transitive
+transitively
+transitivity
+transitoriness
+transitory
+transits
+translatable
+translate
+translated
+translates
+translating
+translation
+translational
+translations
+translator
+translators
+transliterate
+transliterated
+transliterates
+transliterating
+transliteration
+transliterations
+translucence
+translucency
+translucent
+transmigration
+transmissible
+transmission
+transmissions
+transmissive
+transmit
+transmits
+transmittable
+transmittance
+transmitted
+transmitter
+transmitters
+transmitting
+transmogrification
+transmogrifies
+transmogrify
+transmutation
+transmute
+transmuted
+transmuting
+transnational
+transom
+transonic
+transparencies
+transparency
+transparent
+transparently
+transpiration
+transpire
+transpired
+transpires
+transplant
+transplantation
+transplanted
+transplanting
+transplants
+transponder
+transponders
+transport
+transportability
+transportable
+transportation
+transported
+transporter
+transporters
+transporting
+transports
+transpose
+transposed
+transposes
+transposing
+transposition
+transpositions
+transverse
+transversely
+transvestism
+transvestite
+transvestites
+trap
+trapdoor
+trapdoors
+trapeze
+trappable
+trapped
+trapper
+trappers
+trapping
+trappings
+traps
+trash
+trashed
+trashy
+trauma
+traumas
+traumata
+traumatic
+traumatise
+traumatised
+travail
+travails
+travel
+travelled
+traveller
+travellers
+travelling
+travelogue
+travelogues
+travels
+traversal
+traversals
+traverse
+traversed
+traverses
+traversing
+travesties
+travesty
+trawl
+trawled
+trawler
+trawlers
+trawling
+trawlnet
+trawls
+tray
+trays
+treacherous
+treacherously
+treachery
+treacle
+tread
+treader
+treading
+treadle
+treadmill
+treadmills
+treads
+treason
+treasonable
+treasonous
+treasons
+treasure
+treasured
+treasurer
+treasurers
+treasurership
+treasures
+treasuries
+treasuring
+treasury
+treat
+treatable
+treated
+treaties
+treating
+treatise
+treatises
+treatment
+treatments
+treats
+treaty
+treble
+trebled
+trebles
+trebling
+tree
+treeless
+trees
+treetop
+treetops
+trefoil
+trefoils
+trek
+trekked
+trekker
+trekkers
+trekking
+treks
+trellis
+trellised
+trellises
+tremble
+trembled
+trembler
+trembles
+trembling
+tremblingly
+tremblings
+tremendous
+tremendously
+tremolo
+tremor
+tremors
+tremulous
+tremulously
+tremulousness
+trench
+trenchant
+trenchantly
+trenched
+trencher
+trenches
+trenching
+trend
+trendier
+trendiest
+trendiness
+trends
+trendy
+trepanned
+trepidation
+trepidations
+trespass
+trespassed
+trespasser
+trespassers
+trespasses
+trespassing
+tress
+tresses
+trestle
+trestles
+trews
+triad
+triadic
+triads
+triage
+trial
+trials
+triangle
+triangles
+triangular
+triangulate
+triangulated
+triangulating
+triangulation
+triangulations
+triathlon
+triatomic
+tribal
+tribalism
+tribally
+tribe
+tribes
+tribesman
+tribesmen
+tribespeople
+tribulation
+tribulations
+tribunal
+tribunals
+tribune
+tribunes
+tributaries
+tributary
+tribute
+tributes
+trice
+trick
+tricked
+trickery
+trickier
+trickiest
+trickily
+tricking
+trickle
+trickled
+trickles
+trickling
+tricks
+trickster
+tricksters
+tricky
+tricolour
+tricolours
+tricycle
+tricycles
+trident
+tridents
+tried
+triennial
+trier
+tries
+triffid
+triffids
+trifle
+trifled
+trifler
+trifles
+trifling
+trigger
+triggered
+triggerhappy
+triggering
+triggers
+triglyceride
+trigonometric
+trigonometrical
+trigonometry
+trigram
+trigrams
+trigs
+trikes
+trilateral
+trilby
+trilingual
+trill
+trilled
+trilling
+trillion
+trillions
+trills
+trilobite
+trilobites
+trilogies
+trilogy
+trim
+trimaran
+trimmed
+trimmer
+trimmers
+trimming
+trimmings
+trimodal
+trims
+trinidad
+trinity
+trinket
+trinkets
+trio
+trip
+tripartite
+tripe
+triplane
+triple
+tripled
+triples
+triplet
+triplets
+triplex
+triplicate
+triplication
+tripling
+triply
+tripod
+tripods
+tripoli
+tripped
+trippers
+tripping
+trips
+triptych
+tripwire
+tripwires
+trireme
+trisecting
+trisection
+trisector
+tristan
+trite
+triteness
+tritium
+triumph
+triumphal
+triumphalism
+triumphalist
+triumphant
+triumphantly
+triumphed
+triumphing
+triumphs
+triumvirate
+trivia
+trivial
+trivialisation
+trivialisations
+trivialise
+trivialised
+trivialises
+trivialising
+trivialities
+triviality
+trivially
+trod
+trodden
+troglodyte
+troglodytes
+troika
+troikas
+troll
+trolley
+trolleys
+trolling
+trollish
+trolls
+trombone
+trombones
+trombonist
+trombonists
+troop
+trooped
+trooper
+troopers
+trooping
+troops
+troopship
+trope
+tropes
+trophies
+trophy
+tropic
+tropical
+tropically
+tropics
+tropopause
+troposphere
+tropospheric
+trot
+trots
+trotted
+trotter
+trotters
+trotting
+troubadour
+troubadours
+trouble
+troubled
+troublemaker
+troublemakers
+troubles
+troubleshooter
+troubleshooters
+troubleshooting
+troublesome
+troublesomeness
+troubling
+trough
+troughs
+trounce
+trounced
+trounces
+trouncing
+troupe
+trouper
+troupers
+troupes
+trouser
+trousers
+trout
+trouts
+trove
+trowel
+trowels
+troy
+truancy
+truant
+truanting
+truants
+truce
+truces
+truck
+trucks
+truculence
+truculent
+truculently
+trudge
+trudged
+trudges
+trudging
+true
+trueblue
+truer
+truest
+truffle
+truffles
+truism
+truisms
+truly
+trump
+trumped
+trumpery
+trumpet
+trumpeted
+trumpeter
+trumpeters
+trumpeting
+trumpets
+trumps
+truncate
+truncated
+truncates
+truncating
+truncation
+truncations
+truncheon
+truncheons
+trundle
+trundled
+trundles
+trundling
+trunk
+trunking
+trunks
+trunnion
+trunnions
+truss
+trussed
+trusses
+trussing
+trust
+trusted
+trustee
+trustees
+trusteeship
+trustful
+trustfully
+trustfulness
+trusties
+trusting
+trustingly
+trusts
+trustworthiness
+trustworthy
+trusty
+truth
+truthful
+truthfully
+truthfulness
+truths
+try
+trying
+tsetse
+tshirt
+tsunami
+tswana
+tswanas
+tuareg
+tuaregs
+tuatara
+tub
+tuba
+tubas
+tubby
+tube
+tubed
+tubeless
+tuber
+tubercular
+tuberculosis
+tubers
+tubes
+tubing
+tubs
+tubular
+tubules
+tuck
+tucked
+tucker
+tuckers
+tucking
+tucks
+tues
+tuesday
+tuesdays
+tuft
+tufted
+tufting
+tufts
+tug
+tugela
+tugged
+tugging
+tugs
+tuition
+tulip
+tulips
+tumble
+tumbled
+tumbledown
+tumbler
+tumblers
+tumbles
+tumbling
+tumbrils
+tumescent
+tummies
+tummy
+tumour
+tumours
+tumult
+tumults
+tumultuous
+tumultuously
+tumulus
+tun
+tuna
+tunable
+tunas
+tundra
+tundras
+tune
+tuned
+tuneful
+tunefully
+tuneless
+tunelessly
+tuner
+tuners
+tunes
+tungsten
+tunic
+tunics
+tuning
+tunings
+tunisia
+tunisian
+tunnel
+tunnelled
+tunnellers
+tunnelling
+tunnels
+tunny
+tuns
+tuppence
+tuppences
+turban
+turbans
+turbid
+turbidity
+turbine
+turbines
+turbo
+turbocharged
+turbocharger
+turboprop
+turbot
+turbulence
+turbulent
+tureen
+tureens
+turf
+turfed
+turfs
+turfy
+turgid
+turgidity
+turgidly
+turin
+turk
+turkey
+turkeys
+turkish
+turks
+turmeric
+turmoil
+turmoils
+turn
+turnabout
+turnaround
+turncoat
+turncoats
+turned
+turner
+turners
+turning
+turnings
+turnip
+turnips
+turnkey
+turnout
+turnouts
+turnover
+turnovers
+turnpike
+turnround
+turns
+turnstile
+turnstiles
+turntable
+turntables
+turpentine
+turpitude
+turquoise
+turret
+turreted
+turrets
+turtle
+turtleneck
+turtles
+tuscany
+tusk
+tusked
+tusker
+tusks
+tussle
+tussles
+tussling
+tussock
+tussocks
+tussocky
+tutelage
+tutelary
+tutor
+tutored
+tutorial
+tutorials
+tutoring
+tutors
+tutu
+tuxedo
+twain
+twang
+twanged
+twanging
+twangs
+tweak
+tweaked
+tweaking
+tweaks
+twee
+tweed
+tweeds
+tweedy
+tweeness
+tweet
+tweeter
+tweeters
+tweets
+tweezers
+twelfth
+twelfths
+twelve
+twelves
+twenties
+twentieth
+twenty
+twice
+twiddle
+twiddled
+twiddler
+twiddles
+twiddling
+twiddly
+twig
+twigged
+twiggy
+twigs
+twilight
+twilit
+twill
+twin
+twine
+twined
+twines
+twinge
+twinges
+twining
+twinkle
+twinkled
+twinkles
+twinkling
+twinned
+twinning
+twins
+twirl
+twirled
+twirling
+twirls
+twist
+twisted
+twister
+twisters
+twisting
+twists
+twisty
+twit
+twitch
+twitched
+twitches
+twitching
+twitchy
+twitter
+twittered
+twittering
+two
+twodimensional
+twofaced
+twofold
+twosome
+tycoon
+tycoons
+tying
+tyke
+tykes
+type
+typecast
+typecasting
+typed
+typeface
+typefaces
+typeless
+types
+typescript
+typescripts
+typeset
+typesets
+typesetter
+typesetters
+typesetting
+typewriter
+typewriters
+typewriting
+typewritten
+typhoid
+typhoon
+typhoons
+typhus
+typical
+typicality
+typically
+typified
+typifies
+typify
+typifying
+typing
+typings
+typist
+typists
+typographer
+typographers
+typographic
+typographical
+typographically
+typography
+typological
+typologically
+typologies
+typology
+tyrannic
+tyrannical
+tyrannically
+tyrannicide
+tyrannies
+tyrannise
+tyrannised
+tyrannous
+tyranny
+tyrant
+tyrants
+tyre
+tyres
+uboats
+udder
+udders
+ufo
+uganda
+ugandan
+uglier
+ugliest
+uglification
+ugliness
+ugly
+uhuh
+uke
+ukraine
+ukulele
+ukuleles
+ulcer
+ulcerate
+ulcerated
+ulceration
+ulcerations
+ulcerous
+ulcers
+ulster
+ulsters
+ulterior
+ultimacy
+ultimate
+ultimately
+ultimatum
+ultimatums
+ultimo
+ultra
+ultramarine
+ultramontane
+ultrasonic
+ultrasonics
+ultrasound
+ultraviolet
+umbilical
+umbilicus
+umbra
+umbrae
+umbrage
+umbrageous
+umbras
+umbrella
+umbrellas
+umlaut
+umlauts
+umpire
+umpired
+umpires
+umpiring
+umpteen
+umpteenth
+unabashed
+unabashedly
+unabated
+unable
+unabridged
+unabsorbed
+unacceptability
+unacceptable
+unacceptably
+unaccepted
+unaccommodating
+unaccompanied
+unaccountability
+unaccountable
+unaccountably
+unaccounted
+unaccustomed
+unachievable
+unacknowledged
+unacquainted
+unactivated
+unadapted
+unadaptive
+unaddressable
+unaddressed
+unadjusted
+unadorned
+unadulterated
+unadventurous
+unadvertised
+unaesthetic
+unaffected
+unaffectedly
+unaffiliated
+unaffordable
+unafraid
+unaided
+unaligned
+unalike
+unallocated
+unalloyed
+unalterable
+unalterably
+unaltered
+unambiguity
+unambiguous
+unambiguously
+unambitious
+unamended
+unamused
+unanimity
+unanimous
+unanimously
+unannotated
+unannounced
+unanswerable
+unanswered
+unanticipated
+unapologetic
+unappealing
+unappeased
+unappetising
+unappreciated
+unappreciative
+unapproachable
+unapproved
+unapt
+unarchived
+unarguable
+unarguably
+unarm
+unarmed
+unarms
+unaroused
+unarticulated
+unary
+unashamed
+unashamedly
+unasked
+unassailable
+unassailed
+unassertive
+unassigned
+unassisted
+unassociated
+unassuaged
+unassuming
+unattached
+unattainable
+unattainably
+unattained
+unattended
+unattenuated
+unattractive
+unattractiveness
+unattributable
+unattributed
+unaudited
+unauthenticated
+unauthorised
+unavailability
+unavailable
+unavailing
+unavailingly
+unavenged
+unavoidable
+unavoidably
+unawakened
+unaware
+unawareness
+unawares
+unawed
+unbalance
+unbalanced
+unbalances
+unbalancing
+unbanned
+unbanning
+unbaptised
+unbar
+unbarred
+unbars
+unbearable
+unbearably
+unbeatable
+unbeaten
+unbecoming
+unbeknown
+unbeknownst
+unbelievability
+unbelievable
+unbelievably
+unbelieved
+unbeliever
+unbelievers
+unbelieving
+unbend
+unbending
+unbent
+unbiased
+unbiasedly
+unbiassed
+unbiassedly
+unbidden
+unbind
+unbleached
+unblemished
+unblinking
+unblinkingly
+unblock
+unblocked
+unblocking
+unbloodied
+unboiled
+unbolt
+unbolted
+unbooked
+unborn
+unbosom
+unbothered
+unbound
+unbounded
+unbowed
+unbraced
+unbracketed
+unbranded
+unbreakability
+unbreakable
+unbridgeable
+unbridged
+unbridled
+unbroken
+unbruised
+unbuckle
+unbuckled
+unbuckling
+unbundled
+unburden
+unburdened
+unburdening
+unburied
+unburned
+unburnt
+unbutton
+unbuttoned
+unbuttoning
+uncalibrated
+uncalled
+uncancelled
+uncannily
+uncanny
+uncapped
+uncared
+uncaring
+uncased
+uncatalogued
+uncaught
+unceasing
+unceasingly
+uncelebrated
+uncensored
+unceremoniously
+uncertain
+uncertainly
+uncertainties
+uncertainty
+unchain
+unchained
+unchaining
+unchallengeable
+unchallenged
+unchangeable
+unchanged
+unchanging
+unchaperoned
+uncharacteristic
+uncharacteristically
+uncharged
+uncharismatic
+uncharitable
+uncharitably
+uncharted
+unchartered
+uncheckable
+unchecked
+unchristened
+unchristian
+unchronicled
+uncircumcised
+uncivil
+uncivilised
+unclad
+unclaimed
+unclasped
+unclasping
+unclassifiable
+unclassified
+uncle
+unclean
+uncleanliness
+uncleanly
+unclear
+uncleared
+unclench
+unclenched
+unclenching
+uncles
+unclesam
+unclimbable
+unclimbed
+unclog
+unclosed
+unclothed
+unclouded
+uncluttered
+uncoil
+uncoiled
+uncoiling
+uncoils
+uncollated
+uncollected
+uncollimated
+uncombed
+uncomely
+uncomfortable
+uncomfortableness
+uncomfortably
+uncommitted
+uncommon
+uncommonly
+uncommunicative
+uncompetitive
+uncompetitiveness
+uncompilable
+uncomplaining
+uncomplainingly
+uncompleted
+uncomplicated
+uncomplimentary
+uncomprehending
+uncomprehendingly
+uncompressed
+uncompromisable
+uncompromising
+uncompromisingly
+unconcern
+unconcerned
+unconcernedly
+unconditional
+unconditionally
+unconditioned
+unconfined
+unconfirmed
+unconfused
+uncongenial
+unconnected
+unconquerable
+unconquered
+unconscionable
+unconscionably
+unconscious
+unconsciously
+unconsciousness
+unconsecrated
+unconsidered
+unconsoled
+unconstitutional
+unconstitutionally
+unconstrained
+unconsumed
+uncontainable
+uncontaminated
+uncontentious
+uncontested
+uncontrollable
+uncontrollably
+uncontrolled
+uncontroversial
+uncontroversially
+unconventional
+unconventionally
+unconverted
+unconvinced
+unconvincing
+unconvincingly
+uncooked
+uncooperative
+uncoordinated
+uncorked
+uncorrectable
+uncorrected
+uncorrelated
+uncorroborated
+uncorrupted
+uncountable
+uncountably
+uncounted
+uncouple
+uncoupled
+uncouth
+uncouthness
+uncover
+uncovered
+uncovering
+uncovers
+uncrackable
+uncreased
+uncreated
+uncreative
+uncredited
+uncritical
+uncritically
+uncross
+uncrossable
+uncrossed
+uncrowded
+uncrowned
+uncrushable
+unction
+unctuous
+unctuously
+uncultivated
+uncultured
+uncured
+uncurled
+uncut
+undamaged
+undated
+undaunted
+undead
+undeceived
+undecidability
+undecidable
+undecided
+undeclared
+undecorated
+undefeated
+undefended
+undefiled
+undefinable
+undefined
+undeliverable
+undelivered
+undemanding
+undemocratic
+undemocratically
+undemonstrative
+undeniable
+undeniably
+under
+underachievement
+underachieving
+underarm
+underbelly
+underbody
+undercarriage
+underclass
+underclothes
+underclothing
+undercoat
+undercoating
+undercooked
+undercover
+undercroft
+undercurrent
+undercurrents
+undercut
+undercuts
+undercutting
+underdeveloped
+underdevelopment
+underdog
+underdogs
+underdone
+undereducated
+underemphasis
+underemployment
+underestimate
+underestimated
+underestimates
+underestimating
+underestimation
+underexploited
+underfed
+underfloor
+underflow
+underfoot
+underframe
+underfund
+underfunded
+underfunding
+undergarment
+undergarments
+undergo
+undergoes
+undergoing
+undergone
+undergraduate
+undergraduates
+underground
+undergrounds
+undergrowth
+underhand
+underinvestment
+underlain
+underlay
+underlie
+underlies
+underline
+underlined
+underlines
+underling
+underlings
+underlining
+underlinings
+underloaded
+underlying
+undermanned
+undermine
+undermined
+undermines
+undermining
+underneath
+undernourished
+undernourishment
+underpaid
+underpants
+underparts
+underpass
+underpay
+underpaying
+underperformance
+underperformed
+underpin
+underpinned
+underpinning
+underpinnings
+underpins
+underplay
+underplayed
+underplays
+underpopulated
+underpopulation
+underpowered
+underpriced
+underpricing
+underprivileged
+underrate
+underrated
+underscored
+undersea
+underside
+undersides
+undersigned
+undersized
+underskirt
+understaffed
+understand
+understandability
+understandable
+understandably
+understander
+understanding
+understandingly
+understandings
+understands
+understate
+understated
+understatement
+understates
+understating
+understocked
+understood
+understorey
+understudy
+undertake
+undertaken
+undertaker
+undertakers
+undertakes
+undertaking
+undertakings
+undertone
+undertones
+undertook
+underutilised
+undervalued
+undervalues
+undervaluing
+underwater
+underwear
+underweight
+underwent
+underwood
+underworld
+underwrite
+underwriter
+underwriters
+underwrites
+underwriting
+underwritten
+underwrote
+undeserved
+undeservedly
+undeserving
+undesirability
+undesirable
+undesirables
+undesirably
+undesired
+undetectability
+undetectable
+undetectably
+undetected
+undetermined
+undeterred
+undetonated
+undeveloped
+undiagnosable
+undiagnosed
+undid
+undifferentiated
+undigested
+undignified
+undiluted
+undiminished
+undiplomatic
+undirected
+undiscerning
+undisciplined
+undisclosed
+undiscovered
+undiscriminated
+undiscriminating
+undisguised
+undisguisedly
+undismayed
+undisplayed
+undisputed
+undissipated
+undistinguished
+undistorted
+undistributed
+undisturbed
+undivided
+undo
+undocumented
+undoing
+undoings
+undomesticated
+undone
+undoubted
+undoubtedly
+undress
+undressed
+undressing
+undrinkability
+undrinkable
+undroppable
+undue
+undulate
+undulated
+undulates
+undulating
+undulation
+undulations
+unduly
+undying
+unearned
+unearth
+unearthed
+unearthing
+unearthly
+unearths
+unease
+uneasier
+uneasiest
+uneasily
+uneasiness
+uneasy
+uneatable
+uneaten
+uneconomic
+uneconomical
+unedifying
+unedited
+uneducated
+unelectable
+unelected
+unemotional
+unemotionally
+unemployable
+unemployed
+unemployment
+unencrypted
+unencumbered
+unending
+unendingly
+unendurable
+unenforceable
+unengaged
+unenlightened
+unenlightening
+unentered
+unenthusiastic
+unenthusiastically
+unenviable
+unequal
+unequalled
+unequally
+unequivocal
+unequivocally
+unergonomic
+unerring
+unerringly
+unescorted
+unestablished
+unethical
+unethically
+unevaluated
+uneven
+unevenly
+unevenness
+uneventful
+uneventfully
+unexacting
+unexamined
+unexceptionable
+unexceptional
+unexcited
+unexciting
+unexpanded
+unexpected
+unexpectedly
+unexpectedness
+unexpired
+unexplainable
+unexplained
+unexploded
+unexploited
+unexplored
+unexpressed
+unexpurgated
+unfailing
+unfailingly
+unfair
+unfairly
+unfairness
+unfaithful
+unfaithfulness
+unfalsifiable
+unfamiliar
+unfamiliarity
+unfancied
+unfashionable
+unfashionably
+unfasten
+unfastened
+unfastening
+unfathomable
+unfathomed
+unfatigued
+unfavourable
+unfavourably
+unfavoured
+unfeasible
+unfeasibly
+unfed
+unfeeling
+unfeelingly
+unfeigned
+unfelt
+unfeminine
+unfenced
+unfertilised
+unfetchable
+unfettered
+unfilled
+unfinished
+unfired
+unfirm
+unfit
+unfitness
+unfits
+unfitting
+unfix
+unfixed
+unflagging
+unflattering
+unflawed
+unfledged
+unflinching
+unflinchingly
+unfocused
+unfocussed
+unfold
+unfolded
+unfolding
+unfolds
+unforced
+unfordable
+unforeseeable
+unforeseen
+unforgettable
+unforgivable
+unforgivably
+unforgiven
+unforgiving
+unformed
+unforthcoming
+unfortunate
+unfortunately
+unfortunates
+unfounded
+unfreeze
+unfreezing
+unfrequented
+unfriendlier
+unfriendliest
+unfriendliness
+unfriendly
+unfrozen
+unfruitful
+unfulfillable
+unfulfilled
+unfunded
+unfunny
+unfurl
+unfurled
+unfurling
+unfurls
+unfurnished
+unfussy
+ungainly
+ungenerous
+ungenerously
+ungentlemanly
+ungerminated
+unglamorous
+unglazed
+ungodly
+ungovernable
+ungoverned
+ungraceful
+ungracious
+ungraciously
+ungrammatical
+ungrateful
+ungratefully
+ungrounded
+unguarded
+unguessable
+unguided
+ungulates
+unhampered
+unhand
+unhandy
+unhappier
+unhappiest
+unhappily
+unhappiness
+unhappy
+unharmed
+unhealthier
+unhealthiest
+unhealthily
+unhealthy
+unheard
+unheated
+unheeded
+unhelpful
+unhelpfully
+unheralded
+unheroic
+unhesitating
+unhesitatingly
+unhidden
+unhindered
+unhinge
+unhinged
+unholy
+unhonoured
+unhook
+unhooked
+unhooks
+unhoped
+unhuman
+unhurried
+unhurriedly
+unhurt
+unhygienic
+unhyphenated
+unicameral
+unicellular
+unicorn
+unicorns
+unicycle
+unicycles
+unicyclist
+unicyclists
+unideal
+unidentifiable
+unidentified
+unidirectional
+unifiable
+unification
+unified
+unifier
+unifies
+uniform
+uniformed
+uniformity
+uniformly
+uniforms
+unify
+unifying
+unilateral
+unilateralism
+unilateralist
+unilaterally
+unillustrated
+unimaginable
+unimaginably
+unimaginative
+unimaginatively
+unimagined
+unimpaired
+unimpeachable
+unimpeded
+unimplementable
+unimplemented
+unimportance
+unimportant
+unimpressed
+unimpressive
+unimproved
+unincorporated
+uninfected
+uninfluenced
+uninformative
+uninformatively
+uninformed
+uninhabitable
+uninhabited
+uninhibited
+uninhibitedly
+uninitialised
+uninitiated
+uninjured
+uninspired
+uninspiring
+uninsulated
+uninsurable
+uninsured
+unintellectual
+unintelligent
+unintelligible
+unintended
+unintentional
+unintentionally
+uninterested
+uninterestedly
+uninteresting
+uninterpretable
+uninterpreted
+uninterrupted
+uninterruptedly
+unintuitive
+uninvented
+uninvited
+uninviting
+uninvolved
+union
+unionisation
+unionised
+unionism
+unionist
+unionists
+unions
+unipolar
+unique
+uniquely
+uniqueness
+unisex
+unison
+unisons
+unissued
+unit
+unitary
+unite
+united
+unites
+unities
+uniting
+units
+unity
+universal
+universalism
+universalist
+universality
+universally
+universals
+universe
+universes
+universities
+university
+unjam
+unjammed
+unjamming
+unjaundiced
+unjust
+unjustifiable
+unjustifiably
+unjustified
+unjustly
+unjustness
+unkempt
+unkept
+unkind
+unkindest
+unkindly
+unkindness
+unknightly
+unknowable
+unknowing
+unknowingly
+unknown
+unknowns
+unlabelled
+unlace
+unlaced
+unlacing
+unladen
+unladylike
+unlamented
+unlatching
+unlawful
+unlawfully
+unlawfulness
+unleaded
+unlearn
+unlearned
+unleash
+unleashed
+unleashes
+unleashing
+unleavened
+unless
+unlicensed
+unlike
+unlikeable
+unlikeliest
+unlikelihood
+unlikeliness
+unlikely
+unlimited
+unlined
+unlink
+unlinked
+unlisted
+unlit
+unload
+unloaded
+unloading
+unloads
+unlock
+unlocked
+unlocking
+unlocks
+unloose
+unlovable
+unloved
+unlovely
+unloving
+unluckier
+unluckiest
+unluckily
+unlucky
+unmade
+unmagnified
+unmaintainable
+unmaintained
+unmaking
+unmanageable
+unmanageably
+unmanly
+unmanned
+unmannerly
+unmapped
+unmarked
+unmarried
+unmask
+unmasked
+unmasks
+unmatchable
+unmatched
+unmeasurable
+unmechanised
+unmeetable
+unmelodious
+unmemorable
+unmemorised
+unmentionable
+unmentionables
+unmentioned
+unmercifully
+unmerited
+unmet
+unmissable
+unmistakable
+unmistakably
+unmistakeable
+unmistakeably
+unmitigated
+unmixed
+unmnemonic
+unmodifiable
+unmodified
+unmolested
+unmonitored
+unmotivated
+unmounted
+unmoved
+unmoving
+unmusical
+unmusically
+unmutilated
+unmuzzled
+unnamed
+unnatural
+unnaturally
+unnavigable
+unnecessarily
+unnecessary
+unneeded
+unnerve
+unnerved
+unnerving
+unnervingly
+unnoted
+unnoticeable
+unnoticed
+unnumbered
+unobjectionable
+unobliging
+unobservable
+unobservant
+unobserved
+unobstructed
+unobtainable
+unobtrusive
+unobtrusively
+unoccupied
+unofficial
+unofficially
+unopened
+unopposed
+unoptimised
+unordered
+unorganised
+unoriginal
+unoriginality
+unorthodox
+unorthodoxy
+unowned
+unpack
+unpacked
+unpackers
+unpacking
+unpacks
+unpaid
+unpainted
+unpaired
+unpalatable
+unparalleled
+unpardonable
+unparodied
+unpasted
+unpasteurised
+unpatriotic
+unpaved
+unpeeled
+unperceived
+unpersonalised
+unpersuaded
+unpersuasive
+unperturbed
+unphysical
+unpick
+unpicked
+unpicking
+unplaced
+unplanned
+unplayability
+unplayable
+unpleasant
+unpleasantly
+unpleasantness
+unpleasing
+unploughed
+unplug
+unplugged
+unplugging
+unpoetical
+unpolished
+unpolluted
+unpopular
+unpopularity
+unpopulated
+unportable
+unpractical
+unpractised
+unprecedented
+unprecedentedly
+unpredictability
+unpredictable
+unpredictably
+unpredicted
+unprejudiced
+unpremeditated
+unprepared
+unpreparedness
+unprepossessing
+unpressurised
+unpretending
+unpretentious
+unprincipled
+unprintable
+unprinted
+unprivileged
+unproblematic
+unprocessed
+unproductive
+unprofessional
+unprofitable
+unprofitably
+unpromising
+unprompted
+unpronounceable
+unpronounced
+unprotected
+unprovable
+unproved
+unproven
+unprovoked
+unpublicised
+unpublishable
+unpublished
+unpunctual
+unpunctuality
+unpunished
+unqualified
+unquantifiable
+unquantified
+unquenchable
+unquestionable
+unquestionably
+unquestioned
+unquestioning
+unquestioningly
+unquiet
+unquote
+unquoted
+unraisable
+unravel
+unravelled
+unravelling
+unravels
+unreachable
+unreached
+unread
+unreadability
+unreadable
+unready
+unreal
+unrealisable
+unrealised
+unrealistic
+unrealistically
+unreality
+unreasonable
+unreasonableness
+unreasonably
+unreasoned
+unreasoning
+unreceived
+unreceptive
+unrecognisable
+unrecognisably
+unrecognised
+unrecommended
+unreconciled
+unreconstructed
+unrecorded
+unrecoverable
+unredeemed
+unreduced
+unrefereed
+unreferenced
+unreferencing
+unrefined
+unreflected
+unreformed
+unrefreshed
+unrefrigerated
+unregarded
+unregenerate
+unregistered
+unregulated
+unrehearsed
+unrelated
+unreleasable
+unreleased
+unrelenting
+unrelentingly
+unreliability
+unreliable
+unreliably
+unrelieved
+unremarkable
+unremarked
+unremembered
+unremitting
+unremittingly
+unrepairable
+unrepeatability
+unrepeatable
+unrepeated
+unrepentant
+unrepentantly
+unreported
+unrepresentable
+unrepresentative
+unrepresented
+unreproducible
+unrequested
+unrequited
+unreserved
+unreservedly
+unresisting
+unresistingly
+unresolvable
+unresolved
+unresponsive
+unresponsiveness
+unrest
+unrestrained
+unrestricted
+unrests
+unrevealed
+unrevealing
+unrevised
+unrewarded
+unrewarding
+unriddle
+unripe
+unrivalled
+unroll
+unrolled
+unrolling
+unromantic
+unruffled
+unruliness
+unruly
+unsaddled
+unsafe
+unsafely
+unsafeness
+unsaid
+unsaleable
+unsalted
+unsanitary
+unsatisfactorily
+unsatisfactoriness
+unsatisfactory
+unsatisfiable
+unsatisfied
+unsatisfying
+unsaturated
+unsaved
+unsavory
+unsavoury
+unscaled
+unscathed
+unscheduled
+unscientific
+unscramble
+unscrambled
+unscrambles
+unscrambling
+unscratched
+unscrew
+unscrewed
+unscrewing
+unscripted
+unscrupulous
+unseal
+unsealable
+unsealed
+unsealing
+unseasonable
+unseasonably
+unseasonal
+unseat
+unseated
+unseaworthiness
+unsecured
+unseeded
+unseeing
+unseeingly
+unseemly
+unseen
+unselected
+unselfconscious
+unselfconsciously
+unselfish
+unselfishly
+unselfishness
+unsellable
+unsensational
+unsent
+unsentimental
+unserviceable
+unserviced
+unset
+unsettle
+unsettled
+unsettling
+unshackled
+unshaded
+unshakable
+unshakeable
+unshaken
+unshaped
+unshapen
+unsharable
+unshared
+unshaved
+unshaven
+unsheathed
+unshielded
+unshockable
+unshod
+unshorn
+unshrinking
+unsighted
+unsightly
+unsigned
+unsimplified
+unsinkable
+unskilful
+unskilled
+unsliced
+unsmiling
+unsmilingly
+unsmooth
+unsociable
+unsocial
+unsoiled
+unsold
+unsolder
+unsolicited
+unsolvable
+unsolved
+unsophisticated
+unsophistication
+unsorted
+unsought
+unsound
+unsoundness
+unspanned
+unspeakable
+unspeakably
+unspecialised
+unspecific
+unspecified
+unspectacular
+unspent
+unspoiled
+unspoilt
+unspoken
+unsporting
+unstable
+unstack
+unstacked
+unstacking
+unstained
+unstamped
+unstated
+unsteadily
+unsteadiness
+unsteady
+unsterilised
+unsticking
+unstimulated
+unstinting
+unstintingly
+unstirred
+unstoppable
+unstoppably
+unstopped
+unstrapped
+unstressed
+unstretchable
+unstructured
+unstuck
+unsubdued
+unsubsidised
+unsubstantial
+unsubstantiated
+unsubstituted
+unsubtle
+unsubtly
+unsuccessful
+unsuccessfully
+unsuitability
+unsuitable
+unsuitableness
+unsuitably
+unsuited
+unsullied
+unsung
+unsupervised
+unsupportable
+unsupported
+unsuppressed
+unsure
+unsureness
+unsurfaced
+unsurpassable
+unsurpassed
+unsurprised
+unsurprising
+unsurprisingly
+unsurvivable
+unsuspected
+unsuspecting
+unsustainable
+unswappable
+unsweetened
+unswerving
+unswervingly
+unsympathetic
+unsympathetically
+unsystematic
+untactful
+untagged
+untainted
+untalented
+untamed
+untangle
+untangled
+untangling
+untapped
+untarnished
+untasted
+untaught
+untaxed
+untaxing
+untempered
+untenability
+untenable
+untended
+unterminated
+untestable
+untested
+untethered
+untextured
+unthinkable
+unthinkably
+unthinking
+unthinkingly
+unthoughtful
+untidier
+untidiest
+untidily
+untidiness
+untidy
+untie
+untied
+unties
+until
+untimely
+untiring
+untitled
+unto
+untold
+untouchable
+untouchables
+untouched
+untoward
+untraceable
+untraced
+untrained
+untrammelled
+untransformed
+untranslatable
+untranslated
+untransportable
+untrappable
+untreatable
+untreated
+untried
+untrodden
+untroubled
+untrue
+untrusted
+untrustworthy
+untrusty
+untruth
+untruthful
+untruthfully
+untruths
+unturned
+untutored
+untwist
+untwisted
+untying
+untyped
+untypical
+untypically
+unusable
+unusably
+unused
+unusual
+unusually
+unutterable
+unutterably
+unvalidated
+unvalued
+unvanquished
+unvarnished
+unvarying
+unvaryingly
+unveil
+unveiled
+unveiling
+unveils
+unventilated
+unverifiable
+unverified
+unversed
+unvisitable
+unvisited
+unvoiced
+unwanted
+unwarily
+unwarmed
+unwarned
+unwarrantable
+unwarrantably
+unwarranted
+unwary
+unwashed
+unwatchable
+unwatched
+unwavering
+unwaveringly
+unweaned
+unwearied
+unweary
+unwed
+unwedded
+unwedge
+unweighted
+unwelcome
+unwelcoming
+unwell
+unwholesome
+unwieldy
+unwilling
+unwillingly
+unwillingness
+unwind
+unwindable
+unwinding
+unwinds
+unwisdom
+unwise
+unwisely
+unwisest
+unwitting
+unwittingly
+unwontedly
+unworkability
+unworkable
+unworldly
+unworn
+unworried
+unworthily
+unworthiness
+unworthy
+unwound
+unwounded
+unwrap
+unwrapped
+unwrapping
+unwraps
+unwritten
+unyielding
+unzip
+unzipped
+unzipping
+unzips
+up
+upbeat
+upbraid
+upbraided
+upbraiding
+upbraids
+upbringing
+upbringings
+upcast
+upcoming
+updatability
+update
+updated
+updater
+updates
+updating
+upended
+upfield
+upfront
+upgradable
+upgrade
+upgradeable
+upgraded
+upgrades
+upgrading
+upgradings
+upheaval
+upheavals
+upheld
+uphill
+uphold
+upholder
+upholders
+upholding
+upholds
+upholster
+upholstered
+upholsterer
+upholsterers
+upholstery
+upkeep
+upland
+uplands
+uplift
+uplifted
+uplifting
+uplifts
+uplink
+uplinks
+upload
+uploaded
+uploads
+upmarket
+upmost
+upon
+upped
+upper
+uppercase
+upperclass
+uppercut
+uppermost
+uppers
+upraised
+uprate
+uprated
+uprating
+upright
+uprightly
+uprightness
+uprights
+uprise
+uprising
+uprisings
+upriver
+uproar
+uproarious
+uproariously
+uproars
+uproo
+uproot
+uprooted
+uprooting
+uproots
+ups
+upset
+upsets
+upsetting
+upshot
+upside
+upsidedown
+upsilon
+upstage
+upstaged
+upstages
+upstaging
+upstairs
+upstanding
+upstart
+upstarts
+upstream
+upsurge
+upsurges
+upswing
+uptake
+upthrust
+uptotheminute
+uptown
+upturn
+upturned
+upward
+upwardly
+upwards
+upwind
+uranium
+uranus
+urban
+urbane
+urbanely
+urbanisation
+urbanise
+urbanised
+urbanising
+urbanites
+urbanity
+urchin
+urchins
+urea
+ureter
+ureters
+urethane
+urethra
+urethrae
+urethral
+urethras
+urethritis
+urge
+urged
+urgency
+urgent
+urgently
+urges
+urging
+urgings
+urinary
+urine
+urn
+urns
+urologist
+ursine
+urticaria
+uruguay
+us
+usability
+usable
+usage
+usages
+usances
+use
+useable
+used
+useful
+usefully
+usefulness
+useless
+uselessly
+uselessness
+user
+userfriendliness
+userfriendly
+users
+uses
+usher
+ushered
+usherette
+ushering
+ushers
+using
+usual
+usually
+usurer
+usurers
+usurious
+usurp
+usurpation
+usurped
+usurper
+usurping
+usury
+utah
+utensil
+utensils
+uteri
+uterine
+uterus
+utilisation
+utilise
+utilised
+utilises
+utilising
+utilitarian
+utilitarianism
+utilitarians
+utilities
+utility
+utmost
+utopia
+utopian
+utopians
+utopias
+utter
+utterance
+utterances
+uttered
+utterer
+uttering
+utterly
+uttermost
+utters
+uturns
+uvula
+uvular
+vacancies
+vacancy
+vacant
+vacantly
+vacate
+vacated
+vacates
+vacating
+vacation
+vacations
+vaccinate
+vaccinated
+vaccinating
+vaccination
+vaccinations
+vaccine
+vaccines
+vacillate
+vacillating
+vacillation
+vacillations
+vacua
+vacuity
+vacuole
+vacuoles
+vacuous
+vacuously
+vacuum
+vacuums
+vaduz
+vagabond
+vagabonds
+vagrancy
+vagrant
+vagrants
+vague
+vaguely
+vagueness
+vaguer
+vaguest
+vain
+vainer
+vainest
+vainglorious
+vainglory
+vainly
+valance
+vale
+valediction
+valedictory
+valence
+valencies
+valency
+valentine
+vales
+valet
+valets
+valhalla
+valiant
+valiantly
+valid
+validate
+validated
+validates
+validating
+validation
+validity
+validly
+valise
+valley
+valleys
+valour
+valuable
+valuables
+valuation
+valuations
+value
+valueadded
+valued
+valueformoney
+valueless
+valuer
+valuers
+values
+valuing
+valuta
+valve
+valves
+vamp
+vamped
+vamper
+vamping
+vampire
+vampires
+vamps
+van
+vanadium
+vandal
+vandalise
+vandalised
+vandalising
+vandalism
+vandals
+vane
+vaned
+vanes
+vangogh
+vanguard
+vanilla
+vanish
+vanished
+vanishes
+vanishing
+vanishingly
+vanities
+vanity
+vanquish
+vanquished
+vanquishing
+vans
+vantage
+vapid
+vaporisation
+vaporise
+vaporised
+vaporising
+vaporous
+vapour
+vapours
+variability
+variable
+variables
+variably
+variance
+variances
+variant
+variants
+variate
+variates
+variation
+variational
+variations
+varicose
+varied
+variegated
+varies
+varietal
+varieties
+variety
+various
+variously
+varnish
+varnished
+varnishes
+varnishing
+varsity
+vary
+varying
+vascular
+vase
+vasectomies
+vasectomy
+vaseline
+vases
+vassal
+vassalage
+vassals
+vast
+vaster
+vastly
+vastness
+vat
+vatican
+vats
+vault
+vaulted
+vaulting
+vaults
+vaunted
+vaunting
+veal
+vector
+vectored
+vectoring
+vectorisation
+vectorised
+vectors
+veer
+veered
+veering
+veers
+veg
+vegan
+vegans
+vegetable
+vegetables
+vegetarian
+vegetarianism
+vegetarians
+vegetate
+vegetated
+vegetating
+vegetation
+vegetational
+vegetative
+vegetive
+veggies
+vehemence
+vehement
+vehemently
+vehicle
+vehicles
+vehicular
+veil
+veiled
+veiling
+veils
+vein
+veined
+veins
+velar
+veld
+veldt
+vellum
+velocipede
+velocities
+velocity
+velodrome
+velour
+velum
+velvet
+velveteen
+velveteens
+velvets
+velvety
+venal
+venality
+vend
+venders
+vendetta
+vendettas
+vending
+vendor
+vendors
+vends
+veneer
+veneered
+veneers
+venerable
+venerate
+venerated
+venerates
+venerating
+veneration
+venereal
+venetian
+vengeance
+vengeful
+vengefully
+venial
+venice
+venison
+venom
+venomous
+venomously
+venoms
+venose
+venous
+vent
+vented
+ventilate
+ventilated
+ventilating
+ventilation
+ventilator
+ventilators
+venting
+ventings
+ventral
+ventrally
+ventricle
+ventricles
+ventricular
+ventriloquism
+ventriloquist
+ventriloquists
+ventriloquy
+vents
+venture
+ventured
+venturer
+ventures
+venturesome
+venturing
+venue
+venues
+venus
+veracity
+veranda
+verandah
+verandahs
+verandas
+verb
+verbal
+verbalise
+verbally
+verbals
+verbatim
+verbiage
+verbose
+verbosely
+verboseness
+verbosity
+verbs
+verdant
+verdict
+verdicts
+verdigris
+verdure
+verge
+verged
+verger
+verges
+verging
+verifiability
+verifiable
+verification
+verifications
+verified
+verifier
+verifiers
+verifies
+verify
+verifying
+verily
+verisimilitude
+veritable
+veritably
+verities
+verity
+vermilion
+vermin
+verminous
+vernacular
+vernal
+vernier
+verona
+versatile
+versatility
+verse
+versed
+verses
+versicle
+versification
+versifier
+version
+versions
+versus
+vertebra
+vertebrae
+vertebral
+vertebrate
+vertebrates
+vertex
+vertical
+verticality
+vertically
+verticals
+vertices
+vertiginous
+vertigo
+verve
+very
+vesicle
+vesicles
+vesicular
+vespers
+vessel
+vessels
+vest
+vestal
+vested
+vestibular
+vestibule
+vestibules
+vestige
+vestiges
+vestigial
+vesting
+vestment
+vestments
+vestry
+vests
+vesuvius
+vet
+veteran
+veterans
+veterinary
+veto
+vetoed
+vetoing
+vets
+vetted
+vetting
+vex
+vexation
+vexations
+vexatious
+vexed
+vexes
+vexing
+via
+viability
+viable
+viably
+viaduct
+viaducts
+vial
+vials
+vibes
+vibrancy
+vibrant
+vibrantly
+vibrate
+vibrated
+vibrates
+vibrating
+vibration
+vibrational
+vibrationally
+vibrations
+vibrato
+vibrator
+vibrators
+vibratory
+vicar
+vicarage
+vicarages
+vicarious
+vicariously
+vicars
+vice
+vicechancellor
+vicechancellors
+vicepresidency
+vicepresident
+vicepresidential
+vicepresidents
+viceroy
+viceroys
+vices
+vicinities
+vicinity
+vicious
+viciously
+viciousness
+vicissitude
+vicissitudes
+victim
+victimisation
+victimise
+victimised
+victimises
+victimising
+victimless
+victims
+victor
+victoria
+victories
+victorious
+victoriously
+victors
+victory
+victualling
+victuals
+video
+videoconferencing
+videodisc
+videoed
+videoing
+videophone
+videos
+videotape
+videotaped
+videotapes
+videotaping
+vie
+vied
+vienna
+vier
+vies
+view
+viewable
+viewed
+viewer
+viewers
+viewfinder
+viewfinders
+viewing
+viewings
+viewpoint
+viewpoints
+views
+vigil
+vigilance
+vigilant
+vigilante
+vigilantes
+vigilantly
+vigils
+vignette
+vignettes
+vigorous
+vigorously
+vigour
+viking
+vikings
+vile
+vilely
+vileness
+viler
+vilest
+vilification
+vilified
+vilify
+vilifying
+villa
+village
+villager
+villagers
+villages
+villain
+villainous
+villains
+villainy
+villas
+vim
+vims
+vindicate
+vindicated
+vindicates
+vindicating
+vindication
+vindictive
+vindictively
+vindictiveness
+vine
+vinegar
+vinegars
+vines
+vineyard
+vineyards
+vino
+vintage
+vintages
+vintner
+vinyl
+vinyls
+viol
+viola
+violas
+violate
+violated
+violates
+violating
+violation
+violations
+violator
+violators
+violence
+violent
+violently
+violet
+violets
+violin
+violinist
+violinists
+violins
+violist
+viper
+vipers
+virago
+viral
+virgil
+virgin
+virginal
+virginia
+virginity
+virgins
+virile
+virility
+virology
+virtual
+virtually
+virtue
+virtues
+virtuosi
+virtuosic
+virtuosity
+virtuoso
+virtuous
+virtuously
+virulence
+virulent
+virulently
+virus
+viruses
+visa
+visage
+visas
+viscose
+viscosity
+viscount
+viscounts
+viscous
+vise
+visibilities
+visibility
+visible
+visibly
+vision
+visionaries
+visionary
+visions
+visit
+visitable
+visitant
+visitation
+visitations
+visited
+visiting
+visitor
+visitors
+visits
+visor
+visors
+vista
+vistas
+visual
+visualisation
+visualise
+visualised
+visualising
+visually
+visuals
+vital
+vitalise
+vitality
+vitally
+vitals
+vitamin
+vitamins
+vitiate
+vitiated
+vitiates
+vitiating
+vitreous
+vitrified
+vitriol
+vitriolic
+vituperate
+vituperation
+vituperative
+viva
+vivacious
+vivaciously
+vivacity
+vivid
+vividly
+vividness
+vivified
+vivisected
+vivisection
+vivisectionist
+vivisectionists
+vixen
+vixens
+vizier
+vocabularies
+vocabulary
+vocal
+vocalisation
+vocalisations
+vocalise
+vocalised
+vocalising
+vocalist
+vocalists
+vocally
+vocals
+vocation
+vocational
+vocationally
+vocations
+vocative
+vociferous
+vociferously
+vodka
+vogue
+voice
+voiced
+voiceless
+voices
+voicing
+voicings
+void
+voidable
+voided
+voiding
+voids
+voile
+volatile
+volatiles
+volatility
+volcanic
+volcanically
+volcanism
+volcano
+vole
+voles
+volga
+volition
+volley
+volleyball
+volleyed
+volleying
+volleys
+volt
+voltage
+voltages
+voltmeter
+volts
+volubility
+voluble
+volubly
+volume
+volumes
+volumetric
+voluminous
+voluntarily
+voluntary
+volunteer
+volunteered
+volunteering
+volunteers
+voluptuous
+voluptuously
+voluptuousness
+volute
+vomit
+vomited
+vomiting
+vomits
+voodoo
+voracious
+voraciously
+voracity
+vortex
+vortexes
+vortices
+vorticity
+vote
+voted
+voteless
+voter
+voters
+votes
+voting
+votive
+vouch
+vouched
+voucher
+vouchers
+vouches
+vouchsafe
+vouchsafed
+vouchsafing
+vow
+vowed
+vowel
+vowels
+vowing
+vows
+voyage
+voyaged
+voyager
+voyagers
+voyages
+voyaging
+voyeur
+voyeurism
+voyeuristic
+voyeurs
+vulcan
+vulcanise
+vulcanised
+vulcanism
+vulcanologist
+vulgar
+vulgarities
+vulgarity
+vulgarly
+vulgate
+vulnerabilities
+vulnerability
+vulnerable
+vulpine
+vulture
+vultures
+vulva
+vying
+wackier
+wacky
+wad
+wadding
+waddle
+waddled
+waddles
+waddling
+wade
+waded
+wader
+waders
+wades
+wadi
+wading
+wadings
+wadis
+wads
+wafer
+wafers
+waffle
+waffled
+waffles
+waft
+wafted
+wafting
+wafts
+wafture
+wag
+wage
+waged
+wager
+wagered
+wagerer
+wagers
+wages
+wagged
+waggery
+wagging
+waggish
+waggishly
+waggle
+waggled
+waggles
+waggling
+waggly
+waggoners
+waggons
+waging
+wagon
+wagons
+wags
+wagtail
+wagtails
+waif
+waifs
+wail
+wailed
+wailer
+wailing
+wails
+wainscot
+wainscoting
+waist
+waistband
+waistcoat
+waistcoats
+waistline
+waists
+wait
+waited
+waiter
+waiters
+waiting
+waitress
+waitresses
+waits
+waive
+waived
+waiver
+waivers
+waives
+waiving
+wake
+waked
+wakeful
+wakefulness
+waken
+wakened
+wakening
+wakens
+wakes
+waking
+wales
+walk
+walkable
+walkabout
+walkabouts
+walked
+walker
+walkers
+walkietalkie
+walkietalkies
+walking
+walkout
+walkover
+walks
+walkway
+walkways
+wall
+wallabies
+wallaby
+wallchart
+walled
+wallet
+wallets
+wallflower
+wallflowers
+walling
+wallop
+wallow
+wallowed
+wallowing
+wallows
+wallpaper
+wallpapering
+wallpapers
+walls
+walltowall
+walnut
+walnuts
+walrus
+walruses
+waltz
+waltzed
+waltzes
+waltzing
+wan
+wand
+wander
+wandered
+wanderer
+wanderers
+wandering
+wanderings
+wanderlust
+wanders
+wands
+wane
+waned
+wanes
+waning
+wanly
+want
+wanted
+wanting
+wanton
+wantonly
+wantonness
+wants
+wapiti
+wapitis
+war
+warble
+warbled
+warbler
+warblers
+warbles
+warbling
+ward
+warded
+warden
+wardens
+warder
+warders
+warding
+wardrobe
+wardrobes
+wards
+wardship
+ware
+warehouse
+warehoused
+warehouseman
+warehousemen
+warehouses
+warehousing
+wares
+warfare
+warhead
+warheads
+warhorse
+warhorses
+wariest
+warily
+wariness
+waring
+warlike
+warlock
+warlocks
+warlord
+warlords
+warm
+warmblooded
+warmed
+warmer
+warmers
+warmest
+warmhearted
+warmheartedness
+warming
+warmish
+warmly
+warmness
+warmonger
+warms
+warmth
+warmup
+warn
+warned
+warners
+warning
+warningly
+warnings
+warns
+warp
+warpaint
+warpath
+warped
+warping
+warplanes
+warps
+warrant
+warranted
+warranties
+warranting
+warrants
+warranty
+warred
+warren
+warrens
+warring
+warrior
+warriors
+wars
+warsaw
+warship
+warships
+wart
+warthog
+warthogs
+wartime
+warts
+warty
+wary
+was
+wash
+washable
+washbasin
+washbasins
+washboard
+washday
+washed
+washer
+washers
+washerwoman
+washerwomen
+washes
+washing
+washings
+washington
+washout
+washstand
+washy
+wasp
+waspish
+waspishly
+wasps
+waspwaisted
+wast
+wastage
+wastages
+waste
+wasted
+wasteful
+wastefully
+wastefulness
+wasteland
+wastelands
+wastepaper
+waster
+wasters
+wastes
+wasting
+wastings
+wastrel
+watch
+watchable
+watchdog
+watchdogs
+watched
+watcher
+watchers
+watches
+watchful
+watchfully
+watchfulness
+watching
+watchmaker
+watchmakers
+watchman
+watchmen
+watchtower
+watchtowers
+watchword
+watchwords
+water
+waterbed
+waterbeds
+watercolour
+watercolourists
+watercolours
+watercooled
+watercourse
+watercourses
+watercress
+watered
+waterfall
+waterfalls
+waterfowl
+waterfront
+waterglass
+waterhole
+waterholes
+watering
+waterless
+waterline
+waterlogged
+waterloo
+waterman
+watermark
+watermarks
+watermelon
+watermelons
+watermen
+watermill
+watermills
+waterproof
+waterproofed
+waterproofing
+waterproofs
+waterresistant
+waters
+watershed
+watersheds
+waterside
+waterskiing
+watersoluble
+waterspouts
+watertable
+watertight
+waterway
+waterways
+waterwheel
+waterwheels
+waterworks
+watery
+watt
+wattage
+wattle
+watts
+wave
+waveband
+wavebands
+waved
+waveform
+waveforms
+wavefront
+waveguide
+waveguides
+wavelength
+wavelengths
+wavelet
+wavelets
+wavelike
+waver
+wavered
+waverers
+wavering
+wavers
+waves
+wavier
+waviest
+wavily
+waving
+wavings
+wavy
+wax
+waxed
+waxen
+waxes
+waxing
+waxpaper
+waxwork
+waxworks
+waxy
+way
+wayout
+ways
+wayside
+wayward
+waywardly
+waywardness
+we
+weak
+weaken
+weakened
+weakening
+weakens
+weaker
+weakest
+weakish
+weakkneed
+weakling
+weaklings
+weakly
+weakminded
+weakness
+weaknesses
+weal
+wealth
+wealthier
+wealthiest
+wealthy
+wean
+weaned
+weaning
+weanling
+weans
+weapon
+weaponry
+weapons
+wear
+wearable
+wearer
+wearers
+wearied
+wearier
+wearies
+weariest
+wearily
+weariness
+wearing
+wearisome
+wears
+weary
+wearying
+wearyingly
+weasel
+weaselling
+weaselly
+weasels
+weather
+weatherbeaten
+weatherbound
+weathercock
+weathercocks
+weathered
+weathering
+weatherman
+weathermen
+weatherproof
+weathers
+weathervane
+weatherworn
+weave
+weaved
+weaver
+weavers
+weaves
+weaving
+weavings
+web
+webbed
+webbing
+webby
+webfoot
+webs
+website
+wed
+wedded
+wedding
+weddings
+wedge
+wedged
+wedges
+wedging
+wedlock
+weds
+wee
+weed
+weeded
+weedier
+weediest
+weeding
+weedkiller
+weedkillers
+weeds
+weedy
+week
+weekday
+weekdays
+weekend
+weekenders
+weekends
+weeklies
+weekly
+weeks
+ween
+weeny
+weep
+weeper
+weeping
+weepings
+weeps
+weepy
+weevil
+weevils
+weigh
+weighbridge
+weighed
+weighing
+weighs
+weight
+weighted
+weightier
+weightiest
+weightily
+weighting
+weightings
+weightless
+weightlessly
+weightlessness
+weightlifter
+weightlifters
+weightlifting
+weights
+weighty
+weir
+weird
+weirder
+weirdest
+weirdly
+weirdness
+weirdo
+weirs
+welcome
+welcomed
+welcomer
+welcomes
+welcoming
+weld
+welded
+welder
+welders
+welding
+welds
+welfare
+well
+welladjusted
+wellbalanced
+wellbehaved
+wellbeing
+wellbeloved
+wellborn
+wellbred
+wellbuilt
+wellchosen
+wellconnected
+welldefined
+welldeserved
+welldesigned
+welldeveloped
+welldisposed
+welldressed
+wellearned
+welled
+welleducated
+wellendowed
+wellequipped
+wellestablished
+wellfed
+wellformed
+wellfounded
+wellgrounded
+wellhead
+wellinformed
+welling
+wellington
+wellingtons
+wellintentioned
+wellkept
+wellknown
+wellliked
+wellloved
+wellmade
+wellmannered
+wellmarked
+wellmatched
+wellmeaning
+wellmeant
+welloff
+wellordered
+wellorganised
+wellpaid
+wellplaced
+wellprepared
+wellpreserved
+wellread
+wellreceived
+wellrounded
+wells
+wellspoken
+wellstructured
+wellsupported
+welltaken
+wellthoughtout
+welltimed
+welltodo
+welltried
+wellused
+wellwisher
+wellwishers
+wellworn
+welly
+welsh
+welshman
+welt
+welter
+weltering
+welters
+welterweight
+welts
+wench
+wenches
+wend
+wended
+wending
+wends
+went
+wept
+were
+werewolf
+werewolves
+west
+westbound
+westerly
+western
+westerner
+westerners
+westernisation
+westernised
+westernmost
+westerns
+westward
+westwards
+wet
+wether
+wetland
+wetlands
+wetly
+wetness
+wets
+wetsuit
+wetsuits
+wettable
+wetted
+wetter
+wettest
+wetting
+whack
+whacked
+whacker
+whacko
+whacks
+whale
+whalebone
+whaler
+whalers
+whales
+whaling
+wham
+whap
+wharf
+wharfs
+wharves
+what
+whatever
+whatnot
+whatsoever
+wheals
+wheat
+wheatears
+wheaten
+wheatgerm
+wheats
+whee
+wheedle
+wheedled
+wheedling
+wheel
+wheelbarrow
+wheelbarrows
+wheelbase
+wheelchair
+wheelchairs
+wheeled
+wheeler
+wheelers
+wheelhouse
+wheelie
+wheeling
+wheels
+wheelwright
+wheelwrights
+wheeze
+wheezed
+wheezes
+wheezing
+wheezy
+whelk
+whelked
+whelks
+whelp
+when
+whence
+whenever
+where
+whereabouts
+whereas
+whereby
+wherefore
+wherefores
+wherein
+whereof
+whereon
+wheresoever
+whereto
+whereupon
+wherever
+wherewith
+wherewithal
+wherry
+whet
+whether
+whetstone
+whetstones
+whetted
+whetting
+whey
+which
+whichever
+whiff
+whiffs
+while
+whiled
+whiles
+whiling
+whilst
+whim
+whimper
+whimpered
+whimpering
+whimpers
+whims
+whimsical
+whimsically
+whimsy
+whine
+whined
+whines
+whining
+whinnied
+whinny
+whinnying
+whip
+whipcord
+whiplash
+whipped
+whipper
+whippet
+whippets
+whipping
+whippy
+whips
+whir
+whirl
+whirled
+whirligig
+whirling
+whirlpool
+whirlpools
+whirls
+whirlwind
+whirlwinds
+whirr
+whirred
+whirring
+whisk
+whisked
+whisker
+whiskers
+whiskery
+whiskey
+whiskeys
+whiskies
+whisking
+whisks
+whisky
+whisper
+whispered
+whisperers
+whispering
+whisperings
+whispers
+whist
+whistle
+whistled
+whistler
+whistles
+whistling
+whists
+white
+whitebait
+whiteboards
+whitecollar
+whitely
+whiten
+whitened
+whitener
+whiteness
+whitening
+whitens
+whiter
+whites
+whitest
+whitewash
+whitewashed
+whitewashing
+whither
+whiting
+whitish
+whittle
+whittled
+whittling
+whizkids
+whizz
+whizzkid
+who
+whoa
+whodunit
+whodunnit
+whoever
+whole
+wholefood
+wholegrain
+wholehearted
+wholeheartedly
+wholemeal
+wholeness
+wholes
+wholesale
+wholesaler
+wholesalers
+wholesaling
+wholesome
+wholesomely
+wholesomeness
+wholewheat
+wholly
+whom
+whomever
+whomsoever
+whoop
+whooped
+whooping
+whoops
+whoosh
+whop
+whore
+whorehouse
+whores
+whoring
+whorled
+whorls
+whose
+whosoever
+why
+whys
+wick
+wicked
+wickedest
+wickedly
+wickedness
+wicker
+wickerwork
+wicket
+wicketkeeper
+wicketkeepers
+wicketkeeping
+wickets
+wicks
+wide
+wideeyed
+widely
+widen
+widened
+wideness
+widening
+widens
+wideopen
+wider
+wideranging
+wides
+widescreen
+widespread
+widest
+widgeon
+widget
+widow
+widowed
+widower
+widowers
+widowhood
+widows
+width
+widths
+wield
+wielded
+wielder
+wielding
+wields
+wife
+wifeless
+wifely
+wig
+wigeon
+wigeons
+wigging
+wiggle
+wiggled
+wiggler
+wiggles
+wiggling
+wigs
+wigwam
+wigwams
+wild
+wildcat
+wildcats
+wildebeest
+wilder
+wilderness
+wildernesses
+wildest
+wildeyed
+wildfire
+wildfires
+wildfowl
+wildlife
+wildly
+wildness
+wildoats
+wilds
+wile
+wiles
+wilful
+wilfully
+wilfulness
+wilier
+wiliest
+wiling
+will
+willed
+willing
+willingly
+willingness
+willow
+willows
+willowy
+willpower
+wills
+willynilly
+wilt
+wilted
+wilting
+wilts
+wily
+wimp
+wimple
+wimpy
+win
+wince
+winced
+winces
+winch
+winched
+winches
+winching
+wincing
+wind
+windbag
+windbags
+windbreak
+windcheater
+windcheaters
+winded
+winder
+winders
+windfall
+windfalls
+windier
+windiest
+windily
+winding
+windings
+windlass
+windless
+windmill
+windmills
+window
+windowed
+windowing
+windowless
+windows
+windowshop
+windowshopping
+windpipe
+winds
+windscreen
+windscreens
+windsock
+windsor
+windsurf
+windsurfer
+windsurfers
+windsurfing
+windswept
+windward
+windy
+wine
+wined
+wineglass
+wineglasses
+winemakers
+winery
+wines
+wineskin
+wing
+winged
+winger
+wingers
+winging
+wingless
+wings
+wingspan
+wining
+wink
+winked
+winker
+winkers
+winking
+winkle
+winkled
+winkles
+winks
+winnable
+winner
+winners
+winning
+winningly
+winnings
+winnow
+winnowing
+wins
+winsome
+winter
+wintered
+wintering
+winters
+wintertime
+wintery
+wintrier
+wintriest
+wintry
+wipe
+wiped
+wiper
+wipers
+wipes
+wiping
+wire
+wired
+wireless
+wirer
+wires
+wirier
+wiriest
+wiring
+wirings
+wiry
+wisdom
+wisdoms
+wise
+wisecracks
+wiseguys
+wisely
+wiser
+wisest
+wish
+wishbone
+wished
+wishes
+wishful
+wishfully
+wishing
+wishywashy
+wisp
+wisps
+wispy
+wistful
+wistfully
+wistfulness
+wit
+witch
+witchcraft
+witchdoctor
+witchdoctors
+witchery
+witches
+witchhunt
+witchhunts
+witchlike
+with
+withdraw
+withdrawal
+withdrawals
+withdrawing
+withdrawn
+withdraws
+withdrew
+wither
+withered
+withering
+witheringly
+withers
+withheld
+withhold
+withholding
+withholds
+within
+without
+withstand
+withstanding
+withstands
+withstood
+witless
+witness
+witnessed
+witnesses
+witnessing
+wits
+witter
+wittering
+witticism
+witticisms
+wittier
+wittiest
+wittily
+wittiness
+witting
+wittingly
+witty
+wives
+wizard
+wizardry
+wizards
+wizened
+woad
+wobble
+wobbled
+wobbler
+wobbles
+wobblier
+wobbliest
+wobbling
+wobbly
+wodan
+wodge
+woe
+woebegone
+woeful
+woefully
+woes
+wok
+woke
+woken
+woks
+wold
+wolds
+wolf
+wolfcubs
+wolfed
+wolfhound
+wolfhounds
+wolfish
+wolfishly
+wolfwhistles
+wolves
+woman
+womanhood
+womanise
+womaniser
+womanish
+womanising
+womankind
+womanliness
+womanly
+womans
+womb
+wombat
+wombats
+wombs
+women
+womenfolk
+won
+wonder
+wondered
+wonderful
+wonderfully
+wonderfulness
+wondering
+wonderingly
+wonderland
+wonderment
+wonders
+wondrous
+wondrously
+wont
+woo
+wood
+woodbine
+woodcock
+woodcocks
+woodcut
+woodcuts
+woodcutter
+woodcutters
+wooded
+wooden
+woodenly
+woodenness
+woodland
+woodlands
+woodlice
+woodlouse
+woodman
+woodmen
+woodpecker
+woodpeckers
+woodpile
+woods
+woodshed
+woodsman
+woodsmoke
+woodwind
+woodwork
+woodworker
+woodworkers
+woodworking
+woodworm
+woody
+wooed
+wooer
+woof
+woofer
+woofers
+wooing
+wool
+woollen
+woollens
+woollier
+woollies
+woollike
+woolliness
+woolly
+wools
+wooly
+woos
+word
+wordage
+worded
+wordgame
+wordier
+wordiest
+wordiness
+wording
+wordings
+wordless
+wordlessly
+wordplay
+wordprocessing
+words
+wordsmith
+wordy
+wore
+work
+workability
+workable
+workaday
+workbench
+workbook
+workbooks
+workday
+workdays
+worked
+worker
+workers
+workfare
+workforce
+workforces
+workhorse
+workhorses
+workhouse
+workhouses
+working
+workings
+workless
+workload
+workloads
+workman
+workmanlike
+workmanship
+workmate
+workmates
+workmen
+workout
+workouts
+workpeople
+workpiece
+workpieces
+workplace
+workplaces
+workroom
+workrooms
+works
+worksheet
+worksheets
+workshop
+workshops
+workshy
+workspace
+workstation
+workstations
+worktop
+worktops
+workweek
+world
+worldclass
+worldfamous
+worldliness
+worldly
+worlds
+worldwar
+worldwide
+worm
+wormhole
+wormholes
+worming
+wormlike
+worms
+wormy
+worn
+worried
+worriedly
+worrier
+worriers
+worries
+worrisome
+worry
+worrying
+worryingly
+worse
+worsen
+worsened
+worsening
+worsens
+worser
+worship
+worshipful
+worshipped
+worshipper
+worshippers
+worshipping
+worships
+worst
+worsted
+worth
+worthier
+worthies
+worthiest
+worthily
+worthiness
+worthless
+worthlessness
+worthwhile
+worthy
+would
+wound
+wounded
+wounding
+wounds
+wove
+woven
+wow
+wowed
+wows
+wrack
+wracked
+wraith
+wraiths
+wrangle
+wrangled
+wrangler
+wrangles
+wrangling
+wrap
+wraparound
+wrapped
+wrapper
+wrappers
+wrapping
+wrappings
+wraps
+wrasse
+wrath
+wrathful
+wrathfully
+wraths
+wreak
+wreaked
+wreaking
+wreaks
+wreath
+wreathe
+wreathed
+wreathes
+wreathing
+wreaths
+wreck
+wreckage
+wrecked
+wrecker
+wreckers
+wrecking
+wrecks
+wren
+wrench
+wrenched
+wrenches
+wrenching
+wrens
+wrest
+wrested
+wresting
+wrestle
+wrestled
+wrestler
+wrestlers
+wrestles
+wrestling
+wretch
+wretched
+wretchedly
+wretchedness
+wretches
+wriggle
+wriggled
+wriggles
+wriggling
+wriggly
+wright
+wring
+wringer
+wringing
+wrings
+wrinkle
+wrinkled
+wrinkles
+wrinkling
+wrinkly
+wrist
+wristband
+wristbands
+wrists
+wristwatch
+writ
+writable
+write
+writer
+writers
+writes
+writhe
+writhed
+writhes
+writhing
+writing
+writings
+writs
+written
+wrong
+wrongdoer
+wrongdoers
+wrongdoing
+wrongdoings
+wronged
+wronger
+wrongest
+wrongful
+wrongfully
+wronging
+wrongly
+wrongness
+wrongs
+wrote
+wrought
+wroughtiron
+wrung
+wry
+wryly
+wryness
+wunderkind
+xenon
+xenophobe
+xenophobia
+xenophobic
+xerography
+xhosa
+xhosas
+xmas
+xray
+xrayed
+xraying
+xrays
+xylophone
+xylophonist
+yacht
+yachting
+yachts
+yachtsman
+yachtsmen
+yak
+yaks
+yale
+yalelock
+yam
+yams
+yank
+yankee
+yankees
+yanks
+yap
+yapping
+yaps
+yard
+yardage
+yards
+yardstick
+yardsticks
+yarn
+yarns
+yaw
+yawed
+yawl
+yawls
+yawn
+yawned
+yawning
+yawningly
+yawns
+yaws
+ye
+yea
+yeah
+yeaned
+year
+yearbook
+yearbooks
+yearling
+yearlings
+yearlong
+yearly
+yearn
+yearned
+yearning
+yearningly
+yearnings
+yearns
+years
+yeas
+yeast
+yeasts
+yeasty
+yell
+yelled
+yelling
+yellings
+yellow
+yellowed
+yellower
+yellowing
+yellowish
+yellows
+yellowy
+yells
+yelp
+yelped
+yelping
+yelpings
+yelps
+yemen
+yen
+yens
+yeoman
+yeomanry
+yeomen
+yep
+yes
+yesterday
+yesterdays
+yesteryear
+yet
+yeti
+yetis
+yew
+yews
+yiddish
+yield
+yielded
+yielding
+yields
+yip
+yippee
+yodel
+yodelled
+yodeller
+yodelling
+yodels
+yoga
+yogi
+yoke
+yoked
+yokel
+yokels
+yokes
+yolk
+yolks
+yon
+yonder
+yore
+york
+yorker
+yorkers
+you
+young
+younger
+youngest
+youngish
+youngster
+youngsters
+your
+yours
+yourself
+yourselves
+youth
+youthful
+youthfulness
+youths
+yowl
+yoyo
+yrs
+yttrium
+yuck
+yukon
+yule
+yuletide
+yummiest
+yummy
+yuppie
+yuppies
+zag
+zaire
+zambezi
+zambia
+zambian
+zambians
+zaniest
+zany
+zanzibar
+zap
+zapping
+zappy
+zaps
+zeal
+zealot
+zealotry
+zealots
+zealous
+zealously
+zealousness
+zeals
+zebra
+zebras
+zebu
+zebus
+zees
+zenith
+zeniths
+zeolite
+zeolites
+zephyr
+zephyrs
+zeppelin
+zero
+zeroed
+zeroing
+zest
+zestfully
+zesty
+zeta
+zeus
+zig
+zigzag
+zigzagged
+zigzagging
+zigzags
+zillion
+zillions
+zimbabwe
+zinc
+zion
+zionism
+zionist
+zionists
+zip
+zipped
+zipper
+zippers
+zipping
+zippy
+zips
+zither
+zithers
+zombi
+zombie
+zombies
+zonal
+zonation
+zone
+zoned
+zones
+zoning
+zoo
+zookeepers
+zoological
+zoologist
+zoologists
+zoology
+zoom
+zoomed
+zooming
+zooms
+zooplankton
+zoos
+zulu
+zulus
diff --git a/test/disabled/jvm/JavaInteraction.scala b/test/disabled/jvm/JavaInteraction.scala
index 26fbc17e58..65e3c5cb40 100644
--- a/test/disabled/jvm/JavaInteraction.scala
+++ b/test/disabled/jvm/JavaInteraction.scala
@@ -17,7 +17,7 @@ p.c = java.awt.Color[r=255,g=0,b=0]
p.getX() = 5.0
p.getC() = java.awt.Color[r=255,g=0,b=0]
""".trim
-
+
def connect() = {
val p = new ColoredPoint(5, 7, Color.RED);
List(
diff --git a/test/disabled/pos/spec-List.scala b/test/disabled/pos/spec-List.scala
index 04ab7d1543..81e55f46cb 100644
--- a/test/disabled/pos/spec-List.scala
+++ b/test/disabled/pos/spec-List.scala
@@ -23,8 +23,8 @@ import annotation.tailrec
* @author Martin Odersky and others
* @version 2.8
*/
-sealed trait List[@specialized +A] extends LinearSeq[A]
- with Product
+sealed trait List[@specialized +A] extends LinearSeq[A]
+ with Product
with GenericTraversableTemplate[A, List]
with LinearSeqOptimized[A, List[A]] {
override def companion: GenericCompanion[List] = List
@@ -65,7 +65,7 @@ sealed trait List[@specialized +A] extends LinearSeq[A]
/** <p>
* Returns a list resulting from the concatenation of the given
- * list <code>prefix</code> and this list.
+ * list <code>prefix</code> and this list.
* </p>
*
* @param prefix the list to concatenate at the beginning of this list.
@@ -140,7 +140,7 @@ sealed trait List[@specialized +A] extends LinearSeq[A]
}
// Overridden methods from IterableLike or overloaded variants of such methods
-
+
/** Create a new list which contains all elements of this list
* followed by all elements of Traversable `that'
*/
@@ -156,7 +156,7 @@ sealed trait List[@specialized +A] extends LinearSeq[A]
*/
override def toList: List[A] = this
- /** Returns the <code>n</code> first elements of this list, or else the whole
+ /** Returns the <code>n</code> first elements of this list, or else the whole
* list, if it has less than <code>n</code> elements.
* @param n the number of elements to take.
@@ -216,7 +216,7 @@ sealed trait List[@specialized +A] extends LinearSeq[A]
}
loop(drop(n), this)
}
-
+
// dropRight is inherited from Stream
/** Split the list at a given point and return the two parts thus
@@ -302,7 +302,7 @@ sealed trait List[@specialized +A] extends LinearSeq[A]
override def stringPrefix = "List"
- override def toStream : Stream[A] =
+ override def toStream : Stream[A] =
if (isEmpty) Stream.Empty
else new Stream.Cons(head, tail.toStream)
@@ -487,10 +487,10 @@ final case class ::[@specialized B](private var hd: B, private[scala] var tl: Li
* @version 2.8
*/
object List extends SeqFactory[List] {
-
+
import collection.{Iterable, Seq}
- implicit def builderFactory[A]: CanBuildFrom[Coll, A, List[A]] =
+ implicit def builderFactory[A]: CanBuildFrom[Coll, A, List[A]] =
new GenericCanBuildFrom[A] {
override def apply() = newBuilder[A]
}
@@ -552,8 +552,8 @@ object List extends SeqFactory[List] {
* @return the concatenation of all the lists
*/
@deprecated("use `xss.flatten' instead")
- def flatten[A](xss: List[List[A]]): List[A] = {
- val b = new ListBuffer[A]
+ def flatten[A](xss: List[List[A]]): List[A] = {
+ val b = new ListBuffer[A]
for (xs <- xss) {
var xc = xs
while (!xc.isEmpty) {
@@ -588,7 +588,7 @@ object List extends SeqFactory[List] {
* @return a pair of lists.
*/
@deprecated("use `xs.unzip' instead")
- def unzip[A,B](xs: Iterable[(A,B)]): (List[A], List[B]) =
+ def unzip[A,B](xs: Iterable[(A,B)]): (List[A], List[B]) =
xs.foldRight[(List[A], List[B])]((Nil, Nil)) {
case ((x, y), (xs, ys)) => (x :: xs, y :: ys)
}
@@ -598,17 +598,17 @@ object List extends SeqFactory[List] {
* of <code>Either</code>s.
*/
@deprecated("use `Either.lefts' instead")
- def lefts[A, B](es: Iterable[Either[A, B]]) =
+ def lefts[A, B](es: Iterable[Either[A, B]]) =
es.foldRight[List[A]](Nil)((e, as) => e match {
case Left(a) => a :: as
case Right(_) => as
- })
-
+ })
+
/**
* Returns the <code>Right</code> values in the given<code>Iterable</code> of <code>Either</code>s.
*/
@deprecated("use `Either.rights' instead")
- def rights[A, B](es: Iterable[Either[A, B]]) =
+ def rights[A, B](es: Iterable[Either[A, B]]) =
es.foldRight[List[B]](Nil)((e, bs) => e match {
case Left(_) => bs
case Right(b) => b :: bs
@@ -739,7 +739,7 @@ object List extends SeqFactory[List] {
/** Returns the list resulting from applying the given function <code>f</code>
* to corresponding elements of the argument lists.
* @param f function to apply to each pair of elements.
- * @return <code>[f(a0,b0), ..., f(an,bn)]</code> if the lists are
+ * @return <code>[f(a0,b0), ..., f(an,bn)]</code> if the lists are
* <code>[a0, ..., ak]</code>, <code>[b0, ..., bl]</code> and
* <code>n = min(k,l)</code>
*/
@@ -782,7 +782,7 @@ object List extends SeqFactory[List] {
b.toList
}
- /** Tests whether the given predicate <code>p</code> holds
+ /** Tests whether the given predicate <code>p</code> holds
* for all corresponding elements of the argument lists.
*
* @param p function to apply to each pair of elements.
diff --git a/test/files/pos/t1737/A.java b/test/disabled/pos/t1737/A.java
index ee87e29a35..ee87e29a35 100644
--- a/test/files/pos/t1737/A.java
+++ b/test/disabled/pos/t1737/A.java
diff --git a/test/files/pos/t1737/B.java b/test/disabled/pos/t1737/B.java
index 28a1907a04..28a1907a04 100644
--- a/test/files/pos/t1737/B.java
+++ b/test/disabled/pos/t1737/B.java
diff --git a/test/files/pos/t1737/c.scala b/test/disabled/pos/t1737/c.scala
index 782ec18b9e..782ec18b9e 100644
--- a/test/files/pos/t1737/c.scala
+++ b/test/disabled/pos/t1737/c.scala
diff --git a/test/disabled/presentation/ide-bug-1000450/src/Ranges.scala b/test/disabled/presentation/ide-bug-1000450/src/Ranges.scala
index 10e69c58f0..2295d06b9f 100644
--- a/test/disabled/presentation/ide-bug-1000450/src/Ranges.scala
+++ b/test/disabled/presentation/ide-bug-1000450/src/Ranges.scala
@@ -1,5 +1,5 @@
object Ranges {
// (1 to 10). // (1) this works as expected
-
+
(1 to 10).toS /*!*/ // (2) this fails
} \ No newline at end of file
diff --git a/test/disabled/presentation/ide-bug-1000545/src/CompletionFails.scala b/test/disabled/presentation/ide-bug-1000545/src/CompletionFails.scala
index 7300e5fd7d..917fd43257 100644
--- a/test/disabled/presentation/ide-bug-1000545/src/CompletionFails.scala
+++ b/test/disabled/presentation/ide-bug-1000545/src/CompletionFails.scala
@@ -1,23 +1,23 @@
/**
* Presentation compiler returns the wrong answer for this test.
- *
+ *
* Below is the current result of running this test:
- *
+ *
* Mircos-iMac:test mirco$ ./partest files/presentation/ticket-1000545 --show-log | sed 's/< //'
* Testing individual files
* testing: [...]/files/presentation/ticket-1000545 [FAILED]
* 1,8d0
* reload: CompletionFails.scala
- *
+ *
* askTypeCompletion at CompletionFails.scala(2,19)
* ================================================================================
* [response] aksTypeCompletion at (2,19)
* retrieved 1 members
* TypeMember(method <clinit>,()Unit,false,false,<none>)
* ================================================================================
- *
+ *
* 1 of 1 tests failed (elapsed time: 00:00:05)
- *
+ *
* @note The expected result was the list of static methods for class @see java.io.Console
*/
object CompletionFails {
diff --git a/test/disabled/presentation/simple-tests/src/Tester.scala b/test/disabled/presentation/simple-tests/src/Tester.scala
index cb62187514..b039470ae7 100644
--- a/test/disabled/presentation/simple-tests/src/Tester.scala
+++ b/test/disabled/presentation/simple-tests/src/Tester.scala
@@ -38,7 +38,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
def askTypeCompletion(pos: Position) = askAndListen("type at", pos, compiler.askTypeCompletion)
def askScopeCompletion(pos: Position) = askAndListen("type at", pos, compiler.askScopeCompletion)
- val rand = new java.util.Random()
+ val rand = new java.util.Random()
private def randomInverse(n: Int) = n / (rand.nextInt(n) + 1)
@@ -71,7 +71,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
private var pos = start
private var deleted: List[Char] = List()
- override def toString =
+ override def toString =
"In "+inputs(sfidx)+" at "+start+" take "+nchars+" to "+
(if (toLeft) "left" else "right")
@@ -90,7 +90,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
if (pos > 0 && pos <= inputs(sfidx).length) {
pos -= 1
deleteOne()
- }
+ }
} else {
if (pos < inputs(sfidx).length) {
deleteOne()
@@ -98,7 +98,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
}
}
}
-
+
def insertAll() {
for (chr <- if (toLeft) deleted else deleted.reverse) {
val sf = inputs(sfidx)
@@ -138,7 +138,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
val changes = Vector.fill(/**/randomChangesPerBatch()) {
/**/
new Change(sfidx, randomPositionIn(inputs(sfidx)), randomNumChars(), rand.nextBoolean())
- }
+ }
doTest(sfidx, changes, testPositions, otherTest) match {
case Some(errortrace) =>
println(errortrace)
@@ -151,7 +151,7 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
def doTest(sfidx: Int, changes: Seq[Change], testPositions: Seq[Int], otherTest: () => Unit): Option[ErrorTrace] = {
print("new round with "+changes.length+" changes:")
changes foreach (_.deleteAll())
- otherTest()
+ otherTest()
def errorCount() = compiler.ask(() => reporter.ERROR.count)
// println("\nhalf test round: "+errorCount())
changes.view.reverse foreach (_.insertAll())
@@ -159,13 +159,13 @@ class Tester(ntests: Int, inputs: Array[SourceFile], settings: Settings) {
println("done test round: "+errorCount())
if (errorCount() != 0)
Some(ErrorTrace(sfidx, changes, reporter.infos, inputs(sfidx).content))
- else
+ else
None
}
case class ErrorTrace(
sfidx: Int, changes: Seq[Change], infos: collection.Set[reporter.Info], content: Array[Char]) {
- override def toString =
+ override def toString =
"Sourcefile: "+inputs(sfidx)+
"\nChanges:\n "+changes.mkString("\n ")+
"\nErrors:\n "+infos.mkString("\n ")+
@@ -201,4 +201,4 @@ object Tester {
new Tester(args(0).toInt, files, settings).run()
sys.exit(0)
}
-}
+}
diff --git a/test/disabled/run/applet-prop.scala b/test/disabled/run/applet-prop.scala
index fb112bf7d5..9c29dfd979 100644
--- a/test/disabled/run/applet-prop.scala
+++ b/test/disabled/run/applet-prop.scala
@@ -10,7 +10,7 @@ object Test extends SecurityTest {
val s = new S
// lazy val TestKey = sys.SystemProperties.noTraceSupression.key
// def hitPerm() = new Throwable with scala.util.control.ControlThrowable { }
- //
+ //
// var throwing = false
// override def propertyCheck(p: PropertyPermission): Unit = {
// if (p.getName == TestKey) {
@@ -19,21 +19,21 @@ object Test extends SecurityTest {
// throwIt(p)
// }
// }
- //
+ //
// hitPerm()
// securityOn()
// hitPerm()
- //
+ //
// throwing = true
//
- // val caught =
+ // val caught =
// try { hitPerm() ; false }
// catch { case _: AccessControlException => true }
- //
+ //
// assert(caught, "Should have incurred exception.")
// throwing = false
// hitPerm()
- //
+ //
// val xs = new Traversable[Int] { def foreach[U](f: Int => U) = 1 to 3 foreach f }
// xs foreach println
}
diff --git a/test/disabled/run/coder2/Coder2.scala b/test/disabled/run/coder2/Coder2.scala
index abe284a398..43b2e9bcb8 100644
--- a/test/disabled/run/coder2/Coder2.scala
+++ b/test/disabled/run/coder2/Coder2.scala
@@ -5,31 +5,31 @@ import collection.parallel._//immutable._
class SeqCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, Seq[String]] =
+ val wordsForNum: Map[String, Seq[String]] =
(words groupBy wordCode).map(t => (t._1, t._2.toSeq)) withDefaultValue Seq()
-
+
val memo = collection.mutable.Map[String, Set[Seq[String]]]("" -> Set(Seq()))
val wfnmemo = collection.mutable.Map[(String, String), Set[Seq[String]]]()
val subsmemo = collection.mutable.Map[(String, String, String), Set[Seq[String]]]()
-
+
/** All ways to encode a number as a list of words */
- def encode(number: String): Set[Seq[String]] =
+ def encode(number: String): Set[Seq[String]] =
if (number.isEmpty) Set(Seq())
else {
val splits = (1 to number.length).toSet
@@ -51,38 +51,38 @@ class SeqCoder(words: List[String]) {
memo += number -> r
r
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String): Set[String] = encode(number) map (_ mkString " ")
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
class ParCoder(words: List[String]) {
-
+
private val m = Map(
- '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
+ '2' -> "ABC", '3' -> "DEF", '4' -> "GHI", '5' -> "JKL",
'6' -> "MNO", '7' -> "PQRS", '8' -> "TUV", '9' -> "WXYZ")
-
+
/** Invert the mnemnonics map to give a map from chars 'A' ... 'Z' to '2' ... '9' */
- private val charCode: Map[Char, Char] =
+ private val charCode: Map[Char, Char] =
for ((digit, letters) <- m; letter <- letters) yield letter -> digit
-
- /** Maps a word to the digit string it represents,
+
+ /** Maps a word to the digit string it represents,
* e.g. `Java` -> `5282` */
private def wordCode(word: String): String = word.toUpperCase map charCode
-
- /** A map from digit strings to the words that represent
+
+ /** A map from digit strings to the words that represent
* them e.g. `5282` -> List(`Java`, `Kata`, `Lava`, ...)
*/
- val wordsForNum: Map[String, ParSeq[String]] =
+ val wordsForNum: Map[String, ParSeq[String]] =
(words groupBy wordCode).map(t => (t._1, t._2.toSeq.par)) withDefaultValue ParSeq()
-
+
val comparison = new SeqCoder(words)
-
+
/** All ways to encode a number as a list of words */
- def encode(number: String): ParSet[ParSeq[String]] =
+ def encode(number: String): ParSet[ParSeq[String]] =
if (number.isEmpty) ParSet(ParSeq())
else {
val splits = (1 to number.length).toSet.par
@@ -105,7 +105,7 @@ class ParCoder(words: List[String]) {
assertNumber(number, r)
r
}
-
+
def assertSubs(num: String, subsfrom: String, word: String, r: ParSet[ParSeq[String]]) {
val m = comparison.subsmemo((num, subsfrom, word))
if (r != m) {
@@ -115,7 +115,7 @@ class ParCoder(words: List[String]) {
error("r != m")
}
}
-
+
def assertWfn(num: String, split: String, dropped: String, r: ParSeq[ParSeq[String]]) {
val m = comparison.wfnmemo((num, split))
val rs = r.toSet.par
@@ -139,7 +139,7 @@ class ParCoder(words: List[String]) {
error("rs != m")
}
}
-
+
def assertNumber(num: String, r: ParSet[ParSeq[String]]) {
val m = comparison.memo(num)
if (r != m) {
@@ -149,14 +149,14 @@ class ParCoder(words: List[String]) {
error("r != m")
}
}
-
- /** Maps a number to a list of all word phrases that can
+
+ /** Maps a number to a list of all word phrases that can
* represent it */
def translate(number: String): ParSet[String] = {
comparison.translate(number)
encode(number) map (_.seq mkString " ")
}
-
+
def ??? : Nothing = throw new UnsupportedOperationException
}
@@ -165,18 +165,18 @@ class ParCoder(words: List[String]) {
object Test {
val code = "2328437472947"//36262633"//837976"//"6477323986225453446"
//val code = "747294736262633"
-
+
/* */
def main(args : Array[String]) {
for (i <- 0 until 10) {
val seqcoder = new SeqCoder(Dictionary.wordlist)
val sts = seqcoder.translate(code)
//println("Translation check: " + st.size)
-
+
val parcoder = new ParCoder(Dictionary.wordlist)
val pts = parcoder.translate(code)
//println("Translation check: " + pt.size)
-
+
val st = sts.toList.sorted
val pt = pts.toList.sorted
if (st.size != pt.size) {
diff --git a/test/disabled/run/javap.scala b/test/disabled/run/javap.scala
index 241a83fa6f..3704d64423 100644
--- a/test/disabled/run/javap.scala
+++ b/test/disabled/run/javap.scala
@@ -14,7 +14,7 @@ object Test {
(line startsWith "private") || (line startsWith "public")
} foreach println
}
-
+
def main(args: Array[String]): Unit = {
run("")
run("-v")
diff --git a/test/disabled/run/lisp.scala b/test/disabled/run/lisp.scala
index f3687ea1bb..06e68f508a 100644
--- a/test/disabled/run/lisp.scala
+++ b/test/disabled/run/lisp.scala
@@ -12,11 +12,11 @@ class LispTokenizer(s: String) extends Iterator[String] {
while (i < s.length() && s.charAt(i) <= ' ') i += 1
i < s.length()
}
- def next: String =
+ def next: String =
if (hasNext) {
val start = i
if (isDelimiter(s charAt i)) i += 1
- else
+ else
do i = i + 1
while (!isDelimiter(s charAt i))
s.substring(start, i)
diff --git a/test/disabled/run/script-positions.scala b/test/disabled/run/script-positions.scala
index 6982ed8440..2c80d550c0 100644
--- a/test/disabled/run/script-positions.scala
+++ b/test/disabled/run/script-positions.scala
@@ -4,9 +4,9 @@ import util.stringFromStream
// Testing "scripts" without the platform delights which accompany actual scripts.
object Scripts {
- val test1 =
-"""#!/bin/sh
- exec scala $0 $@
+ val test1 =
+"""#!/bin/sh
+ exec scala $0 $@
!#
println("statement 1")
@@ -29,7 +29,7 @@ val x = "line 6"
val y = "line 7"
val z "line 8""""
- val output2 =
+ val output2 =
"""bob.scala:8: error: '=' expected but string literal found.
val z "line 8"
^
@@ -41,10 +41,10 @@ two errors found"""
object Test {
import Scripts._
-
+
def settings = new GenericRunnerSettings(println _)
settings.nocompdaemon.value = true
-
+
def runScript(code: String): String =
stringFromStream(stream =>
Console.withOut(stream) {
@@ -53,7 +53,7 @@ object Test {
}
}
)
-
+
val tests: List[(String, String)] = List(
test1 -> output1,
test2 -> output2
@@ -67,14 +67,14 @@ object Test {
case idx => s drop (idx + 7)
}
def toLines(text: String) = lines(text) map stripFilename
-
+
def main(args: Array[String]): Unit = {
- for ((code, expected) <- tests) {
+ for ((code, expected) <- tests) {
val out = toLines(runScript(code))
val exp = toLines(expected)
val nomatch = out zip exp filter { case (x, y) => x != y }
val success = out.size == exp.size && nomatch.isEmpty
-
+
assert(
success,
"Output doesn't match expected:\n" +
diff --git a/test/disabled/run/t4279.scala b/test/disabled/run/t4279.scala
index d0afc3a032..62cc436302 100644
--- a/test/disabled/run/t4279.scala
+++ b/test/disabled/run/t4279.scala
@@ -5,7 +5,7 @@ import scala.tools.partest._
class Runner(num: Int, reps: Int) extends TestUtil {
var dummy = 0
val range = Array.range(0, num)
-
+
def iteratorSlice = {
def it = range.iterator.slice(num - 2, num)
for (i <- 1 to reps)
diff --git a/test/disabled/scalacheck/HashTrieSplit.scala b/test/disabled/scalacheck/HashTrieSplit.scala
index 6b20efe12b..cbf565095c 100644
--- a/test/disabled/scalacheck/HashTrieSplit.scala
+++ b/test/disabled/scalacheck/HashTrieSplit.scala
@@ -14,7 +14,7 @@ object Test {
def main(args: Array[String]) {
doesSplitOk
}
-
+
def doesSplitOk = {
val sz = 2000
var ht = new parallel.immutable.ParHashMap[Int, Int]
diff --git a/test/disabled/script/t1017.scala b/test/disabled/script/t1017.scala
index d1b43ea923..2600f4f553 100755
--- a/test/disabled/script/t1017.scala
+++ b/test/disabled/script/t1017.scala
@@ -23,7 +23,7 @@ exec scala -nocompdaemon "$SOURCE" "$@"
def foo = {
bar
}
-
+
var x = 1
-
+
def bar = 1
diff --git a/test/files/buildmanager/freshnames/A.scala b/test/files/buildmanager/freshnames/A.scala
index 88ea44b3c7..e8ab26ca1e 100644
--- a/test/files/buildmanager/freshnames/A.scala
+++ b/test/files/buildmanager/freshnames/A.scala
@@ -1,11 +1,11 @@
abstract class A {
var t: List[B]
-
+
def foo(n: String): Option[B] = {
t.reverse find (_.names contains n)
}
-
+
def bar(n: Int): Option[B] = {
t.reverse find (_.names contains n)
}
diff --git a/test/files/buildmanager/infer/A.scala b/test/files/buildmanager/infer/A.scala
index 5e0e268122..46b5391609 100644
--- a/test/files/buildmanager/infer/A.scala
+++ b/test/files/buildmanager/infer/A.scala
@@ -1,5 +1,5 @@
class Foo(flag: Boolean) {
- val classpath =
+ val classpath =
if (flag)
new AClasspath
else
diff --git a/test/files/buildmanager/overloaded_1/A.scala b/test/files/buildmanager/overloaded_1/A.scala
index c070faf978..33b63b8006 100644
--- a/test/files/buildmanager/overloaded_1/A.scala
+++ b/test/files/buildmanager/overloaded_1/A.scala
@@ -3,7 +3,7 @@ trait As {
override def foo = this /// Shouldn't cause the change
override def foo(act: List[D]) = this
}
-
+
abstract class D{
def foo: D = this
def foo(act: List[D]) = this
diff --git a/test/files/buildmanager/t2559/D.scala b/test/files/buildmanager/t2559/D.scala
index 4b8422db04..906b69a3e7 100644
--- a/test/files/buildmanager/t2559/D.scala
+++ b/test/files/buildmanager/t2559/D.scala
@@ -1,5 +1,5 @@
object D {
- def x(a: A) =
+ def x(a: A) =
a match {
case _: B => ()
case _: C => ()
diff --git a/test/files/buildmanager/t2562/A.scala b/test/files/buildmanager/t2562/A.scala
index 2208585eed..740cd1e868 100644
--- a/test/files/buildmanager/t2562/A.scala
+++ b/test/files/buildmanager/t2562/A.scala
@@ -1,6 +1,6 @@
object A
{
- def x0 = B.x0
+ def x0 = B.x0
def x1 = B.x1
def x2 = B.x2
def x3 = 3
diff --git a/test/files/buildmanager/t2562/B.scala b/test/files/buildmanager/t2562/B.scala
index 6f658954e1..a524e5cc84 100644
--- a/test/files/buildmanager/t2562/B.scala
+++ b/test/files/buildmanager/t2562/B.scala
@@ -1,6 +1,6 @@
object B
{
- def x0 = A.x1
+ def x0 = A.x1
def x1 = A.x2
def x2 = A.x3
}
diff --git a/test/files/buildmanager/t2562/t2562.changes/A2.scala b/test/files/buildmanager/t2562/t2562.changes/A2.scala
index 743609eb18..c560e1e816 100644
--- a/test/files/buildmanager/t2562/t2562.changes/A2.scala
+++ b/test/files/buildmanager/t2562/t2562.changes/A2.scala
@@ -1,6 +1,6 @@
object A
{
- def x0 = B.x0
+ def x0 = B.x0
def x1 = B.x1
def x2 = B.x2
def x3 = "3"
diff --git a/test/files/buildmanager/t3133/A.java b/test/files/buildmanager/t3133/A.java
index 9cf4d96bd4..c4e7f3af0e 100644
--- a/test/files/buildmanager/t3133/A.java
+++ b/test/files/buildmanager/t3133/A.java
@@ -1,7 +1,7 @@
public class A {
- class Foo {}
-
+ class Foo {}
+
public A(Foo a) {}
-
+
private void bar(Foo z) {}
}
diff --git a/test/files/continuations-neg/function0.scala b/test/files/continuations-neg/function0.scala
index 4112ee3835..6ef0d98b90 100644
--- a/test/files/continuations-neg/function0.scala
+++ b/test/files/continuations-neg/function0.scala
@@ -4,13 +4,13 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val f = () => shift { k: (Int=>Int) => k(7) }
val g: () => Int = f
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-neg/function2.scala b/test/files/continuations-neg/function2.scala
index ae0fda509d..402c6dcad8 100644
--- a/test/files/continuations-neg/function2.scala
+++ b/test/files/continuations-neg/function2.scala
@@ -4,13 +4,13 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val f = () => 7
val g: () => Int @cps[Int] = f
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-neg/function3.scala b/test/files/continuations-neg/function3.scala
index 0c3f1667e5..c4acc4c2e9 100644
--- a/test/files/continuations-neg/function3.scala
+++ b/test/files/continuations-neg/function3.scala
@@ -4,12 +4,12 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val g: () => Int = () => shift { k: (Int=>Int) => k(7) }
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-neg/infer0.scala b/test/files/continuations-neg/infer0.scala
index 894d5228b1..9cf69c5d35 100644
--- a/test/files/continuations-neg/infer0.scala
+++ b/test/files/continuations-neg/infer0.scala
@@ -4,11 +4,11 @@ import scala.util.continuations._
object Test {
-
+
def test(x: => Int @cpsParam[String,Int]) = 7
-
+
def main(args: Array[String]): Any = {
test(8)
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-neg/infer2.check b/test/files/continuations-neg/infer2.check
index d92bc9c572..59eb670bc3 100644
--- a/test/files/continuations-neg/infer2.check
+++ b/test/files/continuations-neg/infer2.check
@@ -1,4 +1,4 @@
infer2.scala:14: error: illegal answer type modification: scala.util.continuations.cpsParam[String,Int] andThen scala.util.continuations.cpsParam[String,Int]
- test { sym(); sym() }
+ test { sym(); sym() }
^
one error found
diff --git a/test/files/continuations-neg/infer2.scala b/test/files/continuations-neg/infer2.scala
index a890ac1fc4..eaffbc17fc 100644
--- a/test/files/continuations-neg/infer2.scala
+++ b/test/files/continuations-neg/infer2.scala
@@ -4,16 +4,16 @@ import scala.util.continuations._
object Test {
-
+
def test(x: => Int @cpsParam[String,Int]) = 7
-
+
def sym() = shift { k: (Int => String) => 9 }
-
-
+
+
def main(args: Array[String]): Any = {
- test { sym(); sym() }
+ test { sym(); sym() }
}
-
+
}
diff --git a/test/files/continuations-neg/lazy.scala b/test/files/continuations-neg/lazy.scala
index 3c8169dd46..a2fad83be8 100644
--- a/test/files/continuations-neg/lazy.scala
+++ b/test/files/continuations-neg/lazy.scala
@@ -1,16 +1,16 @@
-import scala.util.continuations._
-
-object Test {
+import scala.util.continuations._
+
+object Test {
def foo() = {
lazy val x = shift((k:Unit=>Unit)=>k())
println(x)
}
-
- def main(args: Array[String]) {
+
+ def main(args: Array[String]) {
reset {
foo()
}
- }
-
+ }
+
} \ No newline at end of file
diff --git a/test/files/continuations-neg/t2285.scala b/test/files/continuations-neg/t2285.scala
index f3c7f4c89c..b906dc455a 100644
--- a/test/files/continuations-neg/t2285.scala
+++ b/test/files/continuations-neg/t2285.scala
@@ -5,7 +5,7 @@ import scala.util.continuations._
object Test {
def bar() = shift { k: (String => String) => k("1") }
-
+
def foo() = reset { bar(); 7 }
-
+
}
diff --git a/test/files/continuations-neg/t2949.scala b/test/files/continuations-neg/t2949.scala
index ce27c7c0e8..2d426a4d89 100644
--- a/test/files/continuations-neg/t2949.scala
+++ b/test/files/continuations-neg/t2949.scala
@@ -8,7 +8,7 @@ object Test {
def reify[A, B](x : A @cpsParam[List[A], B]) = reset{ List(x) }
def main(args: Array[String]): Unit = println(reify {
- val x = reflect[Int, Int](List(1,2,3))
+ val x = reflect[Int, Int](List(1,2,3))
val y = reflect[Int, Int](List(2,4,8))
x * y
})
diff --git a/test/files/continuations-neg/t3628.scala b/test/files/continuations-neg/t3628.scala
index c56e7752c4..3fdd32a034 100644
--- a/test/files/continuations-neg/t3628.scala
+++ b/test/files/continuations-neg/t3628.scala
@@ -3,7 +3,7 @@ import scala.actors.Actor._
object Test {
val impl: Actor = actor {
loop {
- react {
+ react {
case 1 => impl ! 2
}
}
diff --git a/test/files/continuations-neg/trycatch2.scala b/test/files/continuations-neg/trycatch2.scala
index 761cee52ac..d61419169b 100644
--- a/test/files/continuations-neg/trycatch2.scala
+++ b/test/files/continuations-neg/trycatch2.scala
@@ -7,7 +7,7 @@ object Test {
def fatal[T]: T = throw new Exception
def cpsIntStringInt = shift { k:(Int=>String) => k(3); 7 }
def cpsIntIntString = shift { k:(Int=>Int) => k(3); "7" }
-
+
def foo1 = try {
fatal[Int]
cpsIntStringInt
diff --git a/test/files/continuations-run/basics.scala b/test/files/continuations-run/basics.scala
index 9df209b11c..b63710bc64 100755
--- a/test/files/continuations-run/basics.scala
+++ b/test/files/continuations-run/basics.scala
@@ -14,10 +14,10 @@ object Test {
}
def main(args: Array[String]) = {
-
+
println(reset(m0()))
println(reset(m1()))
-
+
}
-
+
}
diff --git a/test/files/continuations-run/function1.scala b/test/files/continuations-run/function1.scala
index 3b39722e3a..fbd413ed9d 100644
--- a/test/files/continuations-run/function1.scala
+++ b/test/files/continuations-run/function1.scala
@@ -4,13 +4,13 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val f = () => shift { k: (Int=>Int) => k(7) }
val g: () => Int @cps[Int] = f
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/function4.scala b/test/files/continuations-run/function4.scala
index b73eedb02c..2ccd0b4ff2 100644
--- a/test/files/continuations-run/function4.scala
+++ b/test/files/continuations-run/function4.scala
@@ -4,12 +4,12 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val g: () => Int @cps[Int] = () => shift { k: (Int=>Int) => k(7) }
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/function5.scala b/test/files/continuations-run/function5.scala
index a689ccf243..fe528e14e7 100644
--- a/test/files/continuations-run/function5.scala
+++ b/test/files/continuations-run/function5.scala
@@ -4,12 +4,12 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val g: () => Int @cps[Int] = () => 7
-
+
println(reset(g()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/function6.scala b/test/files/continuations-run/function6.scala
index 1a2792370a..54a6ffcc93 100644
--- a/test/files/continuations-run/function6.scala
+++ b/test/files/continuations-run/function6.scala
@@ -4,13 +4,13 @@ import scala.util.continuations._
object Test {
-
+
def main(args: Array[String]): Any = {
-
+
val g: PartialFunction[Int, Int @cps[Int]] = { case x => 7 }
-
+
println(reset(g(2)))
-
+
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/ifelse0.scala b/test/files/continuations-run/ifelse0.scala
index e34b86ee84..2facab4b98 100644
--- a/test/files/continuations-run/ifelse0.scala
+++ b/test/files/continuations-run/ifelse0.scala
@@ -4,15 +4,15 @@ import scala.util.continuations._
object Test {
-
+
def test(x:Int) = if (x <= 7)
shift { k: (Int=>Int) => k(k(k(x))) }
else
shift { k: (Int=>Int) => k(x) }
-
+
def main(args: Array[String]): Any = {
println(reset(1 + test(7)))
println(reset(1 + test(8)))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/ifelse1.scala b/test/files/continuations-run/ifelse1.scala
index 2ccc1ed730..c624b84b75 100644
--- a/test/files/continuations-run/ifelse1.scala
+++ b/test/files/continuations-run/ifelse1.scala
@@ -4,12 +4,12 @@ import scala.util.continuations._
object Test {
-
+
def test1(x:Int) = if (x <= 7)
shift { k: (Int=>Int) => k(k(k(x))) }
else
x
-
+
def test2(x:Int) = if (x <= 7)
x
else
@@ -21,5 +21,5 @@ object Test {
println(reset(1 + test2(7)))
println(reset(1 + test2(8)))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/ifelse2.scala b/test/files/continuations-run/ifelse2.scala
index 536e350190..506acc4d00 100644
--- a/test/files/continuations-run/ifelse2.scala
+++ b/test/files/continuations-run/ifelse2.scala
@@ -4,13 +4,13 @@ import scala.util.continuations._
object Test {
-
+
def test(x:Int) = if (x <= 7)
shift { k: (Unit=>Unit) => println("abort") }
-
+
def main(args: Array[String]): Any = {
println(reset{ test(7); println("alive") })
println(reset{ test(8); println("alive") })
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/ifelse3.scala b/test/files/continuations-run/ifelse3.scala
index 5dbd079d1c..54566a421c 100644
--- a/test/files/continuations-run/ifelse3.scala
+++ b/test/files/continuations-run/ifelse3.scala
@@ -4,18 +4,18 @@ import scala.util.continuations._
object Test {
-
+
def util(x: Boolean) = shift { k: (Boolean=>Int) => k(x) }
-
+
def test(x:Int) = if (util(x <= 7))
x - 1
else
x + 1
-
-
+
+
def main(args: Array[String]): Any = {
println(reset(test(7)))
println(reset(test(8)))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/infer1.scala b/test/files/continuations-run/infer1.scala
index a6c6c07215..10822508e7 100644
--- a/test/files/continuations-run/infer1.scala
+++ b/test/files/continuations-run/infer1.scala
@@ -4,9 +4,9 @@ import scala.util.continuations._
object Test {
-
+
def test(x: => Int @cpsParam[String,Int]) = 7
-
+
def test2() = {
val x = shift { k: (Int => String) => 9 }
x
@@ -14,9 +14,9 @@ object Test {
def test3(x: => Int @cpsParam[Int,Int]) = 7
-
+
def util() = shift { k: (String => String) => "7" }
-
+
def main(args: Array[String]): Any = {
test { shift { k: (Int => String) => 9 } }
test { shift { k: (Int => String) => 9 }; 2 }
@@ -29,5 +29,5 @@ object Test {
test3 { { test3(0); 2 } }
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/match0.scala b/test/files/continuations-run/match0.scala
index bd36238d7f..b65d343c07 100644
--- a/test/files/continuations-run/match0.scala
+++ b/test/files/continuations-run/match0.scala
@@ -4,15 +4,15 @@ import scala.util.continuations._
object Test {
-
+
def test(x:Int) = x match {
case 7 => shift { k: (Int=>Int) => k(k(k(x))) }
case 8 => shift { k: (Int=>Int) => k(x) }
}
-
+
def main(args: Array[String]): Any = {
println(reset(1 + test(7)))
println(reset(1 + test(8)))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/match1.scala b/test/files/continuations-run/match1.scala
index ea4e219666..20671f26ba 100644
--- a/test/files/continuations-run/match1.scala
+++ b/test/files/continuations-run/match1.scala
@@ -4,15 +4,15 @@ import scala.util.continuations._
object Test {
-
+
def test(x:Int) = x match {
case 7 => shift { k: (Int=>Int) => k(k(k(x))) }
case _ => x
}
-
+
def main(args: Array[String]): Any = {
println(reset(1 + test(7)))
println(reset(1 + test(8)))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/match2.scala b/test/files/continuations-run/match2.scala
index 8d4f04870f..8b0fb946df 100644
--- a/test/files/continuations-run/match2.scala
+++ b/test/files/continuations-run/match2.scala
@@ -4,23 +4,23 @@ import scala.util.continuations._
object Test {
-
+
def test1() = {
val (a, b) = shift { k: (((String,String)) => String) => k("A","B") }
b
}
case class Elem[T,U](a: T, b: U)
-
+
def test2() = {
val Elem(a,b) = shift { k: (Elem[String,String] => String) => k(Elem("A","B")) }
b
}
-
+
def main(args: Array[String]): Any = {
println(reset(test1()))
println(reset(test2()))
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/t3199.scala b/test/files/continuations-run/t3199.scala
index 3fd2f1959a..7b54793e05 100644
--- a/test/files/continuations-run/t3199.scala
+++ b/test/files/continuations-run/t3199.scala
@@ -1,20 +1,20 @@
-import _root_.scala.collection.Seq
-import _root_.scala.util.control.Exception
-import _root_.scala.util.continuations._
-
-object Test {
-
- trait AbstractResource[+R <: AnyRef] {
- def reflect[B] : R @cpsParam[B,Either[Throwable, B]] = shift(acquireFor)
- def acquireFor[B](f : R => B) : Either[Throwable, B] = {
- import Exception._
- catching(List(classOf[Throwable]) : _*) either (f(null.asInstanceOf[R]))
- }
- }
-
- def main(args: Array[String]) : Unit = {
- val x = new AbstractResource[String] { }
- val result = x.acquireFor( x => 7 )
- println(result)
- }
- }
+import _root_.scala.collection.Seq
+import _root_.scala.util.control.Exception
+import _root_.scala.util.continuations._
+
+object Test {
+
+ trait AbstractResource[+R <: AnyRef] {
+ def reflect[B] : R @cpsParam[B,Either[Throwable, B]] = shift(acquireFor)
+ def acquireFor[B](f : R => B) : Either[Throwable, B] = {
+ import Exception._
+ catching(List(classOf[Throwable]) : _*) either (f(null.asInstanceOf[R]))
+ }
+ }
+
+ def main(args: Array[String]) : Unit = {
+ val x = new AbstractResource[String] { }
+ val result = x.acquireFor( x => 7 )
+ println(result)
+ }
+ }
diff --git a/test/files/continuations-run/t3199b.scala b/test/files/continuations-run/t3199b.scala
index 950c584153..2122c963ac 100644
--- a/test/files/continuations-run/t3199b.scala
+++ b/test/files/continuations-run/t3199b.scala
@@ -1,11 +1,11 @@
object Test {
-
+
def test() = {
java.util.Arrays.asList(Array(1,2,3):_*)
}
-
+
def main(args: Array[String]) = {
println(test())
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/t3223.scala b/test/files/continuations-run/t3223.scala
index 4e510178e6..efed1ff581 100644
--- a/test/files/continuations-run/t3223.scala
+++ b/test/files/continuations-run/t3223.scala
@@ -2,16 +2,16 @@ import scala.util.continuations._
object Test {
def foo(x:Int) = {
- try {
+ try {
throw new Exception
shiftUnit0[Int,Int](7)
} catch {
- case ex =>
+ case ex =>
val g = (a:Int)=>a
9
}
}
-
+
def main(args: Array[String]) {
println(reset(foo(0)))
}
diff --git a/test/files/continuations-run/t3225.scala b/test/files/continuations-run/t3225.scala
index ecfde279cf..5b6259c43f 100644
--- a/test/files/continuations-run/t3225.scala
+++ b/test/files/continuations-run/t3225.scala
@@ -31,10 +31,10 @@ object Test {
}
def blaX[A] = shift { k:(Bla=>A) => k(new Bla) }
-
+
def fooX[A] = blaX[A].x
def fooY[A] = blaX[A].y[A]
-
+
def testPoly() = {
println(reset(blaX[Bla]).x)
println(reset(blaX[Int].x))
@@ -52,5 +52,5 @@ object Test {
testMono()
testPoly()
}
-
+
}
diff --git a/test/files/continuations-run/trycatch0.scala b/test/files/continuations-run/trycatch0.scala
index 74a078b5ef..ec39863f3f 100644
--- a/test/files/continuations-run/trycatch0.scala
+++ b/test/files/continuations-run/trycatch0.scala
@@ -3,7 +3,7 @@
import scala.util.continuations._
object Test {
-
+
def foo = try {
shift((k: Int=>Int) => k(7))
} catch {
@@ -17,7 +17,7 @@ object Test {
case ex =>
shiftUnit0[Int,Int](9)
}
-
+
def main(args: Array[String]): Unit = {
println(reset { foo + 3 })
println(reset { bar + 3 })
diff --git a/test/files/continuations-run/trycatch1.scala b/test/files/continuations-run/trycatch1.scala
index ade13794e3..10dfd30bb2 100644
--- a/test/files/continuations-run/trycatch1.scala
+++ b/test/files/continuations-run/trycatch1.scala
@@ -5,7 +5,7 @@ import scala.util.continuations._
object Test {
def fatal: Int = throw new Exception()
-
+
def foo1 = try {
fatal
shift((k: Int=>Int) => k(7))
diff --git a/test/files/continuations-run/while0.scala b/test/files/continuations-run/while0.scala
index 9735f9d2c3..46005a4a77 100644
--- a/test/files/continuations-run/while0.scala
+++ b/test/files/continuations-run/while0.scala
@@ -4,9 +4,9 @@ import scala.util.continuations._
object Test {
-
+
def foo(): Int @cps[Unit] = 2
-
+
def test(): Unit @cps[Unit] = {
var x = 0
while (x < 9000) { // pick number large enough to require tail-call opt
@@ -18,5 +18,5 @@ object Test {
def main(args: Array[String]): Any = {
reset(test())
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/while1.scala b/test/files/continuations-run/while1.scala
index fb5dc0079a..fd41ab36ee 100644
--- a/test/files/continuations-run/while1.scala
+++ b/test/files/continuations-run/while1.scala
@@ -4,9 +4,9 @@ import scala.util.continuations._
object Test {
-
+
def foo(): Int @cps[Unit] = shift { k => println("up"); k(2); println("down") }
-
+
def test(): Unit @cps[Unit] = {
var x = 0
while (x < 9) {
@@ -18,5 +18,5 @@ object Test {
def main(args: Array[String]): Any = {
reset(test())
}
-
+
} \ No newline at end of file
diff --git a/test/files/continuations-run/while2.scala b/test/files/continuations-run/while2.scala
index f36288929e..63f9cb99fe 100644
--- a/test/files/continuations-run/while2.scala
+++ b/test/files/continuations-run/while2.scala
@@ -4,10 +4,10 @@ import scala.util.continuations._
object Test {
-
+
def foo1(): Int @cps[Unit] = 2
def foo2(): Int @cps[Unit] = shift { k => println("up"); k(2); println("down") }
-
+
def test(): Unit @cps[Unit] = {
var x = 0
while (x < 9000) { // pick number large enough to require tail-call opt
@@ -19,5 +19,5 @@ object Test {
def main(args: Array[String]): Any = {
reset(test())
}
-
+
} \ No newline at end of file
diff --git a/test/files/detach-run/actor/actor.scala b/test/files/detach-run/actor/actor.scala
index 18a6dc38fd..23a10d6982 100644
--- a/test/files/detach-run/actor/actor.scala
+++ b/test/files/detach-run/actor/actor.scala
@@ -115,7 +115,7 @@ object Env {
}
in.close()
} catch {
- case e: FileNotFoundException => println(e)
+ case e: FileNotFoundException => println(e)
})
out.close()
}
diff --git a/test/files/jvm/actor-sync-send-timeout.scala b/test/files/jvm/actor-sync-send-timeout.scala
index ed330900b2..21e624bd0a 100644
--- a/test/files/jvm/actor-sync-send-timeout.scala
+++ b/test/files/jvm/actor-sync-send-timeout.scala
@@ -2,9 +2,9 @@ import scala.actors.Actor
/* This test is a regression test for SI-4759.
*/
-object Test {
+object Test {
val Runs = 5
-
+
def main(args: Array[String]) = {
var i = 0
while (i < Runs) {
diff --git a/test/files/jvm/actor-uncaught-exception.scala b/test/files/jvm/actor-uncaught-exception.scala
index 882362272d..5ae66de640 100644
--- a/test/files/jvm/actor-uncaught-exception.scala
+++ b/test/files/jvm/actor-uncaught-exception.scala
@@ -4,60 +4,60 @@ class MyException(msg: String) extends Exception(msg) {
override def fillInStackTrace() = this
}
-object Test {
+object Test {
- case object StartError extends Actor {
- def act() {
+ case object StartError extends Actor {
+ def act() {
try {
- throw new MyException("I don't want to run!")
+ throw new MyException("I don't want to run!")
} catch {
case e: Throwable if (!e.isInstanceOf[scala.util.control.ControlThrowable] &&
!e.isInstanceOf[MyException]) =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- case object MessageError extends Actor {
- def act() {
+ case object MessageError extends Actor {
+ def act() {
try {
- react {
- case _ => throw new MyException("No message for me!")
- }
+ react {
+ case _ => throw new MyException("No message for me!")
+ }
} catch {
case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- case object Supervisor extends Actor {
- def act() {
+ case object Supervisor extends Actor {
+ def act() {
try {
- trapExit = true
+ trapExit = true
link(StartError)
link(MessageError)
- StartError.start()
+ StartError.start()
MessageError.start()
- Actor.loop {
- react {
+ Actor.loop {
+ react {
case Exit(actor, reason) =>
println("OK")
if (actor == StartError)
MessageError ! 'ping
else
exit()
- }
- }
+ }
+ }
} catch {
case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- def main(args: Array[String]) {
- Supervisor.start()
- }
-}
+ def main(args: Array[String]) {
+ Supervisor.start()
+ }
+}
diff --git a/test/files/jvm/actor-uncaught-exception2.scala b/test/files/jvm/actor-uncaught-exception2.scala
index 36b6f0c52e..0364cbeb03 100644
--- a/test/files/jvm/actor-uncaught-exception2.scala
+++ b/test/files/jvm/actor-uncaught-exception2.scala
@@ -4,60 +4,60 @@ class MyException(msg: String) extends Exception(msg) {
override def fillInStackTrace() = this
}
-object Test {
+object Test {
- case object StartError extends Actor {
- def act() {
+ case object StartError extends Actor {
+ def act() {
try {
- throw new MyException("I don't want to run!")
+ throw new MyException("I don't want to run!")
} catch {
case e: Throwable if (!e.isInstanceOf[scala.util.control.ControlThrowable] &&
!e.isInstanceOf[MyException]) =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- case object MessageError extends Actor {
- def act() {
+ case object MessageError extends Actor {
+ def act() {
try {
- react {
- case _ => throw new MyException("No message for me!")
- }
+ react {
+ case _ => throw new MyException("No message for me!")
+ }
} catch {
case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- case object Supervisor extends Actor {
- def act() {
+ case object Supervisor extends Actor {
+ def act() {
try {
- trapExit = true
+ trapExit = true
link(StartError)
link(MessageError)
- StartError.start()
+ StartError.start()
MessageError.start()
- Actor.loop {
- react {
+ Actor.loop {
+ react {
case Exit(actor, reason) =>
println(reason)
if (actor == StartError)
MessageError ! 'ping
else
exit()
- }
- }
+ }
+ }
} catch {
case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
e.printStackTrace()
}
- }
- }
+ }
+ }
- def main(args: Array[String]) {
- Supervisor.start()
- }
-}
+ def main(args: Array[String]) {
+ Supervisor.start()
+ }
+}
diff --git a/test/files/jvm/backendBugUnapply.scala b/test/files/jvm/backendBugUnapply.scala
index b4d029f478..45ee6f7d4f 100644
--- a/test/files/jvm/backendBugUnapply.scala
+++ b/test/files/jvm/backendBugUnapply.scala
@@ -1,16 +1,16 @@
-object Test {
+object Test {
import scala.xml.{Node,UnprefixedAttribute}
-
+
def domatch(x:Node) =
x match {
case Node("foo", UnprefixedAttribute("bar", z, _), _*) => z
case _ => null
}
-
+
def main(args: Array[String]): Unit = {
println(domatch(<foo bar="baz"><hi/></foo>))
println(domatch(<foo bingo="donkey"><hi/></foo>))
- //
+ //
// assert(domatch(<foo bar="baz"><hi/></foo>).toString == "baz")
// assert(domatch(<foo bar="baz2"><hi/></foo>) == null)//, domatch(<foo bar="baz2"><hi/></foo>))
}
diff --git a/test/files/jvm/console.scala b/test/files/jvm/console.scala
index 0ac43f2d26..75449416aa 100644
--- a/test/files/jvm/console.scala
+++ b/test/files/jvm/console.scala
@@ -9,6 +9,6 @@ object Test extends App {
flush
println("..")
println(1)
- printf("Argument nr. %d has value %1.2f\n",
+ printf("Argument nr. %d has value %1.2f\n",
1, 10.0/3)
}
diff --git a/test/files/jvm/deprecation/Test_1.scala b/test/files/jvm/deprecation/Test_1.scala
index 0a5b607037..b68a40c94b 100644
--- a/test/files/jvm/deprecation/Test_1.scala
+++ b/test/files/jvm/deprecation/Test_1.scala
@@ -7,7 +7,7 @@ class Test {
val i = new d.Inner
val w = i.buz()
}
-
+
@deprecated("no longer!", "") class Inner {
@deprecated("uncool", "") def f: Int = 1
@deprecated("this one as well!", "") var g = -1
diff --git a/test/files/jvm/future-termination.scala b/test/files/jvm/future-termination.scala
index 688de60c3b..f51642cb7a 100644
--- a/test/files/jvm/future-termination.scala
+++ b/test/files/jvm/future-termination.scala
@@ -1,19 +1,19 @@
-import scala.actors.Futures
-
-/* Test that unevaluated futures do not prevent program termination */
-
-object Test {
- def main(args: Array[String]) {
+import scala.actors.Futures
+
+/* Test that unevaluated futures do not prevent program termination */
+
+object Test {
+ def main(args: Array[String]) {
try {
- val meaningOfLife = Futures.future {
- Thread.sleep(5000) // pretend this is a harder problem than it is
- println("I have the answer!")
- 42
- }
- println("I can't wait that long, bye.")
+ val meaningOfLife = Futures.future {
+ Thread.sleep(5000) // pretend this is a harder problem than it is
+ println("I have the answer!")
+ 42
+ }
+ println("I can't wait that long, bye.")
} catch {
case e: Throwable if !e.isInstanceOf[scala.util.control.ControlThrowable] =>
e.printStackTrace()
}
- }
+ }
}
diff --git a/test/files/jvm/inner.scala b/test/files/jvm/inner.scala
index d0d2226de6..156d9e69a8 100644
--- a/test/files/jvm/inner.scala
+++ b/test/files/jvm/inner.scala
@@ -14,7 +14,7 @@ class A {
trait Itf {
def method1(x: Int): Int
-
+
trait Itf2 extends Itf {
def method2: Unit
}
diff --git a/test/files/jvm/interpreter.check b/test/files/jvm/interpreter.check
index ede74fb26f..607e2bcaff 100644
--- a/test/files/jvm/interpreter.check
+++ b/test/files/jvm/interpreter.check
@@ -73,7 +73,7 @@ fish: S = fish
scala> // Test that arrays pretty print nicely.
-scala> val arr = Array("What's", "up", "doc?")
+scala> val arr = Array("What's", "up", "doc?")
arr: Array[String] = Array(What's, up, doc?)
scala> // Test that arrays pretty print nicely, even when we give them type Any
@@ -338,10 +338,10 @@ You typed two blank lines. Starting a new command.
scala> // defining and using quoted names should work (ticket #323)
-scala> def `match` = 1
+scala> def `match` = 1
match: Int
-scala> val x = `match`
+scala> val x = `match`
x: Int = 1
scala>
diff --git a/test/files/jvm/interpreter.scala b/test/files/jvm/interpreter.scala
index 752a129950..f0bc8b5818 100644
--- a/test/files/jvm/interpreter.scala
+++ b/test/files/jvm/interpreter.scala
@@ -29,7 +29,7 @@ val atom = new scala.xml.Atom()
class S(override val toString : String)
val fish = new S("fish")
// Test that arrays pretty print nicely.
-val arr = Array("What's", "up", "doc?")
+val arr = Array("What's", "up", "doc?")
// Test that arrays pretty print nicely, even when we give them type Any
val arrInt : Any = Array(1,2,3)
// Test that nested arrays are pretty-printed correctly
@@ -132,8 +132,8 @@ there
// defining and using quoted names should work (ticket #323)
-def `match` = 1
-val x = `match`
+def `match` = 1
+val x = `match`
// multiple classes defined on one line
sealed class Exp; class Fact extends Exp; class Term extends Exp
@@ -153,6 +153,6 @@ def f(e: Exp) = e match {{ // non-exhaustive warning here
interp.interpret("\"after reset\"")
interp.interpret("plusOne(5) // should be undefined now")
}
-
+
appendix()
}
diff --git a/test/files/jvm/methvsfield.java b/test/files/jvm/methvsfield.java
index dadc98669a..c1b2b87b48 100644
--- a/test/files/jvm/methvsfield.java
+++ b/test/files/jvm/methvsfield.java
@@ -1,11 +1,11 @@
// This should be compiled with javac and saved
// in ../lib/methvsfield.jar .
-class MethVsField
+class MethVsField
{
int three = 3;
- int three()
- {
+ int three()
+ {
return 3;
}
}
diff --git a/test/files/jvm/natives.scala b/test/files/jvm/natives.scala
index 14ee4e1c1b..ba868dc85e 100644
--- a/test/files/jvm/natives.scala
+++ b/test/files/jvm/natives.scala
@@ -1,16 +1,16 @@
object Test {
//println("java.library.path=" + System.getProperty("java.library.path"))
-
+
val sysWordSize = System.getProperty("sun.arch.data.model", "32")
val sysType = System.getProperty("os.name")
-
+
val libName =
if (sysType == "Mac OS X")
"natives"
else
"natives-" + sysWordSize
-
+
System.loadLibrary(libName)
@native
diff --git a/test/files/jvm/protectedacc.scala b/test/files/jvm/protectedacc.scala
index 89e70b90d8..f213e0da19 100644
--- a/test/files/jvm/protectedacc.scala
+++ b/test/files/jvm/protectedacc.scala
@@ -16,7 +16,7 @@ object Test {
val ji = new p.b.JavaInteraction(Array('a', 'b', 'c'));
(new ji.Inner).m;
-
+
(new p.b.OuterObj.Inner).m
}
}
@@ -36,13 +36,13 @@ package p {
def getA: this.type = this;
}
-
+
/** Test type members */
trait HighlighterXXX {
type Node;
protected def highlight(node : Node) : Unit;
}
-
+
/** Test type parameters */
abstract class PolyA[a] {
protected def m(x: a): Unit;
@@ -119,22 +119,22 @@ package p {
val inc = meth2(1)_;
Console.println("100 = " + inc("10"));
-
+
getA.x;
}
}
}
-
+
trait ScalaAutoEditXXX extends HighlighterXXX {
- trait NodeImpl {
+ trait NodeImpl {
def self : Node;
highlight(self);
}
}
-
+
abstract class X[T] extends PolyA[T] {
- trait Inner extends B {
+ trait Inner extends B {
def self: T;
def self2: Node;
def getB: Inner;
diff --git a/test/files/jvm/serialization.scala b/test/files/jvm/serialization.scala
index af842f3e78..9391b60e46 100644
--- a/test/files/jvm/serialization.scala
+++ b/test/files/jvm/serialization.scala
@@ -295,7 +295,7 @@ object Test3_mutable {
ab1 ++= List("one", "two")
val _ab1: ArrayBuffer[String] = read(write(ab1))
check(ab1, _ab1)
-
+
// ArrayBuilder
val abu1 = ArrayBuilder.make[Long]
val _abu1: ArrayBuilder[ClassManifest[Long]] = read(write(abu1))
@@ -304,12 +304,12 @@ object Test3_mutable {
val abu2 = ArrayBuilder.make[Float]
val _abu2: ArrayBuilder[ClassManifest[Float]] = read(write(abu2))
check(abu2, _abu2)
-
+
// ArraySeq
val aq1 = ArraySeq(1, 2, 3)
val _aq1: ArraySeq[Int] = read(write(aq1))
check(aq1, _aq1)
-
+
// ArrayStack
val as1 = new ArrayStack[Int]
as1 ++= List(20, 2, 3).iterator
@@ -537,7 +537,7 @@ class WithTransient extends Serializable {
@transient private lazy val a2 = 2
@transient object B extends Serializable
@transient private object C extends Serializable
-
+
def test = {
println(a1)
println(a2)
@@ -583,50 +583,50 @@ object Test {
// Test classes in package "scala.collection.parallel" and subpackages
object Test9_parallel {
import scala.collection.parallel._
-
+
try {
println()
-
+
// UnrolledBuffer
val ub = new collection.mutable.UnrolledBuffer[String]
ub ++= List("one", "two")
val _ub: collection.mutable.UnrolledBuffer[String] = read(write(ub))
check(ub, _ub)
-
+
// mutable.ParArray
val pa = mutable.ParArray("abc", "def", "etc")
val _pa: mutable.ParArray[String] = read(write(pa))
check(pa, _pa)
-
+
// mutable.ParHashMap
val mpm = mutable.ParHashMap(1 -> 2, 2 -> 4)
val _mpm: mutable.ParHashMap[Int, Int] = read(write(mpm))
check(mpm, _mpm)
-
+
// mutable.ParHashSet
val mps = mutable.ParHashSet(1, 2, 3)
val _mps: mutable.ParHashSet[Int] = read(write(mps))
check(mps, _mps)
-
+
// immutable.ParRange
val pr1 = immutable.ParRange(0, 4, 1, true)
val _pr1: immutable.ParRange = read(write(pr1))
check(pr1, _pr1)
-
+
val pr2 = immutable.ParRange(0, 4, 1, false)
val _pr2: immutable.ParRange = read(write(pr2))
check(pr2, _pr2)
-
+
// immutable.ParHashMap
val ipm = immutable.ParHashMap(5 -> 1, 10 -> 2)
val _ipm: immutable.ParHashMap[Int, Int] = read(write(ipm))
check(ipm, _ipm)
-
+
// immutable.ParHashSet
val ips = immutable.ParHashSet("one", "two")
val _ips: immutable.ParHashSet[String] = read(write(ips))
check(ips, _ips)
-
+
} catch {
case e: Exception =>
println("Error in Test5_parallel: " + e)
diff --git a/test/files/jvm/t1461.scala b/test/files/jvm/t1461.scala
index f0e3cea6cd..a963ec6a12 100644
--- a/test/files/jvm/t1461.scala
+++ b/test/files/jvm/t1461.scala
@@ -3,7 +3,7 @@ object Test {
def main(args: Array[String]) {
val jl = classOf[Foo].getMethod("jl", classOf[Baz[_]])
jl.getGenericParameterTypes // works fine
-
+
val l = classOf[Foo].getMethod("l", classOf[Baz[_]])
// By debugger inspection l.signature is (Ltest/Baz<J>;)V
l.getGenericParameterTypes // throws GenericSignatureFormatError
diff --git a/test/files/jvm/t1464/MyTrait.scala b/test/files/jvm/t1464/MyTrait.scala
index 0b8ccc412b..014ddf86c3 100644
--- a/test/files/jvm/t1464/MyTrait.scala
+++ b/test/files/jvm/t1464/MyTrait.scala
@@ -1,5 +1,5 @@
trait MyTrait {
type K
def findChildByClass[T <: K with MyTrait]: Unit
-
+
}
diff --git a/test/files/jvm/t1600.scala b/test/files/jvm/t1600.scala
index 79391b7e76..7e23687425 100644
--- a/test/files/jvm/t1600.scala
+++ b/test/files/jvm/t1600.scala
@@ -4,23 +4,23 @@
* changes on deserialization.
*/
object Test {
-
+
import collection._
def main(args: Array[String]) {
for (i <- Seq(0, 1, 2, 10, 100)) {
def entries = (0 until i).map(i => (new Foo, i)).toList
def elements = entries.map(_._1)
-
+
val maps = Seq[Map[Foo, Int]](new mutable.HashMap, new mutable.LinkedHashMap,
immutable.HashMap.empty).map(_ ++ entries)
test[Map[Foo, Int]](maps, entries.size, assertMap _)
-
+
val sets = Seq[Set[Foo]](new mutable.HashSet, new mutable.LinkedHashSet,
immutable.HashSet.empty).map(_ ++ elements)
test[Set[Foo]](sets, entries.size, assertSet _)
}
}
-
+
private def test[A <: AnyRef](collections: Seq[A], expectedSize: Int, assertFunction: (A, Int) => Unit) {
for (collection <- collections) {
assertFunction(collection, expectedSize)
@@ -28,19 +28,19 @@ object Test {
val bytes = toBytes(collection)
Foo.hashCodeModifier = 1
val deserializedCollection = toObject[A](bytes)
-
+
assertFunction(deserializedCollection, expectedSize)
assert(deserializedCollection.getClass == collection.getClass,
"collection class should remain the same after deserialization ("+deserializedCollection.getClass+" != "+collection.getClass+")")
Foo.hashCodeModifier = 0
}
}
-
+
private def toObject[A](bytes: Array[Byte]): A = {
val in = new java.io.ObjectInputStream(new java.io.ByteArrayInputStream(bytes))
in.readObject.asInstanceOf[A]
}
-
+
private def toBytes(o: AnyRef): Array[Byte] = {
val bos = new java.io.ByteArrayOutputStream
val out = new java.io.ObjectOutputStream(bos)
@@ -48,7 +48,7 @@ object Test {
out.close
bos.toByteArray
}
-
+
private def assertMap[A, B](map: Map[A, B], expectedSize: Int) {
assert(expectedSize == map.size, "expected map size: " + expectedSize + ", actual size: " + map.size)
map.foreach { case (k, v) =>
@@ -56,19 +56,19 @@ object Test {
assert(map(k) == v)
}
}
-
+
private def assertSet[A](set: Set[A], expectedSize: Int) {
assert(expectedSize == set.size, "expected set size: " + expectedSize + ", actual size: " + set.size)
set.foreach { e => assert(set.contains(e), "contains should return true for element in the set, element: " + e) }
}
-
+
object Foo {
- /* Used to simulate a hashCode change caused by deserializing an instance with an
+ /* Used to simulate a hashCode change caused by deserializing an instance with an
* identity-based hashCode in another JVM.
*/
var hashCodeModifier = 0
}
-
+
@serializable
class Foo {
override def hashCode = System.identityHashCode(this) + Foo.hashCodeModifier
diff --git a/test/files/jvm/t2570/Test.scala b/test/files/jvm/t2570/Test.scala
index d7b7632e22..7944aedae6 100644
--- a/test/files/jvm/t2570/Test.scala
+++ b/test/files/jvm/t2570/Test.scala
@@ -1,3 +1,3 @@
class Test2 extends Test1[Test3[Test4]]
class Test4
-object Test extends Application {} \ No newline at end of file
+object Test extends Application {} \ No newline at end of file
diff --git a/test/files/jvm/t3003/Test_1.scala b/test/files/jvm/t3003/Test_1.scala
index 8ec08bebc6..38af66a25a 100644
--- a/test/files/jvm/t3003/Test_1.scala
+++ b/test/files/jvm/t3003/Test_1.scala
@@ -9,7 +9,7 @@ object Test {
. map(f => f.getAnnotations.toList)
. filterNot (_.isEmpty) // there are extra fields under -Xcheckinit
)
-
+
println(xs)
}
}
diff --git a/test/files/jvm/t560bis.scala b/test/files/jvm/t560bis.scala
index 13bf4b1ae0..b04303c8a0 100644
--- a/test/files/jvm/t560bis.scala
+++ b/test/files/jvm/t560bis.scala
@@ -5,14 +5,14 @@ import scala.xml._;
case Seq(a,b,c,d @ _*) => Console.println("cool!")
case _ => Console.println("bah")
}
- def foo(args: List[String]) =
+ def foo(args: List[String]) =
Elem(null,"bla",Null, TopScope, (args map {x => Text(x)}):_*) match {
case Elem(_,_,_,_,Text("1"),_*) =>
Console.println("cool!")
case _ =>
Console.println("bah")
}
-
+
def main(args: Array[String]) = {
val li = List("1","2","3","4")
bar(li)
diff --git a/test/files/jvm/throws-annot.scala b/test/files/jvm/throws-annot.scala
index 90b58b9976..b679b6c121 100644
--- a/test/files/jvm/throws-annot.scala
+++ b/test/files/jvm/throws-annot.scala
@@ -43,24 +43,24 @@ object TestThrows {
/** Test the top-level mirror that is has the annotations. */
object TL {
-
+
@throws(classOf[IOException])
def read(): Int = 0
-
+
@throws(classOf[ClassCastException])
@throws(classOf[IOException])
def readWith2(): Int = 0
-
+
@throws(classOf[IOException])
@Deprecated
@throws(classOf[NullPointerException])
def readMixed(): Int = 0
-
+
@Deprecated
@throws(classOf[IOException])
@throws(classOf[NullPointerException])
def readMixed2(): Int = 0
-
+
@Deprecated
def readNoEx(): Int = 0
}
diff --git a/test/files/jvm/typerep.scala b/test/files/jvm/typerep.scala
index e56b63bafc..49a216c05c 100644
--- a/test/files/jvm/typerep.scala
+++ b/test/files/jvm/typerep.scala
@@ -109,7 +109,7 @@ object testFuncs {
def f5(f: Int => Int, x: Int) = f(x)
println(getType(f5 _))
println(getType(f5(f1, 1)))
- println
+ println
}
class Foo {
diff --git a/test/files/jvm/unittest_io_Jvm.check b/test/files/jvm/unittest_io_Jvm.check
index bcfce8cbdb..d6e855f939 100644
--- a/test/files/jvm/unittest_io_Jvm.check
+++ b/test/files/jvm/unittest_io_Jvm.check
@@ -1,5 +1,5 @@
lines.size = 5
-
+
This is a file
it is split on several lines.
diff --git a/test/files/jvm/unittest_io_Jvm.scala b/test/files/jvm/unittest_io_Jvm.scala
index 7c8ef131bc..1484774fb3 100644
--- a/test/files/jvm/unittest_io_Jvm.scala
+++ b/test/files/jvm/unittest_io_Jvm.scala
@@ -3,7 +3,7 @@ import scala.io.Source
object Test {
def main(args: Array[String]) {
val lines = Source.fromString(
- """|
+ """|
|This is a file
|it is split on several lines.
|
diff --git a/test/files/jvm/unittest_xml.scala b/test/files/jvm/unittest_xml.scala
index 7163ce2d88..c03695f5c6 100644
--- a/test/files/jvm/unittest_xml.scala
+++ b/test/files/jvm/unittest_xml.scala
@@ -24,8 +24,8 @@ object Test {
var x: MetaData = Null
var s: NamespaceBinding = TopScope
- // testing method def apply(uri:String, scp:NamespaceBinding, k:String): Seq[Node]
- // def apply(k:String): Seq[Node]
+ // testing method def apply(uri:String, scp:NamespaceBinding, k:String): Seq[Node]
+ // def apply(k:String): Seq[Node]
assert(null == x("za://foo.com", s, "bar" ), "absent element (prefixed) 1")
assert(null == x("bar"), "absent element (unprefix) 1")
@@ -53,8 +53,8 @@ object Test {
val z = <foo bar="gar"/>
val z2 = <foo/>
- assert(Text("gar") == domatch(z), "attribute extractor 1")
- assert(new Atom(3) == domatch(z2), "attribute extractor 2")
+ assert(Text("gar") == domatch(z), "attribute extractor 1")
+ assert(new Atom(3) == domatch(z2), "attribute extractor 2")
}
}
diff --git a/test/files/jvm/varargs/JavaClass.java b/test/files/jvm/varargs/JavaClass.java
index 9851e1b78b..536e9a38fb 100644
--- a/test/files/jvm/varargs/JavaClass.java
+++ b/test/files/jvm/varargs/JavaClass.java
@@ -4,7 +4,7 @@
public class JavaClass {
public static <T> void varargz(int i, T... v) {
}
-
+
public static void callSomeAnnotations() {
VaClass va = new VaClass();
va.vs(4, "", "", "");
diff --git a/test/files/jvm/varargs/VaClass.scala b/test/files/jvm/varargs/VaClass.scala
index 6343f9c6f6..8e9cbdbb3f 100644
--- a/test/files/jvm/varargs/VaClass.scala
+++ b/test/files/jvm/varargs/VaClass.scala
@@ -5,9 +5,9 @@ import annotation.varargs
class VaClass {
-
+
@varargs def vs(a: Int, b: String*) = println(a + b.length)
@varargs def vi(a: Int, b: Int*) = println(a + b.sum)
@varargs def vt[T](a: Int, b: T*) = println(a + b.length)
-
+
}
diff --git a/test/files/jvm/xml01.scala b/test/files/jvm/xml01.scala
index ef320e218b..2fab650637 100644
--- a/test/files/jvm/xml01.scala
+++ b/test/files/jvm/xml01.scala
@@ -16,7 +16,7 @@ object Test extends App {
val c = new Node {
def label = "hello"
- override def hashCode() =
+ override def hashCode() =
Utility.hashCode(prefix, label, attributes.hashCode(), scope.hashCode(), child);
def child = Elem(null, "world", e, sc);
//def attributes = e;
@@ -35,8 +35,8 @@ object Test extends App {
val x2p = XML.load(i)
assert(x2p == Elem(null, "book" , e, sc,
- Elem(null, "author", e, sc,Text("Peter Buneman")),
- Elem(null, "author", e, sc,Text("Dan Suciu")),
+ Elem(null, "author", e, sc,Text("Peter Buneman")),
+ Elem(null, "author", e, sc,Text("Dan Suciu")),
Elem(null, "title" , e, sc,Text("Data on ze web"))))
val xmlFile2 = "<bib><book><author>Peter Buneman</author><author>Dan Suciu</author><title>Data on ze web</title></book><book><author>John Mitchell</author><title>Foundations of Programming Languages</title></book></bib>";
@@ -49,11 +49,11 @@ object Test extends App {
assert(parsedxml1 \ "world" sameElements List(Elem(null,"world", e, sc)))
- assert(
+ assert(
(parsedxml2 \ "_") sameElements List(
Elem(null,"book", e, sc,
- Elem(null,"author", e, sc, Text("Peter Buneman")),
- Elem(null,"author", e, sc, Text("Dan Suciu")),
+ Elem(null,"author", e, sc, Text("Peter Buneman")),
+ Elem(null,"author", e, sc, Text("Dan Suciu")),
Elem(null,"title" , e, sc, Text("Data on ze web"))),
Elem(null,"book",e,sc,
Elem(null,"author",e,sc,Text("John Mitchell")),
@@ -61,11 +61,11 @@ object Test extends App {
)
assert((parsedxml2 \ "author").isEmpty)
- assert(
+ assert(
(parsedxml2 \ "book") sameElements List(
Elem(null,"book",e,sc,
- Elem(null,"author", e, sc, Text("Peter Buneman")),
- Elem(null,"author", e, sc, Text("Dan Suciu")),
+ Elem(null,"author", e, sc, Text("Peter Buneman")),
+ Elem(null,"author", e, sc, Text("Dan Suciu")),
Elem(null,"title" , e, sc, Text("Data on ze web"))),
Elem(null,"book",e,sc,
Elem(null,"author", e, sc, Text("John Mitchell")),
@@ -73,20 +73,20 @@ object Test extends App {
)
)
- assert(
+ assert(
(parsedxml2 \ "_" \ "_") sameElements List(
- Elem(null,"author", e, sc, Text("Peter Buneman")),
- Elem(null,"author", e, sc, Text("Dan Suciu")),
+ Elem(null,"author", e, sc, Text("Peter Buneman")),
+ Elem(null,"author", e, sc, Text("Dan Suciu")),
Elem(null,"title" , e, sc, Text("Data on ze web")),
Elem(null,"author", e, sc, Text("John Mitchell")),
Elem(null,"title" , e, sc, Text("Foundations of Programming Languages"))
)
)
- assert(
+ assert(
(parsedxml2 \ "_" \ "author") sameElements List(
- Elem(null,"author", e, sc, Text("Peter Buneman")),
- Elem(null,"author", e, sc, Text("Dan Suciu")),
+ Elem(null,"author", e, sc, Text("Peter Buneman")),
+ Elem(null,"author", e, sc, Text("Dan Suciu")),
Elem(null,"author", e, sc, Text("John Mitchell"))
)
)
@@ -95,15 +95,15 @@ object Test extends App {
Console.println("xpath \\\\ DESCENDANTS");
- assert(
+ assert(
(parsedxml2 \\ "author") sameElements List(
- Elem(null,"author", e, sc, Text("Peter Buneman")),
- Elem(null,"author", e, sc, Text("Dan Suciu")),
+ Elem(null,"author", e, sc, Text("Peter Buneman")),
+ Elem(null,"author", e, sc, Text("Dan Suciu")),
Elem(null,"author", e, sc, Text("John Mitchell"))
)
)
- assert(
+ assert(
(parsedxml2 \\ "title") sameElements List(
Elem(null,"title", e, sc, Text("Data on ze web")),
Elem(null,"title", e, sc, Text("Foundations of Programming Languages")))
@@ -114,19 +114,19 @@ object Test extends App {
(parsedxml2 \\ "book" ){ n:Node => (n \ "title") xml_== "Data on ze web" }
)
- assert(
+ assert(
((new NodeSeq { val theSeq = List( parsedxml2 ) }) \\ "_") sameElements List(
Elem(null,"bib",e,sc,
Elem(null,"book",e,sc,
- Elem(null, "author", e, sc, Text("Peter Buneman")),
- Elem(null, "author", e, sc, Text("Dan Suciu")),
+ Elem(null, "author", e, sc, Text("Peter Buneman")),
+ Elem(null, "author", e, sc, Text("Dan Suciu")),
Elem(null, "title" , e, sc, Text("Data on ze web"))),
Elem(null,"book",e,sc,
Elem(null,"author",e,sc,Text("John Mitchell")),
Elem(null,"title",e,sc,Text("Foundations of Programming Languages")))),
Elem(null,"book",e,sc,
- Elem(null,"author",e,sc,Text("Peter Buneman")),
- Elem(null,"author",e,sc,Text("Dan Suciu")),
+ Elem(null,"author",e,sc,Text("Peter Buneman")),
+ Elem(null,"author",e,sc,Text("Dan Suciu")),
Elem(null,"title",e,sc,Text("Data on ze web"))),
Elem(null,"author",e,sc,Text("Peter Buneman")),
Elem(null,"author",e,sc,Text("Dan Suciu")),
diff --git a/test/files/jvm/xml02.scala b/test/files/jvm/xml02.scala
index fb790d5926..b830a0e694 100644
--- a/test/files/jvm/xml02.scala
+++ b/test/files/jvm/xml02.scala
@@ -36,26 +36,26 @@ object Test {
val z = ax \ "@{the namespace from outer space}foo"
assert((ax \ "@{the namespace from outer space}foo") xml_== "baz")
assert((cx \ "@{the namespace from outer space}foo") xml_== "baz")
-
+
try {
ax \ "@"
assert(false)
} catch {
- case _: IllegalArgumentException =>
+ case _: IllegalArgumentException =>
}
try {
ax \ "@{"
assert(false)
} catch {
- case _: IllegalArgumentException =>
+ case _: IllegalArgumentException =>
}
try {
ax \ "@{}"
assert(false)
} catch {
- case _: IllegalArgumentException =>
+ case _: IllegalArgumentException =>
}
-
+
}
}
diff --git a/test/files/jvm/xmlattr.scala b/test/files/jvm/xmlattr.scala
index 2668819c9d..d214642eb6 100644
--- a/test/files/jvm/xmlattr.scala
+++ b/test/files/jvm/xmlattr.scala
@@ -7,7 +7,7 @@ object Test {
AttributeWithOptionTest()
AttributeOutputTest()
}
-
+
object UnprefixedAttributeTest {
def apply() {
val x = new UnprefixedAttribute("foo","bar", Null)
@@ -15,13 +15,13 @@ object Test {
println(Text("bar") == x("foo"))
println(None == x.get("no_foo"))
println(null == x("no_foo"))
-
+
val y = x.remove("foo")
println(Null == y)
val z = new UnprefixedAttribute("foo", null:NodeSeq, x)
println(None == z.get("foo"))
-
+
var appended = x append x append x append x
var len = 0; while (appended ne Null) {
appended = appended.next
diff --git a/test/files/jvm/xmlmore.scala b/test/files/jvm/xmlmore.scala
index 1381cdf837..04d0a6c759 100644
--- a/test/files/jvm/xmlmore.scala
+++ b/test/files/jvm/xmlmore.scala
@@ -11,7 +11,7 @@ Ours is the portal of hope, come as you are."
Mevlana Celaleddin Rumi]]>
val nazim = <foo>{myBreak}</foo> // shows use of unparsed
-
+
Console println com
Console println pi
Console println crz // this guy will escaped, and rightly so
diff --git a/test/files/jvm/xmlpull.scala b/test/files/jvm/xmlpull.scala
index d2bb72a071..9ba7d4cf02 100644
--- a/test/files/jvm/xmlpull.scala
+++ b/test/files/jvm/xmlpull.scala
@@ -5,7 +5,7 @@ import scala.io.Source
object Test {
val src = Source.fromString("<hello><world/>!</hello>")
-
+
def main(args: Array[String]) {
var er = new XMLEventReader(src)
er.next match {
@@ -28,4 +28,4 @@ object Test {
//println("6")
}
}
-
+
diff --git a/test/files/jvm/xmlstuff.scala b/test/files/jvm/xmlstuff.scala
index f2ad0307b1..45234c7139 100644
--- a/test/files/jvm/xmlstuff.scala
+++ b/test/files/jvm/xmlstuff.scala
@@ -26,7 +26,7 @@ object Test {
<baz bazValue="8"/>
<bar value="5" gi='go'/>
</foo>;
-
+
val pelems_1 = for (x <- p \ "bar"; y <- p \ "baz" ) yield {
Text(x.attributes("value").toString + y.attributes("bazValue").toString+ "!")
};
@@ -35,14 +35,14 @@ object Test {
assert(Text("8") sameElements (p \\ "@bazValue"))
- val books =
+ val books =
<bks>
<book><title>Blabla</title></book>
<book><title>Blubabla</title></book>
<book><title>Baaaaaaalabla</title></book>
</bks>;
- val reviews =
+ val reviews =
<reviews>
<entry><title>Blabla</title>
<remarks>
@@ -72,32 +72,32 @@ object Test {
));
// example
- println(
+ println(
for (t @ <book><title>Blabla</title></book> <- new NodeSeq { val theSeq = books.child }.toList)
yield t
);
- val phoneBook =
+ val phoneBook =
<phonebook>
<descr>
- This is the <b>phonebook</b> of the
+ This is the <b>phonebook</b> of the
<a href="http://acme.org">ACME</a> corporation.
</descr>
<entry>
- <name>John</name>
+ <name>John</name>
<phone where="work"> +41 21 693 68 67</phone>
<phone where="mobile">+41 79 602 23 23</phone>
</entry>
</phonebook>;
- val addrBook =
+ val addrBook =
<addrbook>
<descr>
- This is the <b>addressbook</b> of the
+ This is the <b>addressbook</b> of the
<a href="http://acme.org">ACME</a> corporation.
</descr>
<entry>
- <name>John</name>
+ <name>John</name>
<street> Elm Street</street>
<city>Dolphin City</city>
</entry>
@@ -113,7 +113,7 @@ object Test {
</result>
));
-
+
/* namespaces */
// begin tmp
println("namespaces")
@@ -135,9 +135,9 @@ object Test {
import scala.xml.dtd.ELEMENTS
import scala.xml.dtd.ContentModel._
vtor.setContentModel(
- ELEMENTS(
+ ELEMENTS(
Sequ(
- Letter(ElemName("bar")),
+ Letter(ElemName("bar")),
Star(Letter(ElemName("baz"))) )));
}
@@ -146,11 +146,11 @@ object Test {
{
import scala.xml.dtd.MIXED
import scala.xml.dtd.ContentModel._
-
+
vtor.setContentModel(
MIXED(
- Alt(Letter(ElemName("bar")),
- Letter(ElemName("baz")),
+ Alt(Letter(ElemName("bar")),
+ Letter(ElemName("baz")),
Letter(ElemName("bal")))));
}
@@ -162,20 +162,20 @@ object Test {
vtor.setContentModel(null)
vtor.setMetaData(List())
assert(!vtor( <foo bar="hello"/> ))
-
- {
- import scala.xml.dtd._
+
+ {
+ import scala.xml.dtd._
vtor setMetaData List(AttrDecl("bar", "CDATA", IMPLIED))
}
assert(!vtor(<foo href="http://foo.com" bar="hello"/>))
assert(vtor(<foo bar="hello"/>))
- {
+ {
import scala.xml.dtd._
vtor.setMetaData(List(AttrDecl("bar","CDATA",REQUIRED)))
}
assert(!vtor( <foo href="http://foo.com" /> ))
assert( vtor( <foo bar="http://foo.com" /> ))
-
+
}
}
diff --git a/test/files/neg/abstract-class-2.scala b/test/files/neg/abstract-class-2.scala
index 19f74f3da6..be45a09343 100644
--- a/test/files/neg/abstract-class-2.scala
+++ b/test/files/neg/abstract-class-2.scala
@@ -1,7 +1,7 @@
class P {
trait S1
val p = new P
-
+
trait S2 {
def f(x: p.S1): Int
}
@@ -10,5 +10,5 @@ class P {
class P2 extends P {
object O2 extends S2 {
def f(x: S1) = 5
- }
+ }
}
diff --git a/test/files/neg/abstract-inaccessible.scala b/test/files/neg/abstract-inaccessible.scala
index 3c80f30522..7eaaf2d620 100644
--- a/test/files/neg/abstract-inaccessible.scala
+++ b/test/files/neg/abstract-inaccessible.scala
@@ -1,6 +1,6 @@
package foo {
private[foo] trait Bippy { }
-
+
trait YourTrait {
def implementMe(f: Int => (String, Bippy)): Unit
def overrideMe[T <: Bippy](x: T): T = x
diff --git a/test/files/neg/accesses.scala b/test/files/neg/accesses.scala
index b1df6c0e6c..290291586c 100644
--- a/test/files/neg/accesses.scala
+++ b/test/files/neg/accesses.scala
@@ -6,7 +6,7 @@ abstract class A {
private[p1] def f4(): Unit
protected[p1] def f5(): Unit
}
-
+
abstract class OK1 extends A {
private[p1] def f2(): Unit
protected[p2] def f3(): Unit
diff --git a/test/files/neg/array-not-seq.scala b/test/files/neg/array-not-seq.scala
index 07a2898d88..5f367bdd85 100644
--- a/test/files/neg/array-not-seq.scala
+++ b/test/files/neg/array-not-seq.scala
@@ -9,9 +9,9 @@ object Test {
case _: Array[_] => true
case _ => false
}
-
+
def f4(x: Any) = x.isInstanceOf[Traversable[_]]
-
+
def f5(x1: Any, x2: Any, x3: AnyRef) = (x1, x2, x3) match {
case (Some(_: Seq[_]), Nil, _) => 1
case (None, List(_: List[_], _), _) => 2
diff --git a/test/files/neg/check-dead.scala b/test/files/neg/check-dead.scala
index 2d5bccb21d..aadd788814 100644
--- a/test/files/neg/check-dead.scala
+++ b/test/files/neg/check-dead.scala
@@ -5,11 +5,11 @@ object Other {
class NoDeads {
def y1(arg: Any) = println("foo")
def z1 = y1(throw new Exception) // should warn
-
+
def y2[T](arg: T) = println("foo")
def z2 = y2(throw new Exception) // should warn
-
- def y3[T](arg: => T) = println("foo")
+
+ def y3[T](arg: => T) = println("foo")
def z3 = y3(throw new Exception) // should not warn: by name arg
def nowarn1 = synchronized { throw new Exception } // should not warn: synchronized should be by name
@@ -22,9 +22,9 @@ class NoDeads {
val i = 10 + 2
i
}
-
+
def nowarn4: String = Other.oops("don't warn about me") // should not warn
-
+
def yeswarn1 = synchronized {
throw new Exception // should warn
5 * 5
@@ -32,6 +32,6 @@ class NoDeads {
def yeswarn2: Int = synchronized {
throw new Exception // should warn
return 5
- }
+ }
}
diff --git a/test/files/neg/checksensible.scala b/test/files/neg/checksensible.scala
index b6083f75e4..27ee908153 100644
--- a/test/files/neg/checksensible.scala
+++ b/test/files/neg/checksensible.scala
@@ -9,7 +9,7 @@ final class Zing {
// 7 warnings
class RefEqTest {
object Shmoopie
-
+
(new AnyRef) eq (new AnyRef)
(new AnyRef) ne (new AnyRef)
Shmoopie eq (new AnyRef)
@@ -22,10 +22,10 @@ class RefEqTest {
// 13 warnings
class EqEqValTest {
var c = 0
-
+
(c = 1) == 0
0 == (c = 1)
-
+
1 == "abc"
1 == ("abc": Any) // doesn't warn because an Any may be a boxed Int
1 == (1: Any) // as above
@@ -34,12 +34,12 @@ class EqEqValTest {
true == new java.lang.Boolean(true) // none of these should warn
new java.lang.Boolean(true) == true
-
+
new AnyRef == 1
1 == new AnyRef // doesn't warn because it could be...
1 == (new java.lang.Integer(1)) // ...something like this
1 == (new java.lang.Boolean(true))
-
+
1 != true
() == true
() == ()
@@ -47,13 +47,13 @@ class EqEqValTest {
() == scala.runtime.BoxedUnit.UNIT // these should warn for always being true/false
scala.runtime.BoxedUnit.UNIT != ()
(scala.runtime.BoxedUnit.UNIT: java.io.Serializable) != () // shouldn't warn
-
+
(1 != println)
(1 != 'sym)
}
// 12 warnings
-class EqEqRefTest {
+class EqEqRefTest {
val ref = new Bop
((x: Int) => x + 1) == null
Bep == ((_: Int) + 1)
@@ -67,9 +67,9 @@ class EqEqRefTest {
// final classes with default equals
val x1 = new Bip
- val x2 = new Bop
+ val x2 = new Bop
(x1 == x2)
-
+
class C1 { }
class C2 extends C1 { }
final class Z1 extends C2 { }
@@ -84,14 +84,14 @@ class EqEqRefTest {
c3 != "abc"
// this should warn when feeling chatty
c3 != z1
-
+
// non-warners
(null: AnyRef) == (null: AnyRef)
(x1 <= x2)
-
+
def main(args: Array[String]) = {
val in = new java.io.FileInputStream(args(0))
- var c = 0
+ var c = 0
while ((c = in.read) != -1)
print(c.toChar)
diff --git a/test/files/neg/choices.scala b/test/files/neg/choices.scala
index 8827494874..fe9236f10f 100644
--- a/test/files/neg/choices.scala
+++ b/test/files/neg/choices.scala
@@ -1,5 +1,5 @@
object Test {
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/neg/exhausting.scala b/test/files/neg/exhausting.scala
index 0741d7467b..14b05695aa 100644
--- a/test/files/neg/exhausting.scala
+++ b/test/files/neg/exhausting.scala
@@ -3,7 +3,7 @@ object Test {
case object Bar1 extends Foo[Int]
case object Bar2 extends Foo[String]
case object Bar3 extends Foo[Any]
-
+
def ex1[T](xs: List[T]) = xs match {
case ys: List[_] => "ok"
}
@@ -16,7 +16,7 @@ object Test {
def ex3[T](xx: (Foo[T], Foo[T])) = xx match {
case (_: Foo[_], _: Foo[_]) => ()
}
-
+
def fail1[T](xs: List[T]) = xs match {
case Nil => "ok"
case x :: y :: Nil => "ok"
@@ -38,8 +38,8 @@ object Test {
case (Bar2, Bar3) => ()
case (Bar3, _) => ()
}
-
+
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/neg/forward.scala b/test/files/neg/forward.scala
index d5c0851f09..3774fa838f 100644
--- a/test/files/neg/forward.scala
+++ b/test/files/neg/forward.scala
@@ -5,20 +5,20 @@ object Test {
{
def f: Int = x;
val x: Int = f;
- }
+ }
{
def f: Int = g;
val x: Int = f;
def g: Int = x;
- }
+ }
{
def f: Int = g;
var x: Int = f;
def g: Int = x;
- }
+ }
{
def f: Int = g;
Console.println("foo");
def g: Int = f;
- }
+ }
}
diff --git a/test/files/neg/found-req-variance.scala b/test/files/neg/found-req-variance.scala
index 024b24c367..fd3b11160e 100644
--- a/test/files/neg/found-req-variance.scala
+++ b/test/files/neg/found-req-variance.scala
@@ -27,7 +27,7 @@ object Test {
def f7 = Set[Inv[C]]() + new Inv[A]
def f8 = Set[Inv[C]]() + new Inv[B]
def f9 = Set[Inv[C]]() + new Inv[C]
-
+
def g1 = Set[Multi[A, B, C]]() + new MultiCov[A]
def g2 = Set[Multi[A, B, C]]() + new MultiCov[B]
def g3 = Set[Multi[A, B, C]]() + new MultiCov[C]
@@ -43,12 +43,12 @@ object Functions {
object Set1 {
def f[T, R](x: FF1[T, R]) = ()
def h[T, R] : FF1[T, R] = sys.error("")
-
+
def ff1 = f[B, B](h[A, A]) // fail
def ff2 = f[B, B](h[B, A]) // fail
def ff3 = f[B, B](h[C, A]) // fail
def ff4 = f[B, B](h[A, B]) // suggest
- def ff5 = f[B, B](h[B, B]) // ok
+ def ff5 = f[B, B](h[B, B]) // ok
def ff6 = f[B, B](h[C, B]) // suggest
def ff7 = f[B, B](h[A, C]) // suggest
def ff8 = f[B, B](h[B, C]) // ok
@@ -57,7 +57,7 @@ object Functions {
object Set2 {
def f[T, R](x: FF2[T, R]) = ()
def h[T, R] : FF2[T, R] = sys.error("")
-
+
def ff1 = f[B, B](h[A, A]) // suggest
def ff2 = f[B, B](h[B, A]) // suggest
def ff3 = f[B, B](h[C, A]) // fail
@@ -74,7 +74,7 @@ object Functions {
// object TypeAlias {
// type LL[T] = List[T]
// val LL = List
-//
+//
// def f1 = Set[LL[B]]() + LL[A](new A)
// def f2 = Set[LL[B]]() + LL[C](new C)
// }
@@ -82,12 +82,12 @@ object Functions {
object Javas {
def f[T](x: java.util.List[T]) = ()
def g[T](x: java.util.Comparator[T]) = ()
-
+
def g1 = f[AnyRef](new java.util.ArrayList[String] { })
def g2 = g[String](Ordering.fromLessThan[AnyRef](_.toString < _.toString))
}
-object Misc {
+object Misc {
// original motivation
class Data[A <: AnyVal]
class MyData extends Data[Int] { }
diff --git a/test/files/neg/gadts1.check b/test/files/neg/gadts1.check
index f19b58c5db..44d2b114d6 100644
--- a/test/files/neg/gadts1.check
+++ b/test/files/neg/gadts1.check
@@ -1,7 +1,7 @@
gadts1.scala:15: error: type mismatch;
found : Test.Double
required: a
- case NumTerm(n) => c.x = Double(1.0)
+ case NumTerm(n) => c.x = Double(1.0)
^
gadts1.scala:20: error: class Cell of type Test.Cell does not take type parameters.
case Cell[a](x: Int) => c.x = 5
diff --git a/test/files/neg/gadts1.scala b/test/files/neg/gadts1.scala
index 08403e6eec..1fb6e57e2d 100644
--- a/test/files/neg/gadts1.scala
+++ b/test/files/neg/gadts1.scala
@@ -11,8 +11,8 @@ class IntTerm(n: Int) extends NumTerm(n) with Term[Int]
def f[a](t:Term[a], c:Cell[a]): Unit = {
- t match {
- case NumTerm(n) => c.x = Double(1.0)
+ t match {
+ case NumTerm(n) => c.x = Double(1.0)
}
t match {
// presently testing that this gets past the parser: eventually
diff --git a/test/files/neg/implicits.scala b/test/files/neg/implicits.scala
index 846591e22d..e908fb03e8 100644
--- a/test/files/neg/implicits.scala
+++ b/test/files/neg/implicits.scala
@@ -4,14 +4,14 @@ class Super
object Super {
implicit def pos2int(p: Pos): Int = 0
-}
+}
object Sub extends Super {
class Plus(x: Any) {
def +(y: String): String = x.toString + y
}
implicit def any2plus(x: Any): Plus = new Plus(x)
-}
+}
object Test {
import Super._
@@ -33,7 +33,7 @@ object test2 {
val set = HEmpty + 3 + "3"
implicit def select[T](t: HSome[T,_]) = t.head
implicit def selectTail[L](t: HSome[_,L]) = t.tail
-
+
def foo(x: Int) = 3
foo(set)
}
@@ -55,4 +55,4 @@ class Mxml {
}
-}
+}
diff --git a/test/files/neg/java-access-neg/J.java b/test/files/neg/java-access-neg/J.java
index b6bc3363a1..4f2024673c 100644
--- a/test/files/neg/java-access-neg/J.java
+++ b/test/files/neg/java-access-neg/J.java
@@ -4,11 +4,11 @@ public abstract class J {
public J() { }
J(int x1) { }
protected J(int x1, int x2) { }
-
+
abstract void packageAbstract();
protected abstract void protectedAbstract();
public abstract void publicAbstract();
-
+
void packageConcrete() { return; }
protected void protectedConcrete() { return; }
public void publicConcrete() { return; }
diff --git a/test/files/neg/java-access-neg/S2.scala b/test/files/neg/java-access-neg/S2.scala
index b082bb7174..dd0af8d39d 100644
--- a/test/files/neg/java-access-neg/S2.scala
+++ b/test/files/neg/java-access-neg/S2.scala
@@ -12,7 +12,7 @@ class S1 extends J {
override private[b] def packageAbstract() = () // fail
override protected[b] def protectedAbstract() = ()
override def publicAbstract() = ()
-
+
override private[b] def packageConcrete() = () // fail
override protected[b] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -32,7 +32,7 @@ class S3 extends J {
protected[b] def packageAbstract() = () // fail
protected[b] def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override protected[b] def packageConcrete() = () // fail
override protected[b] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -43,7 +43,7 @@ class S4 extends J {
private[a] def packageAbstract() = () // fail
protected[a] def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override private[a] def packageConcrete() = () // fail
override protected[a] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -54,7 +54,7 @@ class S5 extends J {
def packageAbstract() = () // fail
def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override def packageConcrete() = () // fail
override def protectedConcrete() = ()
override def publicConcrete() = ()
diff --git a/test/files/neg/lazy-override.scala b/test/files/neg/lazy-override.scala
index f41d7f038b..a0f6e3bd73 100644
--- a/test/files/neg/lazy-override.scala
+++ b/test/files/neg/lazy-override.scala
@@ -5,7 +5,7 @@
lazy val y: Int = { print("/*A.y*/"); 2 }
}
-
+
class B extends A {
// lazy overrides strict val
override lazy val x: Int = { print("/*B.x*/"); 3 }
diff --git a/test/files/neg/lazyvals.scala b/test/files/neg/lazyvals.scala
index f92534f506..bbc4fe114a 100644
--- a/test/files/neg/lazyvals.scala
+++ b/test/files/neg/lazyvals.scala
@@ -1,7 +1,7 @@
/** Test which should fail compilation */
class Lazy {
-
+
// no abstract lazy values
lazy val t: Int
@@ -31,7 +31,7 @@ object T2 {
lazy val y: Int = { print("/*A.y*/"); 2 }
}
-
+
class B extends A {
// lazy overrides strict val
override lazy val x: Int = { print("/*B.x*/"); 3 }
diff --git a/test/files/neg/lubs.scala b/test/files/neg/lubs.scala
index 3524fa4d87..639117f7bf 100644
--- a/test/files/neg/lubs.scala
+++ b/test/files/neg/lubs.scala
@@ -18,7 +18,7 @@ object test2 {
class D extends A { type T = D }
def f = if (1 == 2) new C else new D
-
+
val x1: A { type T } = f
val x2: A { type T >: Null <: A } = f
val x3: A { type T >: Null <: A { type T >: Null <: A } } = f
diff --git a/test/files/neg/migration28.scala b/test/files/neg/migration28.scala
index facc9b36d2..ba73eea436 100644
--- a/test/files/neg/migration28.scala
+++ b/test/files/neg/migration28.scala
@@ -1,9 +1,9 @@
object Test {
import scala.collection.mutable._
-
+
List(1,2,3,4,5).scanRight(0)(_+_)
-
+
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/neg/null-unsoundness.scala b/test/files/neg/null-unsoundness.scala
index dbb8744597..3f7e42fe17 100644
--- a/test/files/neg/null-unsoundness.scala
+++ b/test/files/neg/null-unsoundness.scala
@@ -12,4 +12,4 @@ object Test extends A with App {
type A = C
y = 42
}
-
+
diff --git a/test/files/neg/object-not-a-value.scala b/test/files/neg/object-not-a-value.scala
index 207b271df2..2f894a33df 100644
--- a/test/files/neg/object-not-a-value.scala
+++ b/test/files/neg/object-not-a-value.scala
@@ -1,6 +1,6 @@
object Test {
import java.util._
-
+
def main(args: Array[String]): Unit = {
List(1) map (_ + 1)
}
diff --git a/test/files/neg/overload-msg.scala b/test/files/neg/overload-msg.scala
index 8715c156a2..896722262d 100644
--- a/test/files/neg/overload-msg.scala
+++ b/test/files/neg/overload-msg.scala
@@ -1,4 +1,4 @@
// type parameter shadows actual type, massive overload error confuses.
-class A(x: Int) {
+class A(x: Int) {
def f[Int](y: Int) = x + y
}
diff --git a/test/files/neg/overloaded-implicit.scala b/test/files/neg/overloaded-implicit.scala
index 68b1ceaa30..9ab66cf560 100644
--- a/test/files/neg/overloaded-implicit.scala
+++ b/test/files/neg/overloaded-implicit.scala
@@ -1,15 +1,15 @@
object Test {
implicit def imp1[T](x: List[T]): Map[T, T] = Map()
implicit def imp1[T](x: Set[T]): Map[T, T] = Map()
-
+
def f[T <% Map[Int, Int]](x: T): Double = 1.0d
// not parameterized, no warning
- implicit def imp2(x: List[Int]): String = "a"
+ implicit def imp2(x: List[Int]): String = "a"
implicit def imp2(x: Set[Int]): String = "b"
-
+
def g[T <% String](x: T): Double = 2.0d
-
+
def main(args: Array[String]): Unit = {
// println(f(List(1)))
println(g(List(1)))
diff --git a/test/files/neg/override-object-no.scala b/test/files/neg/override-object-no.scala
index 745cdb2332..45961e4fa6 100644
--- a/test/files/neg/override-object-no.scala
+++ b/test/files/neg/override-object-no.scala
@@ -25,7 +25,7 @@ package case1 {
trait Quux4 extends Quux3 { override object Bar } // err
}
-// type parameter as-seen-from business
+// type parameter as-seen-from business
package case2 {
// invariance (see pos for the covariant case)
class Bar[T]
diff --git a/test/files/neg/pat_unreachable.scala b/test/files/neg/pat_unreachable.scala
index c5f71790a8..fc0fd41920 100644
--- a/test/files/neg/pat_unreachable.scala
+++ b/test/files/neg/pat_unreachable.scala
@@ -8,7 +8,7 @@ object Test extends App {
case Seq(x, y, _*) => x::y::Nil
case Seq(x, y) => List(x, y)
}
-
+
def not_unreachable(xs:Seq[Char]) = xs match {
case Seq(x, y, _*) => x::y::Nil
case Seq(x) => List(x)
diff --git a/test/files/neg/patmat-type-check.scala b/test/files/neg/patmat-type-check.scala
index 26d0409fa0..cc35089430 100644
--- a/test/files/neg/patmat-type-check.scala
+++ b/test/files/neg/patmat-type-check.scala
@@ -1,15 +1,15 @@
object Test
{
def s1 = "bob".toList match { case Seq('b', 'o', 'b') => true } // list ok
-
+
// not final, allowed
- class Bop
+ class Bop
def s2(x: Bop) = x match { case Seq('b', 'o', 'b') => true }
-
+
// covariance, allowed
final class Bop4[+T]
def s3[T](x: Bop4[T]) = x match { case Seq('b', 'o', 'b') => true }
-
+
// contravariance, allowed
final class Bop5[T, U, -V]
def s4[T1, T2](x: Bop5[_, T1, T2]) = x match { case Seq('b', 'o', 'b') => true }
@@ -17,7 +17,7 @@ object Test
// free type parameter, allowed
final class Bop3[T]
def f4[T](x: Bop3[T]) = x match { case Seq('b', 'o', 'b') => true }
-
+
// String and Array are final/invariant, disallowed
def f1 = "bob".reverse match { case Seq('b', 'o', 'b') => true } // fail
def f2 = "bob".toArray match { case Seq('b', 'o', 'b') => true } // fail
@@ -25,7 +25,7 @@ object Test
// final, no type parameters, should be disallowed
final class Bop2
def f3(x: Bop2) = x match { case Seq('b', 'o', 'b') => true } // fail
-
+
// final, invariant type parameter, should be disallowed
def f4[T](x: Bop3[Char]) = x match { case Seq('b', 'o', 'b') => true } // fail
}
diff --git a/test/files/neg/patmatexhaust.scala b/test/files/neg/patmatexhaust.scala
index 45aed558da..9297e09d0d 100644
--- a/test/files/neg/patmatexhaust.scala
+++ b/test/files/neg/patmatexhaust.scala
@@ -22,14 +22,14 @@ class TestSealedExhaustive { // compile only
def ma3(x:Mult) = (x,x) match { // not exhaustive
case (Kult(_), Qult()) => // Kult missing
- //case Pair(Kult(_), Kult(_)) =>
+ //case Pair(Kult(_), Kult(_)) =>
case (Qult(), Kult(_)) => // Qult missing
- //case Pair(Qult(), Qult()) =>
+ //case Pair(Qult(), Qult()) =>
}
def ma3u(x:Mult) = ((x,x) : @unchecked) match { // not exhaustive, but not checked!
- case (Kult(_), Qult()) =>
- case (Qult(), Kult(_)) =>
+ case (Kult(_), Qult()) =>
+ case (Qult(), Kult(_)) =>
}
sealed abstract class Deep
@@ -37,22 +37,22 @@ class TestSealedExhaustive { // compile only
case object Ga extends Deep
sealed class Gp extends Deep
case object Gu extends Gp
-
+
def zma3(x:Deep) = x match { // exhaustive!
case _ =>
}
def zma4(x:Deep) = x match { // exhaustive!
- case Ga =>
+ case Ga =>
case _ =>
}
def ma4(x:Deep) = x match { // missing cases: Gu, Gp
- case Ga =>
+ case Ga =>
}
def ma5(x:Deep) = x match { // Gp
case Gu =>
- case _ if 1 == 0 =>
+ case _ if 1 == 0 =>
case Ga =>
}
@@ -65,7 +65,7 @@ class TestSealedExhaustive { // compile only
case 1::2::Nil =>
case _ =>
}
-
+
sealed class B
case class B1() extends B
case object B2 extends B
@@ -76,7 +76,7 @@ class TestSealedExhaustive { // compile only
case B1() => true // missing B, which is not abstract so must be included
case B2 => true
}
-
+
object ob1 {
sealed abstract class C
sealed abstract class C1 extends C
@@ -89,7 +89,7 @@ class TestSealedExhaustive { // compile only
case C2 | C4 => true
}
}
-
+
object ob2 {
sealed abstract class C
abstract class C1 extends C
diff --git a/test/files/neg/patternalts.scala b/test/files/neg/patternalts.scala
index 539df43201..56b682b0ec 100644
--- a/test/files/neg/patternalts.scala
+++ b/test/files/neg/patternalts.scala
@@ -1,5 +1,5 @@
object Test {
List(1) match {
case List(x) | List() => Console.println(x)
- }
+ }
}
diff --git a/test/files/neg/protected-constructors.scala b/test/files/neg/protected-constructors.scala
index 2838caf09c..f2662ee67c 100644
--- a/test/files/neg/protected-constructors.scala
+++ b/test/files/neg/protected-constructors.scala
@@ -8,7 +8,7 @@ package dingus {
package hungus {
import dingus._
-
+
object P {
class Bar1 extends Foo1("abc")
class Bar2 extends Foo2("abc")
diff --git a/test/files/neg/saito.scala b/test/files/neg/saito.scala
index b4fcd598e4..bfabb4edf4 100644
--- a/test/files/neg/saito.scala
+++ b/test/files/neg/saito.scala
@@ -2,13 +2,13 @@ class B {}
class A { self: B =>
def m(): B = {
this
- }
+ }
}
object Exec{
def main(args: Array[String]): Unit = {
val a: A = new A; // should not be allowed
- val b: B = a.m();
+ val b: B = a.m();
}
}
diff --git a/test/files/neg/sensitive.scala b/test/files/neg/sensitive.scala
index f435a385e1..fa1b940844 100644
--- a/test/files/neg/sensitive.scala
+++ b/test/files/neg/sensitive.scala
@@ -5,8 +5,8 @@ object Admin extends Certificate;
class SecurityViolationException extends Exception
object Sensitive {
- def makeSensitive(credentials: Certificate): Sensitive =
- if (credentials == Admin) new Sensitive()
+ def makeSensitive(credentials: Certificate): Sensitive =
+ if (credentials == Admin) new Sensitive()
else throw new SecurityViolationException
}
class Sensitive private () {
@@ -16,4 +16,4 @@ object Attacker {
val x = Sensitive.makeSensitive(null)
val y = new Sensitive()
}
-
+
diff --git a/test/files/neg/spec-overrides.scala b/test/files/neg/spec-overrides.scala
index 713ce27bd3..f77dadea5d 100644
--- a/test/files/neg/spec-overrides.scala
+++ b/test/files/neg/spec-overrides.scala
@@ -15,7 +15,7 @@ class FX2 extends P {
object Test extends App {
val fx = new FX
val p = new P
-
+
println(fx.a(3))
println((fx: P).a(3))
println((fx: P).a(3.0))
diff --git a/test/files/neg/structural.scala b/test/files/neg/structural.scala
index d783399317..bfca37b22a 100644
--- a/test/files/neg/structural.scala
+++ b/test/files/neg/structural.scala
@@ -1,54 +1,54 @@
object Test extends App {
-
+
def f(x: { type D; def m: D }): Null = null
-
+
class Tata
-
+
abstract class Toto[A <: Object] {
type B <: Object
-
+
def f1[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: A): Object; val x: A }) = x.m[Tata](x.x) //fail
def f2[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: B): Object; val x: B }) = x.m[Tata](x.x) //fail
def f3[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: C): Object; val x: C }) = x.m[Tata](x.x) //fail
def f4[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: D): Object; val x: D }) = x.m[Tata](x.x) //fail
def f5[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: E): Object; val x: Tata }) = x.m[Tata](x.x) //suceed
-
+
def f6[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: Object): A }) = x.m[Tata](null) //suceed
def f7[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: Object): B }) = x.m[Tata](null) //suceed
def f8[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: Object): C }) = x.m[Tata](null) //suceed
def f9[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: Object): D }) = x.m[Tata](null) //fail
def f0[C <: Object](x: Object{ type D <: Object; def m[E >: Null <: Object](x: Object): E }) = x.m[Tata](null) //suceed
-
+
}
-
+
val tata = new Tata
val toto = new Toto[Tata] {
type B = Tata
}
-
+
//toto.f1[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Tata): Object = null; val x = tata })
//toto.f2[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Tata): Object = null; val x = tata })
//toto.f3[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Tata): Object = null; val x = tata })
//toto.f4[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: D): Object = null; val x = tata })
toto.f5[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: E): Object = null; val x: Test.Tata = tata })
-
+
toto.f6[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Object): Tata = null })
toto.f7[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Object): Tata = null })
toto.f8[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Object): Tata = null })
//toto.f9[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Object): D = null })
toto.f0[Tata](new Object{ type D = Tata; def m[E >: Null <: Object](x: Object): E = null })
-
+
/* Bug #1246 */
type Summable[T] = { def +(v : T) : T }
def sum[T <: Summable[T]](xs : List[T]) = xs.reduceLeft[T](_ + _)
-
+
/* Bug #1004 & #967 */
type S1 = { def f(p: this.type): Unit }
val s1 = new { def f(p: this.type): Unit = () }
-
+
type S2 = { type T; def f(p: T): Unit }
//val s2: S2 = new { type T = A; def f(p: T): Unit = () }
-
+
def s3[U >: Null <: Object](p: { def f(p: U): Unit; def u: U }) = ()
-
+
}
diff --git a/test/files/neg/switch.scala b/test/files/neg/switch.scala
index da7c867ba0..a3dfd869d6 100644
--- a/test/files/neg/switch.scala
+++ b/test/files/neg/switch.scala
@@ -16,44 +16,44 @@ object Main {
case 'f' | 'g' => true
case _ => false
}
-
+
def succ2(c: Char) = (c: @switch) match {
case 'A' | 'B' | 'C' => true
case Other.C2 => true
case Other.C4 => true
case _ => false
}
-
+
// has a guard
def fail1(c: Char) = (c: @switch) match {
case 'A' | 'B' | 'C' => true
case x if x == 'A' => true
case _ => false
}
-
+
// throwing in @unchecked on the next two to make sure
// multiple annotations are processed correctly
-
+
// thinks a val in an object is constant... so naive
def fail2(c: Char) = (c: @switch @unchecked) match {
case 'A' => true
case Other.C1 => true
case _ => false
}
-
+
// more naivete
def fail3(c: Char) = (c: @unchecked @switch) match {
case 'A' => true
case Other.C3 => true
case _ => false
}
-
+
// guard case done correctly
def succ3(c: Char) = (c: @switch) match {
case 'A' | 'B' | 'C' => true
case x => x == 'A'
}
-
+
// some ints just to mix it up a bit
def succ4(x: Int, y: Int) = ((x+y): @switch) match {
case 1 => 5
@@ -62,5 +62,5 @@ object Main {
case 4 => 50
case 5|6|7|8 => 100
case _ => -1
- }
+ }
}
diff --git a/test/files/neg/t0117.scala b/test/files/neg/t0117.scala
index ec34ac0e4e..c73227d26d 100644
--- a/test/files/neg/t0117.scala
+++ b/test/files/neg/t0117.scala
@@ -3,4 +3,4 @@ trait B extends A { println(super[A].a) }
object Test extends App {
new B {}
}
-
+
diff --git a/test/files/neg/t0152.scala b/test/files/neg/t0152.scala
index d86d59e974..dc77ac31a3 100644
--- a/test/files/neg/t0152.scala
+++ b/test/files/neg/t0152.scala
@@ -8,6 +8,6 @@ trait PlusOne extends Value[Int] {
object Test extends App {
object boom extends Value[java.lang.String]("foo") with PlusOne
-
+
println(boom.value) // class cast exception!
}
diff --git a/test/files/neg/t0218.check b/test/files/neg/t0218.check
index a22583d23b..6bb759156f 100644
--- a/test/files/neg/t0218.check
+++ b/test/files/neg/t0218.check
@@ -1,4 +1,4 @@
t0218.scala:10: error: class type required but APQ.this.P found
- List(new PP)
+ List(new PP)
^
one error found
diff --git a/test/files/neg/t0218.scala b/test/files/neg/t0218.scala
index 319be82a7a..3d1f52e39a 100644
--- a/test/files/neg/t0218.scala
+++ b/test/files/neg/t0218.scala
@@ -1,4 +1,4 @@
-trait APQ {
+trait APQ {
class Placement {
}
@@ -7,6 +7,6 @@ trait APQ {
type PP = P
def pq(numQueens: Int, numRows: Int) : List[Placement] = {
- List(new PP)
+ List(new PP)
}
}
diff --git a/test/files/neg/t0503.scala b/test/files/neg/t0503.scala
index 322e1ad132..a9b5dcb1dd 100644
--- a/test/files/neg/t0503.scala
+++ b/test/files/neg/t0503.scala
@@ -1,3 +1,3 @@
val x = new { } with { }
-trait A
+trait A
val y = new { } with A
diff --git a/test/files/neg/t0764.scala b/test/files/neg/t0764.scala
index daeeb21d91..9aebe04b79 100644
--- a/test/files/neg/t0764.scala
+++ b/test/files/neg/t0764.scala
@@ -9,6 +9,6 @@ trait Node extends NotNull { outer =>
class Main[NextType <: Node](value: Node { type T = NextType })
extends Top[Node { type T = NextType }] {
-
+
new Main[AType]( (value: AType).prepend )
}
diff --git a/test/files/neg/t0816.scala b/test/files/neg/t0816.scala
index 0128a0ad72..738a634166 100644
--- a/test/files/neg/t0816.scala
+++ b/test/files/neg/t0816.scala
@@ -6,7 +6,7 @@ case class Ctest(override val data: String) extends Btest(data, true)
class testCaseClass {
def test(x: Atest) = x match {
- case Ctest(data) => Console.println("C")
+ case Ctest(data) => Console.println("C")
case Btest(data, b) => Console.println("B")
}
}
diff --git a/test/files/neg/t1011.scala b/test/files/neg/t1011.scala
index 7dc3f49469..57a6ad7b45 100644
--- a/test/files/neg/t1011.scala
+++ b/test/files/neg/t1011.scala
@@ -3,7 +3,7 @@ import scala.xml._;
abstract class Test {
//val entity : String;
- def primitiveHeader : NodeSeq =
+ def primitiveHeader : NodeSeq =
Group({
<dl><code>{Text(entity)}</code>
<code>{Text(entity)}</code>
diff --git a/test/files/neg/t1112.scala b/test/files/neg/t1112.scala
index 1a88629faf..b2a374c785 100644
--- a/test/files/neg/t1112.scala
+++ b/test/files/neg/t1112.scala
@@ -1,13 +1,13 @@
// checks that error doesn't crash the compiler
-// (due to isFunctionType normalizing Type1 to a function type,
+// (due to isFunctionType normalizing Type1 to a function type,
// but then the code that used that test not using the normalized type for further operations)
class Test {
type Type1 = () => Unit
-
+
def call(p: Int)(f: => Type1) = {
f()
}
-
+
def run = {
call(0,() => System.out.println("here we are"))
}
diff --git a/test/files/neg/t112706A.check b/test/files/neg/t112706A.check
index ad403ab134..30d0c3ec91 100644
--- a/test/files/neg/t112706A.check
+++ b/test/files/neg/t112706A.check
@@ -1,6 +1,6 @@
t112706A.scala:5: error: constructor cannot be instantiated to expected type;
found : (T1, T2)
required: String
- case Tuple2(node,_) =>
+ case Tuple2(node,_) =>
^
one error found
diff --git a/test/files/neg/t112706A.scala b/test/files/neg/t112706A.scala
index 11304720bc..b7799af96d 100644
--- a/test/files/neg/t112706A.scala
+++ b/test/files/neg/t112706A.scala
@@ -2,7 +2,7 @@ package test;
trait Test {
def foo(p : List[Tuple2[String,String]]) = {
for (t <- p) t._1 match {
- case Tuple2(node,_) =>
+ case Tuple2(node,_) =>
}
}
}
diff --git a/test/files/neg/t1183.scala b/test/files/neg/t1183.scala
index 23868ab401..024c4abd54 100644
--- a/test/files/neg/t1183.scala
+++ b/test/files/neg/t1183.scala
@@ -9,7 +9,7 @@ object Test {
case class Bar(i:Int)
}
-
+
class Test717 {
val foo1 = new Foo(1)
@@ -27,7 +27,7 @@ object Test {
class Baz
object Bam
object Bar
-
+
def unapply(s : String) : Option[Bar] = Some(new Bar(s))
}
diff --git a/test/files/neg/t1477.scala b/test/files/neg/t1477.scala
index a9a6d678ca..ab13f14b06 100644
--- a/test/files/neg/t1477.scala
+++ b/test/files/neg/t1477.scala
@@ -8,7 +8,7 @@ object Test extends App {
type V <: D
val y: V#T = new B { }
}
-
+
trait Middle extends C {
type V <: (D with U)
}
diff --git a/test/files/neg/t1523.scala b/test/files/neg/t1523.scala
index 219fb0c060..b8754f4e15 100644
--- a/test/files/neg/t1523.scala
+++ b/test/files/neg/t1523.scala
@@ -1,5 +1,5 @@
-object test {
+object test {
def bug(x: Any) = x
-
+
def go() = bug("a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a", "a")
}
diff --git a/test/files/neg/t1623.scala b/test/files/neg/t1623.scala
index f5189aa4ca..d02fc2ed9e 100644
--- a/test/files/neg/t1623.scala
+++ b/test/files/neg/t1623.scala
@@ -1,7 +1,7 @@
package test
-trait A
-trait B
+trait A
+trait B
class BImpl extends B {
this: A =>
diff --git a/test/files/neg/t1705.scala b/test/files/neg/t1705.scala
index fabdca0ec6..bf1fcea815 100644
--- a/test/files/neg/t1705.scala
+++ b/test/files/neg/t1705.scala
@@ -17,7 +17,7 @@ object crashing {
}
}
}
-/*
+/*
Infinite loop in Typer.addLocals. Printing all calls to it:
diff --git a/test/files/neg/t1878.scala b/test/files/neg/t1878.scala
index 683dcb6b41..5278fbb7bd 100644
--- a/test/files/neg/t1878.scala
+++ b/test/files/neg/t1878.scala
@@ -1,13 +1,13 @@
object Test extends App {
- // illegal
+ // illegal
val err1 = "" match { case Seq(f @ _*, ',') => f }
-
+
// no error
val List(List(arg1, _*), _) = List(List(1,2,3), List(4,5,6))
-
+
// illegal
val List(List(_*, arg2), _) = List(List(1,2,3), List(4,5,6))
-
+
// illegal - bug #1764
null match {
case <p> { _* } </p> =>
diff --git a/test/files/neg/t2148.scala b/test/files/neg/t2148.scala
index 25788be84a..c0521d9864 100644
--- a/test/files/neg/t2148.scala
+++ b/test/files/neg/t2148.scala
@@ -1,6 +1,6 @@
-class A {
+class A {
var i = 0
- trait A1 extends A {
+ trait A1 extends A {
i += 1
}
}
diff --git a/test/files/neg/t2421b.scala b/test/files/neg/t2421b.scala
index d8159a8c37..a8d22f285e 100644
--- a/test/files/neg/t2421b.scala
+++ b/test/files/neg/t2421b.scala
@@ -12,6 +12,6 @@ object Test {
f
}
-/* bug:
+/* bug:
error: type arguments [Test2.A] do not conform to method b's type parameter bounds [X <: Test2.B]
*/ \ No newline at end of file
diff --git a/test/files/neg/t2441.scala b/test/files/neg/t2441.scala
index 6784ebb333..a8c9e728a2 100644
--- a/test/files/neg/t2441.scala
+++ b/test/files/neg/t2441.scala
@@ -1,5 +1,5 @@
trait X
-trait A {
+trait A {
def f: Option[X]
def g: Option[X]
}
@@ -8,7 +8,7 @@ object B {
}
class B extends A {
private class Bippy
-
+
override def f = Some(new B.Y)
override def g: Option[X] = Some(new B.Y)
}
diff --git a/test/files/neg/t2641.scala b/test/files/neg/t2641.scala
index bc048e039e..626d5d7852 100644
--- a/test/files/neg/t2641.scala
+++ b/test/files/neg/t2641.scala
@@ -8,7 +8,7 @@ abstract class ManagedSeqStrict[+A]
with GenericTraversableTemplate[A, ManagedSeqStrict]
{
override def companion: GenericCompanion[ManagedSeqStrict] = null
-
+
override def foreach[U](f: A => U): Unit = ()
}
@@ -17,9 +17,9 @@ trait ManagedSeq[+A, +Coll]
with TraversableView[A, ManagedSeqStrict[A]]
with TraversableViewLike[A, ManagedSeqStrict[A], ManagedSeq[A]]
{ self =>
-
+
override def underlying = throw new Exception("no underlying")
-
+
//trait Transformed[+B] extends ManagedSeq[B] with super.Transformed[B]
trait Transformed[+B] extends ManagedSeq[B, Coll] with super.Transformed[B]
diff --git a/test/files/neg/t2870.check b/test/files/neg/t2870.check
index 759af53626..6577577d3f 100644
--- a/test/files/neg/t2870.check
+++ b/test/files/neg/t2870.check
@@ -2,6 +2,6 @@ t2870.scala:1: error: not found: type Jar
class Jars(jar: Jar)
^
t2870.scala:6: error: illegal cyclic reference involving value <import>
- val scala = fromClasspathString(javaClassPath)
+ val scala = fromClasspathString(javaClassPath)
^
two errors found
diff --git a/test/files/neg/t2870.scala b/test/files/neg/t2870.scala
index 4de19242e3..59fba3e76d 100644
--- a/test/files/neg/t2870.scala
+++ b/test/files/neg/t2870.scala
@@ -1,9 +1,9 @@
class Jars(jar: Jar)
-object Jars {
+object Jars {
import scala.util.Properties.javaClassPath
- val scala = fromClasspathString(javaClassPath)
-
+ val scala = fromClasspathString(javaClassPath)
+
def fromClasspathString(s: String): Jars = null
}
diff --git a/test/files/neg/t2910.scala b/test/files/neg/t2910.scala
index d9a781032c..fa51038dcd 100644
--- a/test/files/neg/t2910.scala
+++ b/test/files/neg/t2910.scala
@@ -10,7 +10,7 @@ object Junk {
val z = 0
lazy val s = "abc"
}
-
+
def test4() {
lazy val x = {
x
@@ -35,5 +35,5 @@ object Test {
lazy val f: Int = g
var x: Int = f
lazy val g: Int = x
- }
+ }
}
diff --git a/test/files/neg/t2918.check b/test/files/neg/t2918.check
index aae3045e8a..263beab518 100644
--- a/test/files/neg/t2918.check
+++ b/test/files/neg/t2918.check
@@ -1,10 +1,10 @@
t2918.scala:2: error: illegal cyclic reference involving type A
- def g[X, A[X] <: A[X]](x: A[X]) = x
+ def g[X, A[X] <: A[X]](x: A[X]) = x
^
t2918.scala:2: error: cyclic aliasing or subtyping involving type A
- def g[X, A[X] <: A[X]](x: A[X]) = x
+ def g[X, A[X] <: A[X]](x: A[X]) = x
^
t2918.scala:2: error: A does not take type parameters
- def g[X, A[X] <: A[X]](x: A[X]) = x
+ def g[X, A[X] <: A[X]](x: A[X]) = x
^
three errors found
diff --git a/test/files/neg/t2918.scala b/test/files/neg/t2918.scala
index ff2be39ae0..03477ccfbf 100644
--- a/test/files/neg/t2918.scala
+++ b/test/files/neg/t2918.scala
@@ -1,3 +1,3 @@
object Test {
- def g[X, A[X] <: A[X]](x: A[X]) = x
+ def g[X, A[X] <: A[X]](x: A[X]) = x
}
diff --git a/test/files/neg/t3015.check b/test/files/neg/t3015.check
index 43ce1dc122..0b394e23d6 100644
--- a/test/files/neg/t3015.check
+++ b/test/files/neg/t3015.check
@@ -1,11 +1,11 @@
t3015.scala:7: error: scrutinee is incompatible with pattern type;
found : _$1 where type +_$1
required: String
- val b(foo) = "foo"
+ val b(foo) = "foo"
^
t3015.scala:7: error: type mismatch;
found : String with _$1(in object Test) where type +_$1(in object Test)
required: (some other)_$1(in object Test) where type +(some other)_$1(in object Test)
- val b(foo) = "foo"
+ val b(foo) = "foo"
^
two errors found
diff --git a/test/files/neg/t3015.scala b/test/files/neg/t3015.scala
index adfa15b388..9af8f30c65 100644
--- a/test/files/neg/t3015.scala
+++ b/test/files/neg/t3015.scala
@@ -4,5 +4,5 @@ class UnApp[P] {
object Test extends App {
val b: UnApp[_] = new UnApp[String]
- val b(foo) = "foo"
+ val b(foo) = "foo"
}
diff --git a/test/files/neg/t3118.scala b/test/files/neg/t3118.scala
index 9be24c1ed4..75f3b8f50c 100644
--- a/test/files/neg/t3118.scala
+++ b/test/files/neg/t3118.scala
@@ -1,8 +1,8 @@
class O1 {
private[this] case class C()
-
+
val x = new O1
-
+
println(x.C()) // should not be accessible
println(new x.C) // is correctly not accessible
}
diff --git a/test/files/neg/t3224.scala b/test/files/neg/t3224.scala
index 589e1db4aa..774de3335a 100644
--- a/test/files/neg/t3224.scala
+++ b/test/files/neg/t3224.scala
@@ -1,16 +1,16 @@
object Texts{
- def textL[T](list: List[T]) = {
- list match{
- case List() => "Empty"
- case List(_) => "One"
+ def textL[T](list: List[T]) = {
+ list match{
+ case List() => "Empty"
+ case List(_) => "One"
case List(_*) => "Many"
}
}
- def textA[T](array: Array[T]) = {
- array match{
- case Array() => "Empty"
- case Array(_) => "One"
+ def textA[T](array: Array[T]) = {
+ array match{
+ case Array() => "Empty"
+ case Array(_) => "One"
case Array(_*) => "Many"
}
}
@@ -23,7 +23,7 @@ object Test extends App {
array.toList
}
-
+
println(Texts textL List()); println(Texts textL List(1)); println(Texts textL List(1, 1));
println(Texts textL Array()); println(Texts textL Array(1)); println(Texts textL Array(1, 1))
diff --git a/test/files/neg/t3399.scala b/test/files/neg/t3399.scala
index 3edaa0724f..b1fe4e5ee2 100644
--- a/test/files/neg/t3399.scala
+++ b/test/files/neg/t3399.scala
@@ -10,7 +10,7 @@ object Nats {
type FoldR[Init <: Type, Type, F <: Fold[Nat, Type]] =
F#Apply[Succ[N], N#FoldR[Init, Type, F]]
}
-
+
type Add[A <: Nat, B <: Nat] = A#FoldR[B, Nat, Inc]
trait Fold[-Elem, Value] {
type Apply[N <: Elem, Acc <: Value] <: Value
@@ -18,7 +18,7 @@ object Nats {
type Inc = Fold[Any, Nat] {
type Apply[N <: Any, Acc <: Nat] = Succ[Acc]
}
-
+
type _1 = Succ[_0]
implicitly[ Add[_1, _1] =:= _1]
} \ No newline at end of file
diff --git a/test/files/neg/t3453.scala b/test/files/neg/t3453.scala
index 090b777151..0f1c6e0282 100644
--- a/test/files/neg/t3453.scala
+++ b/test/files/neg/t3453.scala
@@ -25,7 +25,7 @@ object O {
class T2a {
import O._
-
+
def x: B = {
val aToB = 3
// ok: doesn't compile, because aToB method requires 'T.this.' prefix
@@ -39,7 +39,7 @@ class T2a {
class T2b {
import O.aToB
-
+
def x: B = {
val aToB = 3
// ok: doesn't compile, because aToB method requires 'T.this.' prefix
@@ -53,7 +53,7 @@ class T2b {
class T3 {
implicit def aToB(a: A): B = new B
-
+
def x: B = {
val aToB = 3
// ok: doesn't compile, because aToB method requires 'T.this.' prefix
diff --git a/test/files/neg/t3507.scala b/test/files/neg/t3507.scala
index 9a8c7c5462..32688d3934 100644
--- a/test/files/neg/t3507.scala
+++ b/test/files/neg/t3507.scala
@@ -8,7 +8,7 @@ class A {
object Test {
var a: A = new A // mutable
val c /*: object _1.b.c forSome { val _1: A } */ = a.m // widening using existential
-
+
def mani[T: Manifest](x: T) = ()
mani/*[object _1.b.c]*/(c) // kaboom in manifestOfType / TreeGen.mkAttributedQualifier
// --> _1 is not in scope here
diff --git a/test/files/neg/t3683b.scala b/test/files/neg/t3683b.scala
index 646e418121..fbf75b6856 100644
--- a/test/files/neg/t3683b.scala
+++ b/test/files/neg/t3683b.scala
@@ -8,7 +8,7 @@ case class Z[T >: Bar <: Foo](
z1: W[T]
) extends W[T]
-object Main {
+object Main {
// should fail for including X()
def f1(w: W[Bar]): Int = {
w match {
diff --git a/test/files/neg/t3714-neg.scala b/test/files/neg/t3714-neg.scala
index 753b367ec0..4b56f9348c 100644
--- a/test/files/neg/t3714-neg.scala
+++ b/test/files/neg/t3714-neg.scala
@@ -29,7 +29,7 @@ object Test {
case BreakImpl(x) => x
case _ => -1
}
-
+
def main(args: Array[String]) {
val break = BreakImpl(22)
assert(f1(break) == 22)
diff --git a/test/files/neg/t3736.scala b/test/files/neg/t3736.scala
index cf0920912a..1efa397928 100644
--- a/test/files/neg/t3736.scala
+++ b/test/files/neg/t3736.scala
@@ -7,14 +7,14 @@ object Test {
def f5 = super.!=(new AnyRef)
def f6 = super.##
}
-
+
// Ill-advised overloads to be sure...
class B {
def ##(x: String) = true
def ==(x1: String, xs: List[_]) = true
def !=(x1: String, xs: List[_]) = true
}
-
+
class C extends B {
override def ##(x: String) = super.##(x)
override def ==(x1: String, xs: List[_]) = super.==(x1, xs)
diff --git a/test/files/neg/t3757/B.scala b/test/files/neg/t3757/B.scala
index 7c78fb634e..68766a9f6e 100644
--- a/test/files/neg/t3757/B.scala
+++ b/test/files/neg/t3757/B.scala
@@ -1,5 +1,5 @@
package b
-class B extends a.A {
+class B extends a.A {
override def foo = "B"
} \ No newline at end of file
diff --git a/test/files/neg/t3776.check b/test/files/neg/t3776.check
index 0dfe129596..4a5284cf0f 100644
--- a/test/files/neg/t3776.check
+++ b/test/files/neg/t3776.check
@@ -1,4 +1,4 @@
t3776.scala:8: error: value someOperation is not a member of _$1
- def parsedAs[T](v: T) = MyParser.parse(pattern, a).get someOperation v
+ def parsedAs[T](v: T) = MyParser.parse(pattern, a).get someOperation v
^
one error found
diff --git a/test/files/neg/t3776.scala b/test/files/neg/t3776.scala
index 6e368165aa..454f914316 100644
--- a/test/files/neg/t3776.scala
+++ b/test/files/neg/t3776.scala
@@ -5,6 +5,6 @@ object MyParser extends RegexParsers with PackratParsers {
object Test {
class ParsedAs(a: String) (implicit pattern: MyParser.Parser[_]) {
- def parsedAs[T](v: T) = MyParser.parse(pattern, a).get someOperation v
+ def parsedAs[T](v: T) = MyParser.parse(pattern, a).get someOperation v
}
}
diff --git a/test/files/neg/t3816.scala b/test/files/neg/t3816.scala
index 31b0825f1d..b7f3fde699 100644
--- a/test/files/neg/t3816.scala
+++ b/test/files/neg/t3816.scala
@@ -1,7 +1,7 @@
class B {
def ::(a: List[Int]) {
a match {
- case x::xs =>
+ case x::xs =>
case _ =>
}
}
@@ -32,11 +32,11 @@ object Test {
}
}
- var foo = 0
+ var foo = 0
def testFail2( x: Any ) = {
x match {
case Some( `foo` ) =>
case _ =>
}
- }
+ }
}
diff --git a/test/files/neg/t3987.scala b/test/files/neg/t3987.scala
index 1226d80228..c97d57b38f 100644
--- a/test/files/neg/t3987.scala
+++ b/test/files/neg/t3987.scala
@@ -1,7 +1,7 @@
class Gox {
object Zed { }
class Zed { }
-}
+}
object Test {
type GoxZed = t#Zed forSome { type t <: Gox }
diff --git a/test/files/neg/t4079/t4079_1.scala b/test/files/neg/t4079/t4079_1.scala
index cbae864788..8dc73556c7 100644
--- a/test/files/neg/t4079/t4079_1.scala
+++ b/test/files/neg/t4079/t4079_1.scala
@@ -9,7 +9,7 @@ trait ComposeT[F[_],G[_]] {
case class Compose[F[_],G[_]]() {
def Functor(implicit f: Functor[F], g: Functor[G]): Functor[ComposeT[F,G]#Apply] =
new Functor[ComposeT[F,G]#Apply] {
- def map[A,B](c: ComposeT[F,G]#Apply[A], h: A => B) =
+ def map[A,B](c: ComposeT[F,G]#Apply[A], h: A => B) =
f.map(c, (x:G[A]) => g.map(x,h))
}
}
@@ -19,10 +19,10 @@ object Cat {
}
object Functors {
- implicit val List = new Functor[List] {
+ implicit val List = new Functor[List] {
def map[A,B](fa: List[A], f: A => B): List[B] = fa map f
}
- implicit val Option = new Functor[Option] {
+ implicit val Option = new Functor[Option] {
def map[A,B](fa: Option[A], f: A => B): Option[B] = fa map f
}
}
diff --git a/test/files/neg/t4174.scala b/test/files/neg/t4174.scala
index b4a5ab29da..f5242950c2 100644
--- a/test/files/neg/t4174.scala
+++ b/test/files/neg/t4174.scala
@@ -2,7 +2,7 @@ class C
object Test {
def foo(c: C) = 0
-
+
def main(args: Array[String]): Unit = {
foo(new C { override def bar = 1 })
}
diff --git a/test/files/neg/t4196.scala b/test/files/neg/t4196.scala
index 06e1f28d54..ac00b19bee 100644
--- a/test/files/neg/t4196.scala
+++ b/test/files/neg/t4196.scala
@@ -1,6 +1,6 @@
object Weird {
- { (s: String) =>
+ { (s: String) =>
val foo = Some(s); // to illustrate that vals are printed in the error
- foo
+ foo
}.apply("first param") ("spurious param")
} \ No newline at end of file
diff --git a/test/files/neg/t4217.check b/test/files/neg/t4217.check
index 6c49ec3354..e8cd5fd69e 100644
--- a/test/files/neg/t4217.check
+++ b/test/files/neg/t4217.check
@@ -1,4 +1,4 @@
t4217.scala:2: error: 'case' expected but '}' found.
- 42 match { }
+ 42 match { }
^
one error found
diff --git a/test/files/neg/t4217.scala b/test/files/neg/t4217.scala
index 0817df2cb7..9343a9be54 100644
--- a/test/files/neg/t4217.scala
+++ b/test/files/neg/t4217.scala
@@ -1,3 +1,3 @@
object A extends App {
- 42 match { }
+ 42 match { }
}
diff --git a/test/files/neg/t4221.scala b/test/files/neg/t4221.scala
index 0a8b8add18..c979f7936e 100644
--- a/test/files/neg/t4221.scala
+++ b/test/files/neg/t4221.scala
@@ -1,5 +1,5 @@
class Cl {
- class Sub[TheSub <: Sub[TheSub]]
+ class Sub[TheSub <: Sub[TheSub]]
}
case class Wrapper[T](v: T)
diff --git a/test/files/neg/t4417.scala b/test/files/neg/t4417.scala
index 3f6ddc8153..7f104e58bf 100644
--- a/test/files/neg/t4417.scala
+++ b/test/files/neg/t4417.scala
@@ -2,12 +2,12 @@
-class Pixel[@specialized T] protected (var v: T)
+class Pixel[@specialized T] protected (var v: T)
object Pixel {
type Pixel1d = Pixel[Double]
-
+
def apply(v: Double): Pixel1d = new Pixel1d(v)
}
diff --git a/test/files/neg/t4431.scala b/test/files/neg/t4431.scala
index 5fbb239e04..91e4abfe36 100644
--- a/test/files/neg/t4431.scala
+++ b/test/files/neg/t4431.scala
@@ -7,7 +7,7 @@ object Test {
// this earns a VerifyError.
trait C { def wait (): Unit }
class D { }
-
+
def main(args: Array[String]): Unit = {
new B with A { }
new BB
diff --git a/test/files/neg/t4457_1.scala b/test/files/neg/t4457_1.scala
index 11f12379f6..91d9bc9f51 100644
--- a/test/files/neg/t4457_1.scala
+++ b/test/files/neg/t4457_1.scala
@@ -22,7 +22,7 @@ object ImplicitConvAmbiguity2 {
def aFunc[A](a: NQ[A]) = new BB[A]
def bFunc[T](e1: N[T]) = {}
-
+
def typeMe1 {
val x = aFunc(4F)
bFunc(x)
diff --git a/test/files/neg/t4457_2.scala b/test/files/neg/t4457_2.scala
index f3a170f1f2..b2e7505cf2 100644
--- a/test/files/neg/t4457_2.scala
+++ b/test/files/neg/t4457_2.scala
@@ -22,7 +22,7 @@ object ImplicitConvAmbiguity2 {
def aFunc[A](a: NQ[A]) = new BB[A]
def bFunc[T](e1: N[T]) = {}
-
+
def typeMe2 {
val x = aFunc(4F)
bFunc(x)
diff --git a/test/files/neg/t4851/J.java b/test/files/neg/t4851/J.java
index 9c35b8a16e..dbf8b8288e 100644
--- a/test/files/neg/t4851/J.java
+++ b/test/files/neg/t4851/J.java
@@ -1,14 +1,14 @@
public class J {
Object x;
-
+
public J(Object x) {
this.x = x;
}
-
+
public J(int x1, int x2, int x3, int x4, int x5, int x6) {
this.x = null;
}
-
+
public String toString() {
return "J:" + x.getClass();
}
diff --git a/test/files/neg/t4851/J2.java b/test/files/neg/t4851/J2.java
index 82954d9489..c3a7231315 100644
--- a/test/files/neg/t4851/J2.java
+++ b/test/files/neg/t4851/J2.java
@@ -1,10 +1,10 @@
public class J2<T> {
T x;
-
+
public <T> J(T x) {
this.x = x;
}
-
+
public String toString() {
return "J2:" + x.getClass();
}
diff --git a/test/files/neg/t4851/S.scala b/test/files/neg/t4851/S.scala
index deb42980ab..1550892967 100644
--- a/test/files/neg/t4851/S.scala
+++ b/test/files/neg/t4851/S.scala
@@ -5,7 +5,7 @@ object Test {
val y1 = Some(1, 2, 3)
val y2 = new Some(1, 2, 3)
-
+
val z1 = new J2
val z2 = new J2()
val z3 = new J2(())
@@ -15,7 +15,7 @@ object Test {
println(x2)
println(x3)
println(y1)
-
+
println(z1)
println(z2)
println(z3)
diff --git a/test/files/neg/t4877.scala b/test/files/neg/t4877.scala
index 5d97877518..9cad156f84 100644
--- a/test/files/neg/t4877.scala
+++ b/test/files/neg/t4877.scala
@@ -13,7 +13,7 @@ class B {
def bar(x: Int): Mom
def bippy(): List[Mom]
}
-
+
val x: Bippy = new AnyRef {
type Mom = String
def bar(x: Int) = 55
diff --git a/test/files/neg/t5120.scala b/test/files/neg/t5120.scala
index f28b2cfb4f..c7063b7d15 100644
--- a/test/files/neg/t5120.scala
+++ b/test/files/neg/t5120.scala
@@ -6,7 +6,7 @@ class Cell[T](x0: T) {
object Test {
val str: Cell[String] = new Cell("a")
val other: Cell[Int] = new Cell(0)
-
+
def main(args: Array[String]): Unit = {
List(str, other) foreach (_.x1 = new AnyRef)
str.x1.length
diff --git a/test/files/neg/t520.scala b/test/files/neg/t520.scala
index 076aca3122..949a509518 100644
--- a/test/files/neg/t520.scala
+++ b/test/files/neg/t520.scala
@@ -4,6 +4,6 @@ object test {
assert(keyword != null);
}
- def verifyKeyword(source : java.io.File, pos : Int) =
+ def verifyKeyword(source : java.io.File, pos : Int) =
verifyKeyword("", source, pos);
}
diff --git a/test/files/neg/t558.scala b/test/files/neg/t558.scala
index 58b030347c..4941a06c3b 100644
--- a/test/files/neg/t558.scala
+++ b/test/files/neg/t558.scala
@@ -11,7 +11,7 @@ abstract class NewModel {
val parent : SymbolURL;
final val top = parent.top;
final val source = top.file;
-
+
}
abstract class RootURL extends SymbolURL {
final val top : RootURL = this;
diff --git a/test/files/neg/t563.scala b/test/files/neg/t563.scala
index 204ad3cbdd..d367e2a73c 100644
--- a/test/files/neg/t563.scala
+++ b/test/files/neg/t563.scala
@@ -1,6 +1,6 @@
object Test {
def map[A,R](a : List[A], f : A => R) : List[R] = a.map(f);
-
+
def split(sn : Iterable[List[Option[Int]]]) : Unit =
for (n <- sn)
map(n,ptr => Option(ptr.get));
diff --git a/test/files/neg/t576.scala b/test/files/neg/t576.scala
index fd83217a45..fa7ee6019f 100644
--- a/test/files/neg/t576.scala
+++ b/test/files/neg/t576.scala
@@ -4,16 +4,16 @@ abstract class BaseListXXX {
type Node <: BaseNode;
abstract class BaseNode {
}
-}
+}
trait PriorityTreeXXX extends BaseListXXX {
type Node <: BasicTreeNode;
-
+
trait BasicTreeNode extends BaseNode {
- def sibling: Node;
+ def sibling: Node;
def insert(dir : Int, node : Node) = {
if (true) sibling.insert(node);
//else insert(node);
-
+
}
def insert(node : Node) : Unit = {}
}
diff --git a/test/files/neg/t588.scala b/test/files/neg/t588.scala
index f30937377e..1bc6d2680f 100644
--- a/test/files/neg/t588.scala
+++ b/test/files/neg/t588.scala
@@ -1,15 +1,15 @@
abstract class Test0 {
- def visit(f: Int => Unit): Boolean
+ def visit(f: Int => Unit): Boolean
def visit(f: Int => String): Boolean
}
trait Test {
type TypeA <: TraitA;
type TypeB <: TypeA with TraitB;
-
+
def f(node : TypeA) : Unit;
def f(brac : TypeB) : Unit;
-
+
trait TraitA;
trait TraitB;
-
+
}
diff --git a/test/files/neg/t591.scala b/test/files/neg/t591.scala
index 0f0b02395c..5f2397e6a9 100644
--- a/test/files/neg/t591.scala
+++ b/test/files/neg/t591.scala
@@ -1,17 +1,17 @@
abstract class BaseList {
type Node <: BaseNode;
-
-
+
+
abstract class BaseNode {
protected def self : Node;
private[BaseList] def self00 = self;
def dirty : Unit = {}
def replaceWith(node : Node) = {}
}
-
+
implicit def baseNode2Node(bnode : BaseNode): Node = bnode.self00;
-
+
}
@@ -20,22 +20,22 @@ trait BaseFlow extends BaseList {
type Flow <: FlowBase;
type Output <: OutputBase;
type Input <: InputBase;
-
+
abstract class FlowBase {
-
+
}
trait OutputBase extends FlowBase {
-
+
}
trait InputBase extends FlowBase {
-
+
}
-
+
trait BFNode extends BaseNode {
private var input : Input = _;
private var output : Output = _;
-
+
def input_=(in : Input) = {}
-
+
}
}
diff --git a/test/files/neg/t608.scala b/test/files/neg/t608.scala
index 34dc4c0352..1f12764dd1 100644
--- a/test/files/neg/t608.scala
+++ b/test/files/neg/t608.scala
@@ -2,7 +2,7 @@ trait CrashDueToTypeError {
def id[a](x :a) :a = x
trait Bifunctor {
- type a; // content
+ type a; // content
type s <: Bifunctor
// uncomment this-vvvvvvvvvvvvvvvvvvvvvvvvvvvv, and it compiles
diff --git a/test/files/neg/t692.check b/test/files/neg/t692.check
index 25dda7bd1b..12b7d40ba5 100644
--- a/test/files/neg/t692.check
+++ b/test/files/neg/t692.check
@@ -11,7 +11,7 @@ t692.scala:13: error: class Foo takes type parameters
case class BarType[T3 <: Foo](tpeT : RefType[T3]) extends ClassType[Bar[T3],Foo](FooType);
^
t692.scala:14: error: class Foo takes type parameters
- implicit def typeOfBar[T4 <: Foo](implicit elem : RefType[T4]) : RefType[Bar[T4]] =
+ implicit def typeOfBar[T4 <: Foo](implicit elem : RefType[T4]) : RefType[Bar[T4]] =
^
t692.scala:15: error: type mismatch;
found : test3.this.BarType[T4]
diff --git a/test/files/neg/t692.scala b/test/files/neg/t692.scala
index 24e1d2fea3..f230a6bacf 100644
--- a/test/files/neg/t692.scala
+++ b/test/files/neg/t692.scala
@@ -5,15 +5,15 @@ abstract class test3 {
abstract class RefType[C <: AnyRef] extends Type[C];
case class ObjectType() extends RefType[AnyRef];
abstract class ClassType[C <: Z, Z <: AnyRef](zuper : RefType[Z]) extends RefType[C];
-
+
case class FooType() extends ClassType[Foo,AnyRef](ObjectType());
implicit def typeOfFoo = FooType();
case class BarType[T3 <: Foo](tpeT : RefType[T3]) extends ClassType[Bar[T3],Foo](FooType);
- implicit def typeOfBar[T4 <: Foo](implicit elem : RefType[T4]) : RefType[Bar[T4]] =
+ implicit def typeOfBar[T4 <: Foo](implicit elem : RefType[T4]) : RefType[Bar[T4]] =
BarType(elem);
-
+
class Foo[A <: AnyRef];
class Bar[A <: Foo](implicit tpeA : Type[A]) extends Foo;
diff --git a/test/files/neg/t693.check b/test/files/neg/t693.check
index 25bd141501..62325b5c60 100644
--- a/test/files/neg/t693.check
+++ b/test/files/neg/t693.check
@@ -1,4 +1,4 @@
t693.scala:4: error: x is already defined as value x
- val x : Int = 10;
+ val x : Int = 10;
^
one error found
diff --git a/test/files/neg/t693.scala b/test/files/neg/t693.scala
index 3a9e6247a8..d2074bee38 100644
--- a/test/files/neg/t693.scala
+++ b/test/files/neg/t693.scala
@@ -1,5 +1,5 @@
abstract class test4 {
trait Type;
val x : Type = null;
- val x : Int = 10;
+ val x : Int = 10;
}
diff --git a/test/files/neg/t715.scala b/test/files/neg/t715.scala
index 87b2525a63..a5ccd567f9 100644
--- a/test/files/neg/t715.scala
+++ b/test/files/neg/t715.scala
@@ -1,4 +1,4 @@
-package test;
+package test;
trait B {
type Node <: NodeImpl;
trait NodeImpl {
diff --git a/test/files/neg/t783.scala b/test/files/neg/t783.scala
index 59f7c7f97d..5d20bc6d24 100644
--- a/test/files/neg/t783.scala
+++ b/test/files/neg/t783.scala
@@ -18,7 +18,7 @@ object Main extends App {
def globalInit : Global;
final def globalInit0 = globalInit.asInstanceOf[global.type];
}
-
+
object global0 extends Global {
object analyzer extends Analyzer {
type Global = global0.type;
diff --git a/test/files/neg/t798.scala b/test/files/neg/t798.scala
index a2bf66d19b..b4a1939444 100644
--- a/test/files/neg/t798.scala
+++ b/test/files/neg/t798.scala
@@ -4,5 +4,5 @@ trait Test[Bracks <: Bracks] {
class C[T]
val bracks : Bracks;
val singletons = f(bracks);
-
+
}
diff --git a/test/files/neg/t836.scala b/test/files/neg/t836.scala
index 3633b816c6..de23cf5387 100644
--- a/test/files/neg/t836.scala
+++ b/test/files/neg/t836.scala
@@ -10,7 +10,7 @@ abstract class A {
}
class B extends A {
- type MyObj = ObjImpl
+ type MyObj = ObjImpl
val myString: S = "hello"
val realString: String = myString // error: type missmatch
}
diff --git a/test/files/neg/t856.scala b/test/files/neg/t856.scala
index fea216bfad..e50084b6bd 100644
--- a/test/files/neg/t856.scala
+++ b/test/files/neg/t856.scala
@@ -1,4 +1,4 @@
-trait Complex extends Product2[Double,Double]
+trait Complex extends Product2[Double,Double]
class ComplexRect(val _1:Double, _2:Double) extends Complex {
override def toString = "ComplexRect("+_1+","+_2+")"
diff --git a/test/files/neg/t876.scala b/test/files/neg/t876.scala
index 1f6a90dff3..fb1461a7d3 100644
--- a/test/files/neg/t876.scala
+++ b/test/files/neg/t876.scala
@@ -11,11 +11,11 @@ object AssertionError extends AnyRef with App
class Manager
{
final class B {}
-
+
val map = new HashMap[A, B]
}
-
-
+
+
def test[T](f: => T) { f }
test {
diff --git a/test/files/neg/t877.scala b/test/files/neg/t877.scala
index 5e132a1dd4..8cb98279db 100644
--- a/test/files/neg/t877.scala
+++ b/test/files/neg/t877.scala
@@ -1,3 +1,3 @@
-class A
+class A
trait Foo extends A(22A, Bug!) {}
diff --git a/test/files/neg/t944.scala b/test/files/neg/t944.scala
index dc80e5f49f..352269a80b 100644
--- a/test/files/neg/t944.scala
+++ b/test/files/neg/t944.scala
@@ -1,6 +1,6 @@
object TooManyArgsFunction {
- val f = (a1:Int, a2:Int, a3:Int, a4:Int, a5:Int, a6:Int, a7:Int, a8:Int,
- a9:Int, a10:Int, a11:Int, a12:Int, a13:Int, a14:Int, a15:Int,
- a16:Int, a17:Int, a18:Int, a19:Int, a20:Int, a21:Int, a22:Int,
+ val f = (a1:Int, a2:Int, a3:Int, a4:Int, a5:Int, a6:Int, a7:Int, a8:Int,
+ a9:Int, a10:Int, a11:Int, a12:Int, a13:Int, a14:Int, a15:Int,
+ a16:Int, a17:Int, a18:Int, a19:Int, a20:Int, a21:Int, a22:Int,
a23:Int) => 1
}
diff --git a/test/files/neg/tailrec.scala b/test/files/neg/tailrec.scala
index e0ebde9863..5b9018ae89 100644
--- a/test/files/neg/tailrec.scala
+++ b/test/files/neg/tailrec.scala
@@ -9,21 +9,21 @@ object Winners {
@tailrec def loopsucc1(x: Int): Int = loopsucc1(x - 1)
@tailrec def loopsucc2[T](x: Int): Int = loopsucc2[T](x - 1)
-
+
def ding() {
object dong {
@tailrec def loopsucc3(x: Int): Int = loopsucc3(x)
}
()
}
-
+
def inner(q: Int) = {
@tailrec
def loopsucc4(x: Int): Int = loopsucc4(x + 1)
-
+
loopsucc4(q)
}
-
+
object innerBob {
@tailrec def loopsucc5(x: Int): Int = loopsucc5(x)
}
@@ -45,19 +45,19 @@ object Failures {
else n * facfail(n - 1)
}
-class Failures {
+class Failures {
// not private, not final
@tailrec def fail1(x: Int): Int = fail1(x)
-
+
// a typical between-chair-and-keyboard error
@tailrec final def fail2[T](xs: List[T]): List[T] = xs match {
case Nil => Nil
case x :: xs => x :: fail2[T](xs)
}
-
+
// unsafe
@tailrec final def fail3[T](x: Int): Int = fail3(x - 1)
-
+
// unsafe
class Tom[T](x: Int) {
@tailrec final def fail4[U](other: Tom[U], x: Int): Int = other.fail4[U](other, x - 1)
diff --git a/test/files/neg/tcpoly_infer_ticket1162.scala b/test/files/neg/tcpoly_infer_ticket1162.scala
index 0552b42a22..b88bd358d9 100644
--- a/test/files/neg/tcpoly_infer_ticket1162.scala
+++ b/test/files/neg/tcpoly_infer_ticket1162.scala
@@ -1,8 +1,8 @@
object Test {
- trait Expression[A,B]
+ trait Expression[A,B]
case class Lift[A,B,F[_]]() extends Expression[F[A],F[B]]
-
+
def simplify[A,B]: Expression[A,B] = Lift[A,B]()
}
diff --git a/test/files/neg/tcpoly_ticket2101.scala b/test/files/neg/tcpoly_ticket2101.scala
index 68f061ce70..3af07acfac 100644
--- a/test/files/neg/tcpoly_ticket2101.scala
+++ b/test/files/neg/tcpoly_ticket2101.scala
@@ -4,10 +4,10 @@ class T2[X] extends T[T2, X] // ill-typed
// Forall Y. T2[Y] <: T[T2, X]
// debugging before fix:
-// def isSubType0 -->
+// def isSubType0 -->
// case (PolyType(tparams1, res1), PolyType(tparams2, res2)) => println("<:<PT: "+((tparams1, res1), (tparams2, res2))) //@MDEBUG
// (tparams1.length == tparams2.length &&
-// List.forall2(tparams1, tparams2)
+// List.forall2(tparams1, tparams2)
// ((p1, p2) => p2.info.substSym(tparams2, tparams1) <:< p1.info) &&
// res1 <:< res2.substSym(tparams2, tparams1))
@@ -22,7 +22,7 @@ class T2[X] extends T[T2, X] // ill-typed
// (tparams1.length == tparams2.length &&
// {
// val tpsFresh = cloneSymbols(tparams1) // @M cloneSymbols(tparams2) should be equivalent -- TODO: check
-// List.forall2(tparams1, tparams2)
+// List.forall2(tparams1, tparams2)
// ((p1, p2) => p2.info.substSym(tparams2, tpsFresh) <:< p1.info.substSym(tparams1, tpsFresh)) &&
-// res1.substSym(tparams1, tpsFresh) <:< res2.substSym(tparams2, tpsFresh)
+// res1.substSym(tparams1, tpsFresh) <:< res2.substSym(tparams2, tpsFresh)
// })
diff --git a/test/files/neg/tcpoly_typealias.scala b/test/files/neg/tcpoly_typealias.scala
index 6c7f80cc0b..96e9349298 100644
--- a/test/files/neg/tcpoly_typealias.scala
+++ b/test/files/neg/tcpoly_typealias.scala
@@ -12,7 +12,7 @@ trait A3 {
trait FooCov[+x]
trait FooCon[-x]
-trait FooBound[+x <: String]
+trait FooBound[+x <: String]
trait BOk1 extends A {
type m[+x] = FooCov[x]
@@ -30,8 +30,8 @@ trait BOk4 extends A3 {
type m[+x] = FooCov[x] // weaker variance
}
-// there are two aspects to check:
- // does type alias signature (not considering RHS) correspond to abstract type member in super class
+// there are two aspects to check:
+ // does type alias signature (not considering RHS) correspond to abstract type member in super class
// does RHS correspond to the type alias sig
trait BInv extends A{
type m[x] = FooCov[x] // error: invariant x in alias def
diff --git a/test/files/neg/tcpoly_variance_enforce.scala b/test/files/neg/tcpoly_variance_enforce.scala
index ddff0e9f94..0db7b692f8 100644
--- a/test/files/neg/tcpoly_variance_enforce.scala
+++ b/test/files/neg/tcpoly_variance_enforce.scala
@@ -6,7 +6,7 @@ trait coll3[m[x]]
trait coll4[m[x <: y], y]
-class FooInvar[x]
+class FooInvar[x]
class FooContra[-x]
class FooCov[+x]
class FooString[+x <: String]
@@ -15,15 +15,15 @@ object fcollok extends coll[FooCov]
object fcollinv extends coll[FooInvar] // error
object fcollcon extends coll[FooContra] // error
object fcollwb extends coll[FooString] // error
-
+
object fcoll2ok extends coll2[FooCov] // error
object fcoll2inv extends coll2[FooInvar] // error
-object fcoll2con extends coll2[FooContra]
+object fcoll2con extends coll2[FooContra]
object fcoll2wb extends coll2[FooString] // error
-
-object fcoll3ok extends coll3[FooCov]
-object fcoll3inv extends coll3[FooInvar]
-object fcoll3con extends coll3[FooContra]
+
+object fcoll3ok extends coll3[FooCov]
+object fcoll3inv extends coll3[FooInvar]
+object fcoll3con extends coll3[FooContra]
object fcoll3wb extends coll3[FooString] // error
object fcoll4ok extends coll4[FooString, String]
@@ -33,7 +33,7 @@ object fcoll4_2 extends coll4[FooString, Any] // error
object test {
var ok: coll[FooCov] = _
-
+
def x: coll[FooInvar] = sys.error("foo") // error
def y: coll[FooContra] = sys.error("foo") // error
}
diff --git a/test/files/neg/type-diagnostics.scala b/test/files/neg/type-diagnostics.scala
index c4171328de..de7e7adc3c 100644
--- a/test/files/neg/type-diagnostics.scala
+++ b/test/files/neg/type-diagnostics.scala
@@ -6,14 +6,14 @@ object SetVsSet {
object TParamConfusion {
def strings(xs: List[String]) = xs
-
+
def f1[a <% Ordered[a]](x: List[a]) = {
def f2[b >: List[a] <% Ordered[b]](x: List[a], y: b): Int = {
def f3(xs: List[a], ys: List[a]) = -1
y match { case y1: List[a] => f3(x, y1) }
}
}
-
+
def f2[String](s: String) = strings(List(s))
}
diff --git a/test/files/neg/unit-returns-value.scala b/test/files/neg/unit-returns-value.scala
index 27a1111c5b..ecc981f217 100644
--- a/test/files/neg/unit-returns-value.scala
+++ b/test/files/neg/unit-returns-value.scala
@@ -3,7 +3,7 @@ object Test {
var b = false
if (b) return 5
}
-
+
// no warning
def g {
return println("hello")
diff --git a/test/files/neg/varargs.scala b/test/files/neg/varargs.scala
index be75e9b0a7..657750ec8f 100644
--- a/test/files/neg/varargs.scala
+++ b/test/files/neg/varargs.scala
@@ -7,21 +7,21 @@ import annotation.varargs
// Failing varargs annotation
object Test {
-
+
trait A {
def v1(a: Int, b: Array[String]) = a
}
-
+
trait B extends A {
@varargs def v1(a: Int, b: String*) = a + b.length
}
-
+
@varargs def nov(a: Int) = 0
@varargs def v(a: Int, b: String*) = a + b.length
@varargs def v2(a: Int, b: String*) = 0
def v2(a: Int, b: Array[String]) = 0
-
- def main(args: Array[String]) {
+
+ def main(args: Array[String]) {
}
-
+
}
diff --git a/test/files/neg/variances.check b/test/files/neg/variances.check
index b134a9a68c..4eaab56cef 100644
--- a/test/files/neg/variances.check
+++ b/test/files/neg/variances.check
@@ -1,8 +1,8 @@
variances.scala:4: error: covariant type A occurs in contravariant position in type test.Vector[A] of value x
- def append(x: Vector[A]): Vector[A]
+ def append(x: Vector[A]): Vector[A]
^
variances.scala:14: error: covariant type A occurs in contravariant position in type A of value a
- private[this] def setA(a : A) = this.a = a
+ private[this] def setA(a : A) = this.a = a
^
variances.scala:16: error: covariant type A occurs in invariant position in supertype test.C[A] with ScalaObject of object Baz
object Baz extends C[A]
diff --git a/test/files/neg/variances.scala b/test/files/neg/variances.scala
index f693480d1d..726bc35270 100644
--- a/test/files/neg/variances.scala
+++ b/test/files/neg/variances.scala
@@ -1,7 +1,7 @@
package test
trait Vector[+A] {
- def append(x: Vector[A]): Vector[A]
+ def append(x: Vector[A]): Vector[A]
private[this] def append3(x: Vector[A]): Vector[A] = append(x)
}
@@ -11,8 +11,8 @@ object Covariant {
class Foo[+A] {
private[this] var a : A = _
def getA : A = a
- private[this] def setA(a : A) = this.a = a
-
+ private[this] def setA(a : A) = this.a = a
+
object Baz extends C[A]
trait Convert[B] {
def b2a(b : B) : A
@@ -22,8 +22,8 @@ object Covariant {
class Foo2[+A] {
private[this] var a : A = _
def getA : A = a
- private[this] def setA(a : A) = this.a = a
-
+ private[this] def setA(a : A) = this.a = a
+
{
trait Convert[B] {
def b2a(b : B) : A
@@ -35,8 +35,8 @@ object Covariant {
class Foo3[+A] {
private[this] var a : A = _
def getA : A = a
- private[this] def setA(a : A) = this.a = a
-
+ private[this] def setA(a : A) = this.a = a
+
private[this] trait Convert[B] {
def b2a(b : B) : A
def doit(b : B) = setA(b2a(b))
diff --git a/test/files/neg/viewtest.scala b/test/files/neg/viewtest.scala
index 5e7d624d23..ddb7fa4a3b 100644
--- a/test/files/neg/viewtest.scala
+++ b/test/files/neg/viewtest.scala
@@ -37,7 +37,7 @@ object O {
}
}
- implicit def view3[a <% Ordered[a]](x: List[a]): Ordered[List[a]] =
+ implicit def view3[a <% Ordered[a]](x: List[a]): Ordered[List[a]] =
new Ordered[List[a]] {
def compareTo [b >: List[a] <% Ordered[b]](y: b): Int = y match {
case y1: List[a] => compareLists(x, y1)
@@ -72,7 +72,7 @@ class Node[a <% Ordered[a]](elem: a, l: Tree[a], r: Tree[a]) extends Tree[a] {
if (x == elem) this
else if (x < elem) new Node(elem, l insert x, r)
else new Node(elem, l, r insert x)
- def elements: List[a] =
+ def elements: List[a] =
l.elements ::: List(elem) ::: r.elements
}
@@ -86,7 +86,7 @@ case class Str(elem: String) extends Ordered[Str] {
object Test {
import O._
- private def toCharList(s: String): List[Char] =
+ private def toCharList(s: String): List[Char] =
if (s.length() == 0) List()
else s.charAt(0) :: toCharList(s.substring(1))
diff --git a/test/files/pos/List1.scala b/test/files/pos/List1.scala
index 1321d95c20..9d3a51f4e3 100644
--- a/test/files/pos/List1.scala
+++ b/test/files/pos/List1.scala
@@ -17,7 +17,7 @@ object lists {
def isEmpty = false;
def head = x;
def tail = xs;
- }
+ }
def foo = {
val intnil = Nil[Int];
diff --git a/test/files/pos/MailBox.scala b/test/files/pos/MailBox.scala
index 8e27bd362d..2a3f02df0b 100644
--- a/test/files/pos/MailBox.scala
+++ b/test/files/pos/MailBox.scala
@@ -24,7 +24,7 @@ class MailBox {
private val sent = new LinkedList[Any];
private var lastSent = sent;
private val receivers = new LinkedList[Receiver];
- private var lastReceiver = receivers;
+ private var lastReceiver = receivers;
def send(msg: Any): Unit = synchronized {
var r = receivers;
@@ -59,7 +59,7 @@ class MailBox {
}
f(msg)
}
-
+
def receiveWithin[a](msec: Long)(f: PartialFunction[Any, a]): a = {
val msg: Any = synchronized {
var s = sent;
diff --git a/test/files/pos/Transactions.scala b/test/files/pos/Transactions.scala
index ed989e178e..9b4388300b 100644
--- a/test/files/pos/Transactions.scala
+++ b/test/files/pos/Transactions.scala
@@ -28,7 +28,7 @@ class Transaction {
var next: Transaction = null
def this(hd: Transaction, tl: Transaction) = { this(); this.head = head; this.next = next }
-
+
def makeAbort() = synchronized {
while (status != Transaction.Aborted && status != Transaction.Committed) {
status = Transaction.Abortable
@@ -48,7 +48,7 @@ class Transaction {
case ex: AbortException => abort(); None
case ex: Throwable => abort(); throw ex
}
-
+
}
trait Transactional {
@@ -58,7 +58,7 @@ trait Transactional {
/** copy back snapshot */
def rollBack(): Unit
-
+
var readers: Transaction
var writer: Transaction
@@ -66,11 +66,11 @@ trait Transactional {
if (writer == null) null
else if (writer.status == Transaction.Running) writer
else {
- if (writer.status != Transaction.Committed) rollBack();
- writer = null;
- null
+ if (writer.status != Transaction.Committed) rollBack();
+ writer = null;
+ null
}
-
+
def getter(thisTrans: Transaction) {
if (writer == thisTrans) return
var r = readers
@@ -96,7 +96,7 @@ trait Transactional {
synchronized {
val w = currentWriter()
if (w != null)
- if (thisTrans.id < w.id) { w.makeAbort(); rollBack() }
+ if (thisTrans.id < w.id) { w.makeAbort(); rollBack() }
else throw new AbortException
var r = readers
while (r != null && r.head.status != Transaction.Running) { r = r.next; readers = r }
@@ -111,4 +111,4 @@ trait Transactional {
}
}
}
-
+
diff --git a/test/files/pos/array-interfaces.scala b/test/files/pos/array-interfaces.scala
index 70cafd2bb1..4955911078 100644
--- a/test/files/pos/array-interfaces.scala
+++ b/test/files/pos/array-interfaces.scala
@@ -1,7 +1,7 @@
object s {
def f(x: Cloneable) = ()
def g(x: java.io.Serializable) = ()
-
+
def main(args: Array[String]): Unit = {
f(args)
g(args)
diff --git a/test/files/pos/arrays2.scala b/test/files/pos/arrays2.scala
index 795c486e37..2d5409cbb8 100644
--- a/test/files/pos/arrays2.scala
+++ b/test/files/pos/arrays2.scala
@@ -11,8 +11,8 @@ object arrays2 {
// #2422
object arrays4 {
- val args = Array[String]("World")
- "Hello %1$s".format(args: _*)
+ val args = Array[String]("World")
+ "Hello %1$s".format(args: _*)
}
// #2461
diff --git a/test/files/pos/builders.scala b/test/files/pos/builders.scala
index 0b620769c0..51d8af88f8 100644
--- a/test/files/pos/builders.scala
+++ b/test/files/pos/builders.scala
@@ -18,16 +18,16 @@ object builders {
def += (elem: B) { buf += elem }
def result: List[B] = buf.toList
}
-/*
+/*
def fill[A, Dim1, Dim2, Coll](n1: Int, n2: Int, elem: A)(implicit b1: Builder[Coll, Dim1, A], b2: Builder[Coll, Dim2, Dim1]) = {
for (i <- 0 until n1) {
for (j <- 0 until n2) {
b1 += elem
- }
+ }
b2 += b1.result
}
b2.result
- }
+ }
*/
/*
implicit def arrayBuilder[A, B] = new Builder[Array[A], Array[B], B] {
@@ -35,7 +35,7 @@ object builders {
private val buf = new scala.collection.mutable.ListBuffer[B]
def += (elem: B) { buf += elem }
def result: Array[B] = buf.toArray
- }
+ }
*/
class Iter[A, C](elems: List[A]) {
def ++ [B >: A, D](xs: Iterable[B])(implicit b: Builder[C, D, B]): D = {
@@ -48,7 +48,7 @@ object builders {
b.result
}
}
-
+
def main(args : Array[String]) : Unit = {
val x1 = new Iter[Int, List[Int]](List(1, 2, 3))
// val x2 = new Iter[Int, Array[Int]](List(1, 2, 3))
diff --git a/test/files/pos/caseclass-productN.scala b/test/files/pos/caseclass-productN.scala
index a0964218ac..e2177856fd 100644
--- a/test/files/pos/caseclass-productN.scala
+++ b/test/files/pos/caseclass-productN.scala
@@ -2,17 +2,17 @@ object Test {
class A
class B extends A
class C extends B
-
+
case class Bippy[T](x: Int, y: List[T], z: T) { }
case class Bippy2[T](x: Int, y: List[T], z: T) { }
-
+
def bippies = List(
Bippy(5, List(new C), new B),
Bippy2(5, List(new B), new C)
)
-
+
def bmethod(x: B) = ()
-
+
def main(args: Array[String]): Unit = {
bippies flatMap (_._2) foreach bmethod
bippies map (_._3) foreach bmethod
diff --git a/test/files/pos/channels.scala b/test/files/pos/channels.scala
index eb26a2bcf6..0a2274c47a 100644
--- a/test/files/pos/channels.scala
+++ b/test/files/pos/channels.scala
@@ -6,7 +6,7 @@ case class ![a](chan: Channel[a], data: a)
/*
object Bang {
- def unapply[a](x: ![a]): Option[{Channel[a], a}] =
+ def unapply[a](x: ![a]): Option[{Channel[a], a}] =
Some(x.chan, x.data)
}
@@ -14,7 +14,7 @@ object Bang {
object Test extends App {
object IC extends Channel[Int]
def f[b](x: ![b]): Int = x match {
- case send: ![c] =>
+ case send: ![c] =>
send.chan match {
case IC => send.data
}
@@ -27,4 +27,4 @@ object Test2 extends App {
case IC ! x => x
}
}
-
+
diff --git a/test/files/pos/clsrefine.scala b/test/files/pos/clsrefine.scala
index 0a016dec07..b29c01db8b 100644
--- a/test/files/pos/clsrefine.scala
+++ b/test/files/pos/clsrefine.scala
@@ -25,9 +25,9 @@ object test {
val y1, y2 = 1;
}
val a: A { type X1 = Int; type X2 = Int } = b;
- val a1 = new A {
+ val a1 = new A {
type X1 = Int;
- type X2 = String;
+ type X2 = String;
val x1 = 1;
val x2 = "hello"
}
diff --git a/test/files/pos/collectGenericCC.scala b/test/files/pos/collectGenericCC.scala
index 5c51a50d71..8201c6a271 100644
--- a/test/files/pos/collectGenericCC.scala
+++ b/test/files/pos/collectGenericCC.scala
@@ -7,8 +7,8 @@ object Test {
r foreach ((a: A) => b += a)
b.result
}
-
- collect[Int, Vector[Int]](List(1,2,3,4))
+
+ collect[Int, Vector[Int]](List(1,2,3,4))
collect[Char, String](List('1','2','3','4'))
- collect[Char, Array[Char]](List('1','2','3','4'))
+ collect[Char, Array[Char]](List('1','2','3','4'))
} \ No newline at end of file
diff --git a/test/files/pos/context.scala b/test/files/pos/context.scala
index 4e11d07eb4..13f6bb43c5 100644
--- a/test/files/pos/context.scala
+++ b/test/files/pos/context.scala
@@ -12,10 +12,10 @@ class Context {
abstract class SymbolWrapper {
val context: Context;
import context._;
-
+
class Symbols {
self: context.symbols.type =>
-
+
abstract class Symbol {
def typ: types.Type;
def sym: Symbol = typ.sym;
@@ -29,7 +29,7 @@ abstract class TypeWrapper {
class Types {
self: context.types.type =>
-
+
abstract class Type {
def sym: symbols.Symbol;
def typ: Type = sym.typ;
diff --git a/test/files/pos/cyclics-pos.scala b/test/files/pos/cyclics-pos.scala
index 395e88815a..051bdd6ed8 100644
--- a/test/files/pos/cyclics-pos.scala
+++ b/test/files/pos/cyclics-pos.scala
@@ -1,26 +1,26 @@
trait Param[T]
trait Abs { type T }
trait Cyclic1[A <: Param[A]] // works
-trait Cyclic2[A <: Abs { type T <: A }]
-trait Cyclic3 { type A <: Abs { type T = A } }
+trait Cyclic2[A <: Abs { type T <: A }]
+trait Cyclic3 { type A <: Abs { type T = A } }
trait Cyclic4 { type A <: Param[A] } // works
-trait Cyclic5 { type AA <: Abs; type A <: AA { type T = A } }
+trait Cyclic5 { type AA <: Abs; type A <: AA { type T = A } }
trait IterableTemplate {
type Elem
type Constr <: IterableTemplate
type ConstrOf[A] = Constr { type Elem = A }
-
+
def iterator: Iterator[Elem]
-
+
def map [B] (f: Elem => B): ConstrOf[B]
-
+
def foreach(f: Elem => Unit) = iterator.foreach(f)
}
trait Iterable[A] extends IterableTemplate { self =>
- type Elem
+ type Elem
type Constr <: Iterable[A] { type Constr <: Iterable.this.Constr }
}
diff --git a/test/files/pos/depmet_implicit_chaining_zw.scala b/test/files/pos/depmet_implicit_chaining_zw.scala
index e3a145ab38..93da3b0f8e 100644
--- a/test/files/pos/depmet_implicit_chaining_zw.scala
+++ b/test/files/pos/depmet_implicit_chaining_zw.scala
@@ -15,7 +15,7 @@ object ZipWith {
type T = Stream[S] => zWith.T // dependent types replace the associated types functionality
}
- // can't use implicitly[ZipWith[Succ[Succ[Zero]], Int => String => Boolean]],
+ // can't use implicitly[ZipWith[Succ[Succ[Zero]], Int => String => Boolean]],
// since that will chop of the {type T = ... } refinement in adapt (pt = ZipWith[Succ[Succ[Zero]], Int => String => Boolean])
// this works
// def zipWith(implicit zw: ZipWith[Succ[Succ[Zero]], Int => String => Boolean]): zw.T = zw.x
diff --git a/test/files/pos/depmet_implicit_norm_ret.scala b/test/files/pos/depmet_implicit_norm_ret.scala
index 4cdb2931c6..bafd2f7c51 100644
--- a/test/files/pos/depmet_implicit_norm_ret.scala
+++ b/test/files/pos/depmet_implicit_norm_ret.scala
@@ -1,29 +1,29 @@
object Test{
def ?[S <: AnyRef](implicit w : S) : w.type = w
-
+
// fallback, lower priority (overloading rules apply: pick alternative in subclass lowest in subtyping lattice)
class ZipWithDefault {
implicit def ZeroZipWith[S] = new ZipWith[S] {
type T = Stream[S]
- }
+ }
}
-
+
object ZipWith extends ZipWithDefault {
// def apply[S: ZipWith](s : S) = ?[ZipWith[S]].zipWith(s) // TODO: bug return type should be inferred
def apply[S](s : S)(implicit zw: ZipWith[S]): zw.T = zw.zipWith(s)
implicit def SuccZipWith[S,R](implicit zWith : ZipWith[R]) = new ZipWith[S => R] {
type T = Stream[S] => zWith.T // dependent types replace the associated types functionality
- }
+ }
}
-
+
trait ZipWith[S] {
type T
def zipWith : S => T = error("")
}
-
+
// bug: inferred return type = (Stream[A]) => java.lang.Object with Test.ZipWith[B]{type T = Stream[B]}#T
// this seems incompatible with vvvvvvvvvvvvvvvvvvvvvv -- #3731
- def map[A,B](f : A => B) /* : Stream[A] => Stream[B]*/ = ZipWith(f)
- val tst: Stream[Int] = map{x: String => x.length}(Stream("a"))
-} \ No newline at end of file
+ def map[A,B](f : A => B) /* : Stream[A] => Stream[B]*/ = ZipWith(f)
+ val tst: Stream[Int] = map{x: String => x.length}(Stream("a"))
+} \ No newline at end of file
diff --git a/test/files/pos/depmet_implicit_oopsla_session.scala b/test/files/pos/depmet_implicit_oopsla_session.scala
index 21588a56ad..e2c67d7c32 100644
--- a/test/files/pos/depmet_implicit_oopsla_session.scala
+++ b/test/files/pos/depmet_implicit_oopsla_session.scala
@@ -11,19 +11,19 @@ object Sessions {
def run(p: Stop, dp: Stop): Unit = {}
}
- implicit def InDual[A, B](implicit sessionDIn: Session[B]) =
+ implicit def InDual[A, B](implicit sessionDIn: Session[B]) =
new Session[In[A, B]] {
type Dual = Out[A, sessionDIn.Dual]
- def run(p: In[A, B], dp: Dual): Unit =
+ def run(p: In[A, B], dp: Dual): Unit =
sessionDIn.run(p.func(dp.x), dp.y)
}
- implicit def OutDual[A, B](implicit sessionDOut: Session[B]) =
+ implicit def OutDual[A, B](implicit sessionDOut: Session[B]) =
new Session[Out[A, B]] {
type Dual = In[A, sessionDOut.Dual]
- def run(p: Out[A, B], dp: Dual): Unit =
+ def run(p: Out[A, B], dp: Dual): Unit =
sessionDOut.run(p.y, dp.func(p.x))
}
@@ -32,7 +32,7 @@ object Sessions {
sealed case class Out[+A, +B](x: A, y: B)
def addServer =
- In{x: Int =>
+ In{x: Int =>
In{y: Int => System.out.println("Thinking")
Out(x+y,
Stop())}}
@@ -48,7 +48,7 @@ object Sessions {
// def runSession[S, D](p: S, dp: D)(implicit s: Session[S]#HasDual[D]) =
// s.run(p, dp)
- //
+ //
// def runSession[S, D](p: S, dp: D)(implicit s: Session[S]{type Dual=D}) =
// s.run(p, dp)
diff --git a/test/files/pos/depmet_implicit_oopsla_session_2.scala b/test/files/pos/depmet_implicit_oopsla_session_2.scala
index 5c3b78e3f5..8d7daa6dc6 100644
--- a/test/files/pos/depmet_implicit_oopsla_session_2.scala
+++ b/test/files/pos/depmet_implicit_oopsla_session_2.scala
@@ -36,7 +36,7 @@ object Sessions {
implicit def InDual[Data, Cont](implicit cont: Session[Cont]) = new Session[In[Data, Cont]] {
type Dual = Out[Data, cont.Dual]
- def run(self: Self, dual: Dual): Unit =
+ def run(self: Self, dual: Dual): Unit =
cont.run(self.recv(dual.data), dual.cont)
}
@@ -46,13 +46,13 @@ object Sessions {
implicit def OutDual[Data, Cont](implicit cont: Session[Cont]) = new Session[Out[Data, Cont]] {
type Dual = In[Data, cont.Dual]
- def run(self: Self, dual: Dual): Unit =
+ def run(self: Self, dual: Dual): Unit =
cont.run(self.cont, dual.recv(self.data))
}
// a concrete session
def addServer =
- In{x: Int =>
+ In{x: Int =>
In{y: Int => System.out.println("Thinking")
Out(x+y,
Stop())}}
@@ -71,7 +71,7 @@ object Sessions {
// def runSession[S, D](p: S, dp: D)(implicit s: Session[S]#HasDual[D]) =
// s.run(p, dp)
- //
+ //
// def runSession[S, D](p: S, dp: D)(implicit s: Session[S]{type Dual=D}) =
// s.run(p, dp)
diff --git a/test/files/pos/depmet_implicit_oopsla_session_simpler.scala b/test/files/pos/depmet_implicit_oopsla_session_simpler.scala
index 37bc0958d3..d2986ef56f 100644
--- a/test/files/pos/depmet_implicit_oopsla_session_simpler.scala
+++ b/test/files/pos/depmet_implicit_oopsla_session_simpler.scala
@@ -14,7 +14,7 @@ object Sessions {
// can't write B <: Session{type Dual = BDual} due to limitations in type inference algorithm
// (type variables cannot occur on both sides of <:)
// using B#Dual instead of BDual is too imprecise, since it is disconnected from the actual argument that is passed for B
- // would be nice if we could introduce a universal quantification over BDual that is not part of the
+ // would be nice if we could introduce a universal quantification over BDual that is not part of the
// type parameter list
sealed case class In[A, B <: Session, BDual <: Session](recv: A => B)(implicit dual: B <:< Session{type Dual=BDual}) extends Session {
type Dual = Out[A, BDual]
@@ -29,7 +29,7 @@ object Sessions {
}
def addServer =
- In{x: Int =>
+ In{x: Int =>
In{y: Int => System.out.println("Thinking")
Out(x+y,
Stop())}}
diff --git a/test/files/pos/depmet_implicit_oopsla_zipwith.scala b/test/files/pos/depmet_implicit_oopsla_zipwith.scala
index c76d02c1ae..fe69802d26 100644
--- a/test/files/pos/depmet_implicit_oopsla_zipwith.scala
+++ b/test/files/pos/depmet_implicit_oopsla_zipwith.scala
@@ -15,7 +15,7 @@ object ZipWith {
def manyApp = n => xs => xs
}
- implicit def SuccZipWith[N, S, R](implicit zw: ZipWith[N, R]) =
+ implicit def SuccZipWith[N, S, R](implicit zw: ZipWith[N, R]) =
new ZipWith[Succ[N],S => R] {
type T = Stream[S] => zw.T
@@ -33,12 +33,12 @@ object ZipWith {
object Test {
def zWith[N, S](n: N, s: S)(implicit zw: ZipWith[N, S]): zw.T = zw.zipWith(n)(s)
- def zipWith0: Stream[Int] = zWith(Zero(),0)
+ def zipWith0: Stream[Int] = zWith(Zero(),0)
// (Stream[A]) => java.lang.Object with ZipWith[Zero,B]{type T = Stream[B]}#T
// should normalise to: Stream[A] => Stream[B]
def map[A, B](f: A => B) = zWith(Succ(Zero()),f)
-
+
def zipWith3[A, B, C, D](f: A => B => C => D) = //: Stream[A] => Stream[B] => Stream[C] => Stream[D] = // BUG why do we need a return type?
zWith(Succ(Succ(Succ(Zero()))),f)
} \ No newline at end of file
diff --git a/test/files/pos/depmet_implicit_tpbetareduce.scala b/test/files/pos/depmet_implicit_tpbetareduce.scala
index 35d260683b..c0b9b4e8e4 100644
--- a/test/files/pos/depmet_implicit_tpbetareduce.scala
+++ b/test/files/pos/depmet_implicit_tpbetareduce.scala
@@ -1,10 +1,10 @@
trait HOSeq {
trait Accumulator[+coll[x], elT]
trait Iterable[+t] {
- type m[+x]
+ type m[+x]
def accumulator[t]: Accumulator[m, t]
}
- implicit def listAccumulator[elT]: Accumulator[List, elT] = new Accumulator[List, elT] {}
+ implicit def listAccumulator[elT]: Accumulator[List, elT] = new Accumulator[List, elT] {}
trait List[+t] extends Iterable[t] {
type m[+x] = List[x]
def accumulator[t]: Accumulator[List, t] = listAccumulator[t]
diff --git a/test/files/pos/elidable-tparams.scala b/test/files/pos/elidable-tparams.scala
index 23b1cba615..e47951f61d 100644
--- a/test/files/pos/elidable-tparams.scala
+++ b/test/files/pos/elidable-tparams.scala
@@ -3,7 +3,7 @@ import elidable._
class ElidableCrashTest {
trait My
-
+
@elidable(MINIMUM) def foo[a >: My <: My]: scala.Unit = ()
foo[My] // crash
diff --git a/test/files/pos/gadt-gilles.scala b/test/files/pos/gadt-gilles.scala
index 662be9017d..309168c1e0 100644
--- a/test/files/pos/gadt-gilles.scala
+++ b/test/files/pos/gadt-gilles.scala
@@ -6,7 +6,7 @@ object Test {
val x: A[C with D] = new B[C, D] {}
val y: A[C with D] = x match { case b: B[u, v] => (new B[u, v] {}): A[u with v] } // OK
-
+
def f[T, U](p: A[T with U]): A[T with U] = p match { case b: B[u, v] => new A[u with v] {} } // Not OK
}
diff --git a/test/files/pos/gadts2.scala b/test/files/pos/gadts2.scala
index fc2a7e4333..2263cf13a6 100644
--- a/test/files/pos/gadts2.scala
+++ b/test/files/pos/gadts2.scala
@@ -9,8 +9,8 @@ object Test {
final case class NumTerm(val n: Number) extends Term[Number]
def f[a](t: Term[a], c: Cell[a]) {
- t match {
- case NumTerm(n) => c.x = MyDouble(1.0)
+ t match {
+ case NumTerm(n) => c.x = MyDouble(1.0)
}
}
diff --git a/test/files/pos/generic-sigs.scala b/test/files/pos/generic-sigs.scala
index 533163373b..40ec044656 100644
--- a/test/files/pos/generic-sigs.scala
+++ b/test/files/pos/generic-sigs.scala
@@ -4,7 +4,7 @@ object A {
def f3(x: Class[_ <: Int]) = x
def f4(x: Class[_ <: String with Int]) = x
def f5(x: Class[_ <: Int with String]) = x
-
+
class Bippy[T]
def f6(x: Int) = new Bippy[t forSome { type t <: Int }]
def f7(x: T forSome { type T <: Float }) = x
@@ -12,7 +12,7 @@ object A {
def f9(x: T forSome { type T <: runtime.BoxedUnit }) = x
def f10(x: Int) = new Bippy[t forSome { type t <: Unit }]
def f11(x: Int) = new Bippy[t forSome { type t >: Null }]
-
+
class Boppy[+T1,-T2]
def g1 = new Boppy[t forSome { type t <: Int }, u forSome { type u <: String }]
} \ No newline at end of file
diff --git a/test/files/pos/gosh.scala b/test/files/pos/gosh.scala
index 98fae8a31e..427df4d33c 100644
--- a/test/files/pos/gosh.scala
+++ b/test/files/pos/gosh.scala
@@ -7,35 +7,35 @@ object ShapeTest extends App {
abstract class Shape {
def draw(): Unit
}
-
+
class Line(s: Point, e: Point) extends Shape {
def draw() { Console.println("draw line " + s + "," + e) }
}
-
+
abstract class Foo {
type T <: Object
-
+
def show(o: T): Unit
def print() { Console.println("in Foo") }
}
-
+
abstract class ShapeFoo extends Foo {
type T <: Shape
def show(o: T) { o.draw() }
override def print() { Console.println("in ShapeFoo") }
}
-
+
class LineFoo extends ShapeFoo {
type T = Line
override def print() { Console.println("in LineFoo") }
}
-
+
val p1 = new Point(1,4)
val p2 = new Point(12, 28)
-
+
val l1 = new Line(p1, p2)
-
+
val l = new ShapeFoo { // ** //
type T = Line // ** //
override def print() { Console.println("in LineFoo") } // ** //
diff --git a/test/files/pos/gui.scala b/test/files/pos/gui.scala
index 3b4f49cf55..322e0a6e22 100644
--- a/test/files/pos/gui.scala
+++ b/test/files/pos/gui.scala
@@ -2,7 +2,7 @@ object Geom {
trait Shape
case class Point(x: Int, y: Int) extends Shape
case class Rectangle(ll: Point, ur: Point) extends Shape {
- def inset(delta: Int) =
+ def inset(delta: Int) =
Rectangle(Point(ll.x - delta, ll.y - delta), Point(ur.x + delta, ur.y + delta));
}
}
@@ -20,7 +20,7 @@ trait Screen {
}
object DummyScreen extends Screen {
- def drawRect(r: Geom.Rectangle, c: Color) {
+ def drawRect(r: Geom.Rectangle, c: Color) {
Console.println("draw " + r + " with " + c)
}
def fillRect(r: Geom.Rectangle, c: Color) {
@@ -55,7 +55,7 @@ object GUI {
def mouseDown(p: Geom.Point): Unit
}
- abstract class Button(scr: Screen, p: Geom.Point, name: String)
+ abstract class Button(scr: Screen, p: Geom.Point, name: String)
extends Glyph with MouseCtl {
var enabled: Boolean = false
val label = new Label(scr, p, name)
@@ -86,7 +86,7 @@ object GUIClient {
def quit() { Console.println("application exited") }
}
- class QuitButton (scr: Screen, p: Geom.Point, name: String, a: App)
+ class QuitButton (scr: Screen, p: Geom.Point, name: String, a: App)
extends GUI.Button(scr, p, name) {
def doit() { a.quit() }
}
diff --git a/test/files/pos/hk-infer.scala b/test/files/pos/hk-infer.scala
index 30e3476404..7834282bf2 100644
--- a/test/files/pos/hk-infer.scala
+++ b/test/files/pos/hk-infer.scala
@@ -31,7 +31,7 @@ object DoesWorkHK {
def BOOP(ys: Seq[M[_]]) = new Booper[M](xs ++ ys)
}
implicit def mkBoop[M[_]](xs: Seq[M[_]]) = new Booper[M](xs)
-
+
def f1 = x BOOP y BOOP x1 BOOP x2
}
diff --git a/test/files/pos/hkarray.scala b/test/files/pos/hkarray.scala
index af1160300a..3faae180f4 100644
--- a/test/files/pos/hkarray.scala
+++ b/test/files/pos/hkarray.scala
@@ -1,5 +1,5 @@
trait Foo[CC[_]] { }
class Bip {
- val x = new Foo[Array] { }
+ val x = new Foo[Array] { }
} \ No newline at end of file
diff --git a/test/files/pos/hkrange.scala b/test/files/pos/hkrange.scala
index a6803230ed..8d61167ad8 100644
--- a/test/files/pos/hkrange.scala
+++ b/test/files/pos/hkrange.scala
@@ -1,5 +1,5 @@
class A {
def f[CC[X] <: Traversable[X]](x: CC[Int]) = ()
-
+
f(1 to 5)
}
diff --git a/test/files/pos/imp2-pos.scala b/test/files/pos/imp2-pos.scala
index 5460c60015..407b07f3fd 100644
--- a/test/files/pos/imp2-pos.scala
+++ b/test/files/pos/imp2-pos.scala
@@ -1,5 +1,5 @@
object Test {
- import collection.mutable._
+ import collection.mutable._
import collection.mutable._
val x = new HashMap
}
diff --git a/test/files/pos/implicit-infix-ops.scala b/test/files/pos/implicit-infix-ops.scala
index 66f3718e86..d7519e6340 100644
--- a/test/files/pos/implicit-infix-ops.scala
+++ b/test/files/pos/implicit-infix-ops.scala
@@ -1,7 +1,7 @@
object Test {
import Ordering.Implicits._
import Numeric.Implicits._
-
+
def f1[T: Numeric](x: T, y: T, z: T) = x + y + z
def f2[T: Ordering](x: T, y: T, z: T) = if (x < y) (z > y) else (x < z)
}
@@ -9,7 +9,7 @@ object Test {
object Int {
import Ordering.Implicits._
import math.Integral.Implicits._
-
+
def f1[T: Integral](x: T, y: T, z: T) = (x + y + z) / z
def f2[T: Ordering](x: T, y: T, z: T) = if (x < y) (z > y) else (x < z)
}
@@ -17,7 +17,7 @@ object Int {
object Frac {
import Ordering.Implicits._
import math.Fractional.Implicits._
-
+
def f1[T: Fractional](x: T, y: T, z: T) = (x + y + z) / z
def f2[T: Ordering](x: T, y: T, z: T) = if (x < y) (z > y) else (x < z)
} \ No newline at end of file
diff --git a/test/files/pos/implicits.scala b/test/files/pos/implicits.scala
index 960c265e55..2c01dd0ba8 100644
--- a/test/files/pos/implicits.scala
+++ b/test/files/pos/implicits.scala
@@ -45,7 +45,7 @@ object Test1625 {
implicit def byName[A](x: =>A) = new Wrapped(x)
implicit def byVal[A](x: A) = x
-
+
def main(args: Array[String]) = {
// val res:Wrapped = 7 // works
@@ -57,7 +57,7 @@ object Test1625 {
}
object Test2188 {
- implicit def toJavaList[A: ClassManifest](t:collection.Seq[A]):java.util.List[A] = java.util.Arrays.asList(t.toArray:_*)
+ implicit def toJavaList[A: ClassManifest](t:collection.Seq[A]):java.util.List[A] = java.util.Arrays.asList(t.toArray:_*)
val x: java.util.List[String] = List("foo")
}
@@ -67,21 +67,21 @@ object TestNumericWidening {
val x: java.lang.Long = y
}
-// #2709
-package foo2709 {
- class A
- class B
-
- package object bar {
- implicit def a2b(a: A): B = new B
- }
-
- package bar {
- object test {
- new A: B
- }
- }
-}
+// #2709
+package foo2709 {
+ class A
+ class B
+
+ package object bar {
+ implicit def a2b(a: A): B = new B
+ }
+
+ package bar {
+ object test {
+ new A: B
+ }
+ }
+}
// Problem with specs
object specsProblem {
diff --git a/test/files/pos/imports-pos.scala b/test/files/pos/imports-pos.scala
index f6a55e5e07..5f70a5d2da 100644
--- a/test/files/pos/imports-pos.scala
+++ b/test/files/pos/imports-pos.scala
@@ -7,10 +7,10 @@ object test {
val foo = 1;
- p("hello"); print("world"); S.out.println("!");
+ p("hello"); print("world"); S.out.println("!");
S.out.flush();
}
object test1 {
import test._;
foo
-}
+}
diff --git a/test/files/pos/infer2-pos.scala b/test/files/pos/infer2-pos.scala
index e065219a80..06d0f5814f 100644
--- a/test/files/pos/infer2-pos.scala
+++ b/test/files/pos/infer2-pos.scala
@@ -5,4 +5,4 @@ case class nil[T] extends Lst[T]
object test {
Console.println(cons(1, nil()))
}
-
+
diff --git a/test/files/pos/inferbroadtype.scala b/test/files/pos/inferbroadtype.scala
index de8f7aa184..467bd0f186 100644
--- a/test/files/pos/inferbroadtype.scala
+++ b/test/files/pos/inferbroadtype.scala
@@ -2,7 +2,7 @@ object Test {
abstract class Base { val changesBaseClasses: Boolean }
class Concrete extends Base { val changesBaseClasses = true }
def getBase : Base = new Concrete
-
+
var c = new Base { val changesBaseClasses = true }
c = getBase
}
diff --git a/test/files/pos/inliner2.scala b/test/files/pos/inliner2.scala
index bc83e04312..fe231ec3c4 100644
--- a/test/files/pos/inliner2.scala
+++ b/test/files/pos/inliner2.scala
@@ -10,7 +10,7 @@ class A {
final def bob2() = if (debug) 1 else 2
}
// Cool:
-//
+//
// % ls -1 /tmp/2901/
// A$$anonfun$bob1$1.class
// A$$anonfun$bob1$2.class
@@ -20,7 +20,7 @@ class A {
// A.class
//
// Observations:
-//
+//
// (1) The inlined version accesses the field: the explicit one calls the accessor.
// (2) The inlined version fails to eliminate boxing. With reference types it emits
// an unneeded checkcast.
@@ -30,7 +30,7 @@ class A {
// inlined at all sites.
//
// Generated bytecode for the above:
-//
+//
// public final int bob1();
// Code:
// Stack=1, Locals=1, Args_size=1
@@ -44,7 +44,7 @@ class A {
// 15: invokestatic #41; //Method scala/runtime/BoxesRunTime.boxToInteger:(I)Ljava/lang/Integer;
// 18: invokestatic #45; //Method scala/runtime/BoxesRunTime.unboxToInt:(Ljava/lang/Object;)I
// 21: ireturn
-//
+//
// public final int bob2();
// Code:
// Stack=1, Locals=1, Args_size=1
diff --git a/test/files/pos/java-access-pos/J.java b/test/files/pos/java-access-pos/J.java
index b6bc3363a1..4f2024673c 100644
--- a/test/files/pos/java-access-pos/J.java
+++ b/test/files/pos/java-access-pos/J.java
@@ -4,11 +4,11 @@ public abstract class J {
public J() { }
J(int x1) { }
protected J(int x1, int x2) { }
-
+
abstract void packageAbstract();
protected abstract void protectedAbstract();
public abstract void publicAbstract();
-
+
void packageConcrete() { return; }
protected void protectedConcrete() { return; }
public void publicConcrete() { return; }
diff --git a/test/files/pos/java-access-pos/S1.scala b/test/files/pos/java-access-pos/S1.scala
index 10730e3a70..cc739d9555 100644
--- a/test/files/pos/java-access-pos/S1.scala
+++ b/test/files/pos/java-access-pos/S1.scala
@@ -6,7 +6,7 @@ class S1 extends J {
override private[b] def packageAbstract() = ()
override protected[b] def protectedAbstract() = ()
override def publicAbstract() = ()
-
+
override private[b] def packageConcrete() = ()
override protected[b] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -26,7 +26,7 @@ class S3 extends J {
protected[b] def packageAbstract() = ()
protected[b] def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override protected[b] def packageConcrete() = ()
override protected[b] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -37,7 +37,7 @@ class S4 extends J {
private[a] def packageAbstract() = ()
protected[a] def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override private[a] def packageConcrete() = ()
override protected[a] def protectedConcrete() = ()
override def publicConcrete() = ()
@@ -48,14 +48,14 @@ class S5 extends J {
def packageAbstract() = ()
def protectedAbstract() = ()
def publicAbstract() = ()
-
+
override def packageConcrete() = ()
override def protectedConcrete() = ()
override def publicConcrete() = ()
}
/** Constructors.
*/
-class S6 extends J(1) {
+class S6 extends J(1) {
def packageAbstract() = ()
def protectedAbstract() = ()
def publicAbstract() = ()
diff --git a/test/files/pos/javaReadsSigs/fromjava.java b/test/files/pos/javaReadsSigs/fromjava.java
index 92441b0c6b..eca63961d5 100644
--- a/test/files/pos/javaReadsSigs/fromjava.java
+++ b/test/files/pos/javaReadsSigs/fromjava.java
@@ -22,11 +22,11 @@ class B { };
class Contra {
// Not an Ordering<Character>.
static Ordering<Object> charOrd = scala.math.Ordering.Char$.MODULE$;
-
+
public boolean useCharOrd() {
return charOrd.compare(new Object(), new Object()) == 0;
}
-
+
static Numeric<?> intNum = scala.math.Numeric.IntIsIntegral$.MODULE$;
}
@@ -36,13 +36,13 @@ public class fromjava {
return null;
}
};
-
+
public static Function1<Tuple2<? extends Object, B>, B> f2 = new scala.runtime.AbstractFunction1<Tuple2<? extends Object, B>, B>() {
public B apply(Tuple2<? extends Object, B> tup) {
return tup._2();
}
};
-
+
public static String vector(Vector<String> x) {
Vector<String> y = x.take(2);
return y.head();
diff --git a/test/files/pos/lambdalift.scala b/test/files/pos/lambdalift.scala
index bc997d6f81..10bbf3ac12 100644
--- a/test/files/pos/lambdalift.scala
+++ b/test/files/pos/lambdalift.scala
@@ -11,5 +11,5 @@ object test {
def h() = x;
}
g() + new inner().g();
- }
+ }
}
diff --git a/test/files/pos/listpattern.scala b/test/files/pos/listpattern.scala
index 47145bf037..b64068474c 100644
--- a/test/files/pos/listpattern.scala
+++ b/test/files/pos/listpattern.scala
@@ -1,7 +1,7 @@
trait Value {}
case class FloatValue(x: Double) extends Value
object Test {
- def applyNumeric(op: (Double, Double) => Double):
+ def applyNumeric(op: (Double, Double) => Double):
PartialFunction[List[Value], Value] = {
case List(FloatValue(x), FloatValue(y)) => FloatValue(op(x, y))
}
diff --git a/test/files/pos/looping-jsig.scala b/test/files/pos/looping-jsig.scala
index 6e3313c463..e2d9e76229 100644
--- a/test/files/pos/looping-jsig.scala
+++ b/test/files/pos/looping-jsig.scala
@@ -1,15 +1,15 @@
import scala.collection.mutable._
trait BugTrack {
- trait B[+T]
+ trait B[+T]
val cache : HashMap[A[_], B[_]] = HashMap.empty
- def A[T](f: Int => B[T]): A[T]
+ def A[T](f: Int => B[T]): A[T]
= new A[T]{def apply(in: Int) = f(in)}
-
+
abstract class A[+T] extends (Int => B[T]) {
def giveMeSame = this
- }
+ }
def amethod[T](p: =>A[T]): A[T] = A(in => cache.get(p) match {
case Some(res) => res
diff --git a/test/files/pos/michel6.scala b/test/files/pos/michel6.scala
index b32e8bed75..f312bf1796 100644
--- a/test/files/pos/michel6.scala
+++ b/test/files/pos/michel6.scala
@@ -1,6 +1,6 @@
object M {
def f(x: Int): Unit = {}
-
+
def g(): Int => Unit =
if (0 == 0) f else g()
}
diff --git a/test/files/pos/needstypeearly.scala b/test/files/pos/needstypeearly.scala
index a90c2575f2..bd93b5c45d 100644
--- a/test/files/pos/needstypeearly.scala
+++ b/test/files/pos/needstypeearly.scala
@@ -1,4 +1,4 @@
-abstract class NeedsXEarly {
- val x: Int
+abstract class NeedsXEarly {
+ val x: Int
}
class Foo extends { val x = 1 } with NeedsXEarly
diff --git a/test/files/pos/nothing_manifest_disambig.scala b/test/files/pos/nothing_manifest_disambig.scala
index 9a3db0c6d4..076742033f 100644
--- a/test/files/pos/nothing_manifest_disambig.scala
+++ b/test/files/pos/nothing_manifest_disambig.scala
@@ -1,10 +1,10 @@
object Test {
def mani[T: Manifest](xs: T) = xs
mani(List())
-
+
def listElMani[T: Manifest](xs: List[T]) = xs
listElMani(List())
-
+
def foo[A, C](m : C)(implicit ev: C <:< Traversable[A], mani: Manifest[A]): (C, A, Manifest[A]) = (m, m.head, mani)
- foo(List(1,2,3))
+ foo(List(1,2,3))
} \ No newline at end of file
diff --git a/test/files/pos/nullary.scala b/test/files/pos/nullary.scala
index 614fcdf480..8e5a834012 100644
--- a/test/files/pos/nullary.scala
+++ b/test/files/pos/nullary.scala
@@ -2,7 +2,7 @@ abstract class NullaryTest[T, m[s]] {
def nullary: String = "a"
val x = nullary
- def nullary2: T
+ def nullary2: T
val x2 = nullary2
def nullary3: m[T]
@@ -16,5 +16,5 @@ class Concrete extends NullaryTest[Int, List] {
object test {
(new Concrete).nullary2
- (new Concrete).nullary3
+ (new Concrete).nullary3
}
diff --git a/test/files/pos/nullary_poly.scala b/test/files/pos/nullary_poly.scala
index d2e1e127a1..4de7235a1c 100644
--- a/test/files/pos/nullary_poly.scala
+++ b/test/files/pos/nullary_poly.scala
@@ -2,9 +2,9 @@
class A {
// built-in
synchronized {}
-
+
val x: String = "a".asInstanceOf[String]
-
+
// user-defined:
def polyNullary[T]: List[T] = Nil
}
diff --git a/test/files/pos/override-object-yes.scala b/test/files/pos/override-object-yes.scala
index 858f9b21fc..b0563df0a3 100644
--- a/test/files/pos/override-object-yes.scala
+++ b/test/files/pos/override-object-yes.scala
@@ -14,8 +14,8 @@ package case1 {
override def f = 3
}
}
-
- trait Foo3 {
+
+ trait Foo3 {
object Bar {
def g: Traversable[Int] = Nil
}
diff --git a/test/files/pos/partialfun.scala b/test/files/pos/partialfun.scala
index 9f32a22023..d8971e56fb 100644
--- a/test/files/pos/partialfun.scala
+++ b/test/files/pos/partialfun.scala
@@ -1,6 +1,6 @@
object partialfun {
- def applyPartial[b](f: PartialFunction[Option[String], b])(x: Option[String]) =
+ def applyPartial[b](f: PartialFunction[Option[String], b])(x: Option[String]) =
if (f.isDefinedAt(x)) f(x) else "<undefined>";
applyPartial {
diff --git a/test/files/pos/pat_gilles.scala b/test/files/pos/pat_gilles.scala
index 704d5b9c00..567d700eba 100644
--- a/test/files/pos/pat_gilles.scala
+++ b/test/files/pos/pat_gilles.scala
@@ -1,7 +1,7 @@
abstract class Table2 {
- val x: Any => Unit = { zz:Any =>
+ val x: Any => Unit = { zz:Any =>
zz match {
case Table2.CellUpdated(row, column) =>
val foo = Table2.CellUpdated(2,2)
diff --git a/test/files/pos/propagate.scala b/test/files/pos/propagate.scala
index 84f4f5d6d2..a7f9d6ce6d 100644
--- a/test/files/pos/propagate.scala
+++ b/test/files/pos/propagate.scala
@@ -14,4 +14,4 @@ class C {
-
+
diff --git a/test/files/pos/return_thistype.scala b/test/files/pos/return_thistype.scala
index c0736c0ad9..f164e06cc0 100644
--- a/test/files/pos/return_thistype.scala
+++ b/test/files/pos/return_thistype.scala
@@ -1,8 +1,8 @@
// tests transformation of return type in typedTypeApply (see also tcpoly_gm.scala)
-class As {
- class A {
+class As {
+ class A {
def foo: A.this.type = bar.asInstanceOf[A.this.type]
def foo2: this.type = bar.asInstanceOf[this.type]
- def bar: A = null
+ def bar: A = null
}
}
diff --git a/test/files/pos/scala-singleton.scala b/test/files/pos/scala-singleton.scala
index 08038db93b..5e0baa0cb2 100644
--- a/test/files/pos/scala-singleton.scala
+++ b/test/files/pos/scala-singleton.scala
@@ -3,12 +3,12 @@
object Test {
def f1(x: AnyRef with Singleton): AnyRef with Singleton = x
def f2[T <: AnyRef with Singleton](x: T): T = x
-
+
val x1: AnyRef with Singleton = "abc"
val x2 = "def"
final val x3 = "ghi"
val x4: String = "jkl"
-
+
// compiles...
def narrow1(x: AnyRef): AnyRef with Singleton = x
@@ -17,26 +17,26 @@ object Test {
// fails, wait, what? This fails and narrow1 compiles?
def narrow3(x: AnyRef): AnyRef with Singleton = x.asInstanceOf[AnyRef with Singleton]
-
+
// ok
def narrow4[T <: AnyRef](x: T): AnyRef with Singleton = x
-
+
object imp {
implicit def narrow4[T <: AnyRef](x: T): AnyRef with Singleton = x
val x5: String = "mno"
def imp1 = f1(x5)
-
+
// f2(x5) // doesn't work but I think it should
def imp2 = f2(narrow4(x5))
}
-
+
def main(args: Array[String]): Unit = {
// compiles
f1(x1)
f1(x2)
f1(x3)
f1(x4)
-
+
f2(x1)
// f2(x2)
// f2(x3) // maybe this one should work
diff --git a/test/files/pos/scoping1.scala b/test/files/pos/scoping1.scala
index 9fe1b5f3e5..548f154b6b 100644
--- a/test/files/pos/scoping1.scala
+++ b/test/files/pos/scoping1.scala
@@ -9,4 +9,4 @@ object This extends App {
def foo() = ()
}
val c: C = new D
-}
+}
diff --git a/test/files/pos/selftails.scala b/test/files/pos/selftails.scala
index a4253b80c7..7c58543747 100644
--- a/test/files/pos/selftails.scala
+++ b/test/files/pos/selftails.scala
@@ -1,10 +1,10 @@
package net.liftweb.util
-
+
/**
* This trait adds functionality to Scala standard types
*/
trait BasicTypesHelpers { self: StringHelpers with ControlHelpers =>
-
+
/**
* Compare two arrays of Byte for byte equality.
* @return true if two Byte arrays contain the same bytes
@@ -19,5 +19,5 @@ trait BasicTypesHelpers { self: StringHelpers with ControlHelpers =>
}
}
-trait StringHelpers
+trait StringHelpers
trait ControlHelpers
diff --git a/test/files/pos/seq-ordering.scala b/test/files/pos/seq-ordering.scala
index 517d8ae8aa..8f1d293c40 100644
--- a/test/files/pos/seq-ordering.scala
+++ b/test/files/pos/seq-ordering.scala
@@ -2,7 +2,7 @@ import Ordering.Implicits._
class A {
import Predef.{ implicitly => ? }
-
+
?[Ordering[List[Int]]]
?[Ordering[IndexedSeq[(Int, String)]]]
?[Ordering[Seq[Seq[Int]]]]
diff --git a/test/files/pos/signatures/Test.java b/test/files/pos/signatures/Test.java
index 3d1e3756a7..78c196526b 100644
--- a/test/files/pos/signatures/Test.java
+++ b/test/files/pos/signatures/Test.java
@@ -3,7 +3,7 @@ import test.Outer;
/* Test correct generation of java signatures. The Outer class should not
* have a Java signature attribute for the inner method definition. Trait
- * Mutable should have one, even though it is also a nested definition.
+ * Mutable should have one, even though it is also a nested definition.
* (but for classes there is a way to tell about nesting to the JVM).
*/
class Test {
diff --git a/test/files/pos/signatures/sig.scala b/test/files/pos/signatures/sig.scala
index 4236f27bed..3feb9c456a 100644
--- a/test/files/pos/signatures/sig.scala
+++ b/test/files/pos/signatures/sig.scala
@@ -1,7 +1,7 @@
package test
/* Tests correct generation of Java signatures. The local method 'bar' should
- * not get a generic signature, as it may refer to type parameters of the enclosing
+ * not get a generic signature, as it may refer to type parameters of the enclosing
* method, and the JVM does not know about nested methods.
*/
class Outer {
diff --git a/test/files/pos/spec-Function1.scala b/test/files/pos/spec-Function1.scala
index 8d961c454d..7bdcd072b2 100644
--- a/test/files/pos/spec-Function1.scala
+++ b/test/files/pos/spec-Function1.scala
@@ -35,11 +35,11 @@ package scala
trait Function1[@specialized -T1, @specialized +R] extends AnyRef { self =>
def apply(v1:T1): R
override def toString() = "<function>"
-
+
/** (f compose g)(x) == f(g(x))
*/
def compose[A](g: A => T1): A => R = { x => apply(g(x)) }
-
+
/** (f andThen g)(x) == g(f(x))
*/
def andThen[A](g: R => A): T1 => A = { x => g(apply(x)) }
diff --git a/test/files/pos/spec-arrays.scala b/test/files/pos/spec-arrays.scala
index 96c75dd8de..84f6eef071 100644
--- a/test/files/pos/spec-arrays.scala
+++ b/test/files/pos/spec-arrays.scala
@@ -20,7 +20,7 @@ abstract class AbsArray[T] {
def updateBoolean(idx: Int, elem: Boolean) = update(idx, elem.asInstanceOf[T])
def applyObject(idx: Int): Object = apply(idx).asInstanceOf[Object]
def updateObject(idx: Int, elem: Object) = update(idx, elem.asInstanceOf[T])
-}
+}
final class IntArray(arr: Array[Int]) extends AbsArray[Int] {
def apply(idx: Int): Int = applyInt(idx)
@@ -64,7 +64,7 @@ class ScalaSpecTest extends Test {
while (i < arr.length) { acc = acc + arr.applyInt(i); i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -74,7 +74,7 @@ class ScalaSpecTest extends Test {
}
}
}
-
+
class ScalaSpec2Test extends Test {
val arr: AbsArray[Int] = new IntArray(new Array[Int](1000))
@@ -84,7 +84,7 @@ class ScalaSpec2Test extends Test {
while (i < arr.length) { acc = acc + arr.applyInt(i); i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -94,7 +94,7 @@ class ScalaSpec2Test extends Test {
}
}
}
-
+
class ScalaWrapTest extends Test {
val arr: AbsArray[Int] = new ArraySeq(new Array[Int](1000))
@@ -104,7 +104,7 @@ class ScalaWrapTest extends Test {
while (i < arr.length) { acc = acc + arr.applyInt(i); i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -114,7 +114,7 @@ class ScalaWrapTest extends Test {
}
}
}
-
+
class ScalaGenTest extends Test {
val arr: AbsArray[Integer] = new ArraySeq(new Array[Integer](1000))
for (i <- 0 until arr.length) arr(i) = new Integer(0)
@@ -125,7 +125,7 @@ class ScalaGenTest extends Test {
while (i < arr.length) { acc = acc + arr.apply(i).intValue; i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -135,7 +135,7 @@ class ScalaGenTest extends Test {
}
}
}
-
+
class JavaTest extends Test {
val arr = new Array[Int](1000)
@@ -145,7 +145,7 @@ class JavaTest extends Test {
while (i < arr.length) { acc = acc + arr(i); i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -166,7 +166,7 @@ class ScalaSpec3Test extends Test {
while (i < arr.length) { acc = acc + arr(i); i += 1 }
acc
}
-
+
def modify(j: Int) = {
val base = j * 100 % 1000
var i = 0
@@ -188,25 +188,25 @@ object TestSpec extends scala.testing.Benchmark {
(new ScalaSpecTest).run()
}
}
-
+
object TestSpec2 extends scala.testing.Benchmark {
def run() {
(new ScalaSpec2Test).run()
}
}
-
+
object TestGen extends scala.testing.Benchmark {
def run() {
(new ScalaGenTest).run()
}
}
-
+
object TestWrap extends scala.testing.Benchmark {
def run() {
(new ScalaWrapTest).run()
}
}
-
+
object TestSpec3 extends scala.testing.Benchmark {
def run() {
(new ScalaSpec3Test).run()
diff --git a/test/files/pos/spec-asseenfrom.scala b/test/files/pos/spec-asseenfrom.scala
index edd801071a..cf20fc5ffa 100644
--- a/test/files/pos/spec-asseenfrom.scala
+++ b/test/files/pos/spec-asseenfrom.scala
@@ -1,4 +1,4 @@
-class Automaton[@specialized(Double) W,State] {
+class Automaton[@specialized(Double) W,State] {
def finalWeight(s: State): W = error("todo");
diff --git a/test/files/pos/spec-cyclic.scala b/test/files/pos/spec-cyclic.scala
index 65da297989..b983caa6db 100644
--- a/test/files/pos/spec-cyclic.scala
+++ b/test/files/pos/spec-cyclic.scala
@@ -6,18 +6,18 @@ trait MyPartialFunction[-A, +B] extends AnyRef with AbsFun[A, B]
trait ColMap[A, +B] extends MyPartialFunction[A, B] /*with Collection[(A, B)] */
-trait ColSorted[K,+A] extends ColRanged[K,A]
+trait ColSorted[K,+A] extends ColRanged[K,A]
-trait ColSortedMap[K,+E] extends ColMap[K,E] with ColSorted[K,Tuple2[K,E]]
+trait ColSortedMap[K,+E] extends ColMap[K,E] with ColSorted[K,Tuple2[K,E]]
trait MutMap[A, B] extends AnyRef
with ColMap[A, B]
-trait ColRanged[K, +A] //extends Iterable[A]
+trait ColRanged[K, +A] //extends Iterable[A]
trait JclRanged[K,A] extends ColRanged[K,A] //with MutableIterable[A] {
-trait JclMap[K,E] extends /*collection.jcl.MutableIterable[Tuple2[K,E]] with*/ MutMap[K,E]
+trait JclMap[K,E] extends /*collection.jcl.MutableIterable[Tuple2[K,E]] with*/ MutMap[K,E]
trait JclSorted[K,A] extends ColSorted[K,A] with JclRanged[K,A]
diff --git a/test/files/pos/spec-funs.scala b/test/files/pos/spec-funs.scala
index d54dfd8227..611ec0ef62 100644
--- a/test/files/pos/spec-funs.scala
+++ b/test/files/pos/spec-funs.scala
@@ -19,7 +19,7 @@ final class IntTest {
val xs = new Array[Int](10000)
val f = new AbsFunction1[Int, Int] {
def apply(x: Int): Int = x * x
- }
+ }
for (j <- 0 until niters) {
transF(xs, f)
}
diff --git a/test/files/pos/spec-params.scala b/test/files/pos/spec-params.scala
index 33a252120c..f522512846 100644
--- a/test/files/pos/spec-params.scala
+++ b/test/files/pos/spec-params.scala
@@ -10,7 +10,7 @@ class Foo[@specialized A: ClassManifest] {
def m2[@specialized B <: String](x: B) = x.concat("a")
// conflicting in bounds, no mention of other spec members
- // expect an overload here plus implementation in
+ // expect an overload here plus implementation in
// compatible specialized subclasses
def m3[@specialized B >: A](x: B) = ()
@@ -19,10 +19,10 @@ class Foo[@specialized A: ClassManifest] {
// non-conflicting, expect a normalized overload implementation here
def m5[@specialized B](x: B) = x
-
+
// non-conflicting, expect a normalized implementation here
// and specialized implementations for all expansions in specialized subclasses
- def m6[@specialized B](x: B, y: A) =
+ def m6[@specialized B](x: B, y: A) =
goal(y)
def goal(x: A) = {
diff --git a/test/files/pos/spec-sealed.scala b/test/files/pos/spec-sealed.scala
index a5ee4e3c5f..5782930899 100644
--- a/test/files/pos/spec-sealed.scala
+++ b/test/files/pos/spec-sealed.scala
@@ -2,7 +2,7 @@ sealed abstract class MyList[@specialized +A] {
def head: A
def tail: MyList[A]
- def ::[@specialized B >: A](x: B): MyList[B] =
+ def ::[@specialized B >: A](x: B): MyList[B] =
new Cons[B](x, this)
}
@@ -19,7 +19,7 @@ case class Cons[@specialized a](private val hd: a, tl: MyList[a]) extends MyList
abstract class IntList extends MyList[Int]
object Main extends App {
- val xs = 1 :: 2 :: 3 :: MyNil
+ val xs = 1 :: 2 :: 3 :: MyNil
println(xs)
}
diff --git a/test/files/pos/spec-short.scala b/test/files/pos/spec-short.scala
index 71e56a485a..94a8007c6e 100644
--- a/test/files/pos/spec-short.scala
+++ b/test/files/pos/spec-short.scala
@@ -5,7 +5,7 @@ abstract class AbsFun[@specialized T, @specialized U] {
// abstract function, specialized
def sum(xs: List[T]): Int
- def prod(xs: List[T], mul: (Int, T) => Int): Int =
+ def prod(xs: List[T], mul: (Int, T) => Int): Int =
(1 /: xs)(mul)
// concrete function, not specialized
@@ -18,9 +18,9 @@ abstract class AbsFun[@specialized T, @specialized U] {
class Square extends AbsFun[Int, Int] {
def apply(x: Int): Int = x * x
- def sum(xs: List[Int]): Int =
+ def sum(xs: List[Int]): Int =
(0 /: xs) (_ + _)
- def abs(m: Int): Int =
+ def abs(m: Int): Int =
sum(List(1, 2, 3))
}
diff --git a/test/files/pos/spec-t3497.scala b/test/files/pos/spec-t3497.scala
index ff054aa7de..6cc0e24f89 100644
--- a/test/files/pos/spec-t3497.scala
+++ b/test/files/pos/spec-t3497.scala
@@ -10,7 +10,7 @@ object B extends A[ Array[Byte], Int ] {
return -1
}
}
-
+
return 0
}
}
diff --git a/test/files/pos/spec-tailcall.scala b/test/files/pos/spec-tailcall.scala
index 703ec011ad..d91e2f59ce 100644
--- a/test/files/pos/spec-tailcall.scala
+++ b/test/files/pos/spec-tailcall.scala
@@ -1,5 +1,5 @@
class TailCall[@specialized T] {
- final def dropLeft(n: Int, xs: List[T]): List[T] =
+ final def dropLeft(n: Int, xs: List[T]): List[T] =
if (n == 0) xs
else dropLeft(n - 1, xs.tail)
/*
@@ -7,7 +7,7 @@ class TailCall[@specialized T] {
def crash(o: Option[String]) = filter {
case None if {
- def dropLeft[T](n: Int, xs: List[T]): List[T] =
+ def dropLeft[T](n: Int, xs: List[T]): List[T] =
if (n == 0) xs
else dropLeft(n - 1, xs.tail)
dropLeft(2, List(1, 2, 3)).isEmpty
diff --git a/test/files/pos/spec-traits.scala b/test/files/pos/spec-traits.scala
index 8b1fefe80f..c6cc2921b7 100644
--- a/test/files/pos/spec-traits.scala
+++ b/test/files/pos/spec-traits.scala
@@ -11,12 +11,12 @@ class Lazy {
// issue 3307
class Bug3307 {
- def f[Z](block: String => Z) {
- block("abc")
+ def f[Z](block: String => Z) {
+ block("abc")
}
-
- ({ () =>
- f { implicit x => println(x) } })()
+
+ ({ () =>
+ f { implicit x => println(x) } })()
}
// issue 3301
diff --git a/test/files/pos/spec-vector.scala b/test/files/pos/spec-vector.scala
index 392949c669..06e49b521f 100644
--- a/test/files/pos/spec-vector.scala
+++ b/test/files/pos/spec-vector.scala
@@ -1,4 +1,4 @@
// ticket #3379, abstract overrides
trait Vector extends (Int=>Double) {
- override def apply(i: Int): Double
+ override def apply(i: Int): Double
}
diff --git a/test/files/pos/spec.scala b/test/files/pos/spec.scala
index cc060ffe84..093d3cded4 100644
--- a/test/files/pos/spec.scala
+++ b/test/files/pos/spec.scala
@@ -7,7 +7,7 @@ class Bar[@specialized(Int, AnyRef) A](a: A) {
}
-class WithInner[@specialized(Int, AnyRef) A](a: A) {
+class WithInner[@specialized(Int, AnyRef) A](a: A) {
class Inner {
def meth = a
}
@@ -42,7 +42,7 @@ class Qux[@specialized(AnyRef) A] {
class Foo[@specialized(Int, AnyRef) A](val a: Array[A]) {
a(0)
-
+
def id(elem: A) = a(0) = elem
}
@@ -52,13 +52,13 @@ object Test {
def main(arg: Array[String]) {
val f = new Foo(new Array[String](5))
f.id("")
-
+
val z = new Baz[Int, Double]
z.ab(1, 1.0)
-
+
testspec(new Array[String](5))
testspec(new Array[Int](5))
}
-
+
def testspec[@specialized(Int, AnyRef) T](arr: Array[T]) = arr(0)
}
diff --git a/test/files/pos/strings.scala b/test/files/pos/strings.scala
index 9fe8cfd94b..83b8179706 100644
--- a/test/files/pos/strings.scala
+++ b/test/files/pos/strings.scala
@@ -6,5 +6,5 @@ object test {
}
// #1000
object A {
- println("""This a "raw" string ending with a "double quote"""")
+ println("""This a "raw" string ending with a "double quote"""")
}
diff --git a/test/files/pos/sudoku.scala b/test/files/pos/sudoku.scala
index 9435f504d6..336dc756a9 100644
--- a/test/files/pos/sudoku.scala
+++ b/test/files/pos/sudoku.scala
@@ -3,22 +3,22 @@ object SudokuSolver extends App {
// held in a global variable m. The program begins by reading 9 lines
// of input to fill the board
var m: Array[Array[Char]] = Array.tabulate(9)((x: Int) => readLine.toArray)
-
+
// For printing m, a method print is defined
def print = { println(""); m map (carr => println(new String(carr))) }
-
+
// The test for validity is performed by looping over i=0..8 and
// testing the row, column and 3x3 square containing the given
// coordinate
def invalid(i: Int, x: Int, y: Int, n: Char): Boolean =
i<9 && (m(y)(i) == n || m(i)(x) == n ||
m(y/3*3 + i/3)(x/3*3 + i % 3) == n || invalid(i+1, x, y, n))
-
+
// Looping over a half-closed range of consecutive integers [l..u)
// is factored out into a higher-order function
def fold(f: (Int, Int) => Int, accu: Int, l: Int, u: Int): Int =
if(l==u) accu else fold(f, f(accu, l), l+1, u)
-
+
// The search function examines each position on the board in turn,
// trying the numbers 1..9 in each unfilled position
// The function is itself a higher-order fold, accumulating the value
@@ -34,7 +34,7 @@ object SudokuSolver extends App {
val newaccu = search(x+1, y, f, accu);
m(y)(x) = '0';
newaccu}, accu, 1, 10)}
-
+
// The main part of the program uses the search function to accumulate
// the total number of solutions
println("\n"+search(0,0,i => {print; i+1},0)+" solution(s)")
diff --git a/test/files/pos/super/Super_1.java b/test/files/pos/super/Super_1.java
index 9acbba0ec4..418ae96bc0 100644
--- a/test/files/pos/super/Super_1.java
+++ b/test/files/pos/super/Super_1.java
@@ -1,6 +1,6 @@
// A.java
interface Inter<T> { }
-class Super implements Inter<Super.Inner> {
+class Super implements Inter<Super.Inner> {
public class Inner { };
}
diff --git a/test/files/pos/t0031.scala b/test/files/pos/t0031.scala
index aa787ca794..ec6eae9282 100644
--- a/test/files/pos/t0031.scala
+++ b/test/files/pos/t0031.scala
@@ -4,7 +4,7 @@ object Main {
def ensure(postcondition: a => Boolean): a
}
- def require[a](precondition: => Boolean)(command: => a): Ensure[a] =
+ def require[a](precondition: => Boolean)(command: => a): Ensure[a] =
if (precondition)
new Ensure[a] {
def ensure(postcondition: a => Boolean): a = {
diff --git a/test/files/pos/t0066.scala b/test/files/pos/t0066.scala
index 2153264e7a..9317da7165 100644
--- a/test/files/pos/t0066.scala
+++ b/test/files/pos/t0066.scala
@@ -3,5 +3,5 @@ class GBTree[A, B] /*with Map[A, B, GBTree[A,B]]*/ {
case class Node[A,B](key:A,value:B,smaller:Node[A,B],bigger:Node[A,B])
extends Tree[A,B];
case class Nil[A,B]() extends Tree[A,B];
-
+
}
diff --git a/test/files/pos/t0069.scala b/test/files/pos/t0069.scala
index 113820613f..5a8c15cd5a 100644
--- a/test/files/pos/t0069.scala
+++ b/test/files/pos/t0069.scala
@@ -8,4 +8,4 @@ object testCQ {
*/
}
-
+
diff --git a/test/files/pos/t0227.scala b/test/files/pos/t0227.scala
index a52a9798fc..8650350c4a 100644
--- a/test/files/pos/t0227.scala
+++ b/test/files/pos/t0227.scala
@@ -19,7 +19,7 @@ class SA(val settings: Settings) extends Base {
SD
) ::: settings.f(
SC
- )
+ )
}
object SC extends Factory {
diff --git a/test/files/pos/t0288/Foo.scala b/test/files/pos/t0288/Foo.scala
index 778ba65f58..1f7d81327d 100644
--- a/test/files/pos/t0288/Foo.scala
+++ b/test/files/pos/t0288/Foo.scala
@@ -6,4 +6,4 @@ class Foo extends Outer{
val bar = new Inner(); // Shouldn't this work?
-}
+}
diff --git a/test/files/pos/t0288/Outer.java b/test/files/pos/t0288/Outer.java
index bea3e3f8d0..7a3754fb5d 100644
--- a/test/files/pos/t0288/Outer.java
+++ b/test/files/pos/t0288/Outer.java
@@ -6,4 +6,4 @@ public class Outer{
}
-}
+}
diff --git a/test/files/pos/t0305.scala b/test/files/pos/t0305.scala
index 4838b1fcf8..4d37a02eb3 100644
--- a/test/files/pos/t0305.scala
+++ b/test/files/pos/t0305.scala
@@ -1,5 +1,5 @@
object Test extends App {
-
+
def foo(is:Int*) = 1;
def foo(i:Int) = 2;
diff --git a/test/files/pos/t0438.scala b/test/files/pos/t0438.scala
index fa5b7711ff..33b7efeaac 100644
--- a/test/files/pos/t0438.scala
+++ b/test/files/pos/t0438.scala
@@ -1,9 +1,9 @@
class Foo {
- implicit def pair2fun2[A, B, C](f: (A, B) => C) =
+ implicit def pair2fun2[A, B, C](f: (A, B) => C) =
{p: (A, B) => f(p._1, p._2) }
def foo(f: ((Int, Int)) => Int) = f
- def bar(x: Int, y: Int) = x + y
+ def bar(x: Int, y: Int) = x + y
foo({ (x: Int, y: Int) => x + y }) // works
foo(pair2fun2(bar _)) // works
diff --git a/test/files/pos/t0453.scala b/test/files/pos/t0453.scala
index dfacc5eed7..d59a3d22f2 100644
--- a/test/files/pos/t0453.scala
+++ b/test/files/pos/t0453.scala
@@ -1,5 +1,5 @@
object Test {
- val foo = new {
+ val foo = new {
trait Bar
def l () : Bar = { new Bar {} }
}
diff --git a/test/files/pos/t0599.scala b/test/files/pos/t0599.scala
index 885159af66..6125b99ce2 100644
--- a/test/files/pos/t0599.scala
+++ b/test/files/pos/t0599.scala
@@ -15,4 +15,4 @@ abstract class FooA {
a.xxx;
doB.xxx;
}
- }
+ }
diff --git a/test/files/pos/t0625.scala b/test/files/pos/t0625.scala
index 5614542599..bda463d6a6 100644
--- a/test/files/pos/t0625.scala
+++ b/test/files/pos/t0625.scala
@@ -1,6 +1,6 @@
object Test {
def idMap[C[_],T](m: { def map[U](f: T => U): C[U] }): C[T] = m.map(t => t)
-
+
def main(args: Array[String]): Unit = {
idMap(Some(5))
idMap(Responder.constant(5))
diff --git a/test/files/pos/t0646.scala b/test/files/pos/t0646.scala
index a56e857223..6146e60020 100644
--- a/test/files/pos/t0646.scala
+++ b/test/files/pos/t0646.scala
@@ -2,7 +2,7 @@ object xfor {
import scala.xml.NodeSeq
- val books =
+ val books =
<bks>
<title>Blabla</title>
<title>Blubabla</title>
@@ -13,7 +13,7 @@ object xfor {
case t @ Seq(<title>Blabla</title>) => t
}
- //val n: NodeSeq = new NodeSeq { val theSeq = books.child }
+ //val n: NodeSeq = new NodeSeq { val theSeq = books.child }
//n match {
// case t @ <title>Blabla</title> => t
//}
diff --git a/test/files/pos/t0770.scala b/test/files/pos/t0770.scala
index 7a0a2bf9bb..bb438f1918 100644
--- a/test/files/pos/t0770.scala
+++ b/test/files/pos/t0770.scala
@@ -1,7 +1,7 @@
trait A
{
private[this] val p = 5
-
+
def f = (b: Byte) => p
}
diff --git a/test/files/pos/t0774/unrelated.scala b/test/files/pos/t0774/unrelated.scala
index 1efdb2505e..483f836d0c 100644
--- a/test/files/pos/t0774/unrelated.scala
+++ b/test/files/pos/t0774/unrelated.scala
@@ -1,8 +1,8 @@
object Outer {
import Inner._
-
+
deathname
-
+
object Inner {
def deathname: Int = 1
}
diff --git a/test/files/pos/t0786.scala b/test/files/pos/t0786.scala
index f40cf7d2e1..4d9f1d0dc9 100644
--- a/test/files/pos/t0786.scala
+++ b/test/files/pos/t0786.scala
@@ -2,15 +2,15 @@ object ImplicitProblem {
class M[T]
def nullval[T] = null.asInstanceOf[T];
-
+
trait Rep[T] {
def eval: Int
}
-
+
implicit def toRep0(n: Int) = new Rep[Int] {
def eval = 0
}
-
+
implicit def toRepN[T](n: M[T])(implicit f: T => Rep[T]) = new Rep[M[T]] {
def eval = f(nullval[T]).eval + 1
}
@@ -18,11 +18,11 @@ object ImplicitProblem {
def depth[T <% Rep[T]](n: T) = n.eval
def main(args: Array[String]) {
- println(depth(nullval[M[Int]])) // (1) this works
+ println(depth(nullval[M[Int]])) // (1) this works
println(nullval[M[Int]].eval) // (2) this works
-
+
type m = M[Int]
- println(depth(nullval[m])) // (3) this doesn't compile on 2.7.RC1
+ println(depth(nullval[m])) // (3) this doesn't compile on 2.7.RC1
println(nullval[m].eval) // (4) this works
}
diff --git a/test/files/pos/t1000.scala b/test/files/pos/t1000.scala
index 613af76b94..fabef94fff 100644
--- a/test/files/pos/t1000.scala
+++ b/test/files/pos/t1000.scala
@@ -1,5 +1,5 @@
object A {
- println("""This a "raw" string ending with a "double quote"""")
+ println("""This a "raw" string ending with a "double quote"""")
}
object Test extends App {
diff --git a/test/files/pos/t1035.scala b/test/files/pos/t1035.scala
index e0a9379c7e..bd693d9e68 100644
--- a/test/files/pos/t1035.scala
+++ b/test/files/pos/t1035.scala
@@ -7,7 +7,7 @@ class A {
var name:String = _
def getName() = name
def this(name:String, age:Int){this();this.name=name}
-
+
}
class B(name:String) extends A(name,0){
@@ -18,15 +18,15 @@ class D {
object A {
def unapply(p:A) = Some(p.getName)
}
-
+
object B {
def unapply(p:B) = Some(p.getName)
}
def foo(p:Any) = p match {
- case B(n) => println("B")
- case A(n) => println("A")
-
-
+ case B(n) => println("B")
+ case A(n) => println("A")
+
+
}
}
diff --git a/test/files/pos/t1048.scala b/test/files/pos/t1048.scala
index f88dbbc88b..ce57e72391 100644
--- a/test/files/pos/t1048.scala
+++ b/test/files/pos/t1048.scala
@@ -1,7 +1,7 @@
trait T[U] {
def x: T[V] forSome { type V <: U }
}
-
+
object T {
def unapply[U](t: T[U]): Option[T[V] forSome { type V <: U }] = Some(t.x)
}
@@ -12,4 +12,4 @@ object Test {
}
}
-
+
diff --git a/test/files/pos/t1059.scala b/test/files/pos/t1059.scala
index 659bf375ca..bcd8f0374f 100644
--- a/test/files/pos/t1059.scala
+++ b/test/files/pos/t1059.scala
@@ -25,4 +25,4 @@ object SafeNodeSeq {
})) case _ => None }
-}
+}
diff --git a/test/files/pos/t1071.scala b/test/files/pos/t1071.scala
index 59149a021b..7fb802f8b0 100644
--- a/test/files/pos/t1071.scala
+++ b/test/files/pos/t1071.scala
@@ -12,6 +12,6 @@ object Test {
val c = new C
(c: D).a // works
- c.a // error
+ c.a // error
}
diff --git a/test/files/pos/t1090.scala b/test/files/pos/t1090.scala
index a9bce90b00..dca762af4f 100644
--- a/test/files/pos/t1090.scala
+++ b/test/files/pos/t1090.scala
@@ -10,7 +10,7 @@ object Test {
type Node = Core.this.Node
}
def f(manager : Manager) = manager.iterator.foreach{
- case node : NodeImpl =>
+ case node : NodeImpl =>
}
}
}
diff --git a/test/files/pos/t1107/O.scala b/test/files/pos/t1107/O.scala
index 0198867704..aa605a6d09 100644
--- a/test/files/pos/t1107/O.scala
+++ b/test/files/pos/t1107/O.scala
@@ -4,10 +4,10 @@ object O
case s: Sub => true
case _ => false
}
-
+
def main(args: Array[String]): Unit = {
val c = new AnyRef with C
c.bob.toString + c.bob2.toString
- }
+ }
}
diff --git a/test/files/pos/t1107/T.scala b/test/files/pos/t1107/T.scala
index 0dff0b94fd..1f3712d529 100644
--- a/test/files/pos/t1107/T.scala
+++ b/test/files/pos/t1107/T.scala
@@ -1,6 +1,6 @@
sealed trait Top
sealed trait Sub extends Top
-trait C {
+trait C {
private object P extends Sub
def bob() = P.getClass
def bob2() = O.d(P)
diff --git a/test/files/pos/t1123.scala b/test/files/pos/t1123.scala
index 3812fa3eb3..a7b009cbbe 100644
--- a/test/files/pos/t1123.scala
+++ b/test/files/pos/t1123.scala
@@ -7,5 +7,5 @@ object Test {
}
def f = extraListener.h
}
- def main(args : Array[String]) : Unit = (new Editor).f
+ def main(args : Array[String]) : Unit = (new Editor).f
}
diff --git a/test/files/pos/t1164.scala b/test/files/pos/t1164.scala
index ca780c9a26..307ca92c85 100644
--- a/test/files/pos/t1164.scala
+++ b/test/files/pos/t1164.scala
@@ -1,29 +1,29 @@
-object test {
+object test {
- class Foo[a](val arg : a)
-
- object Foo {
- def apply [a](arg : a, right :a) = new Foo[a](arg)
- def unapply [a](m : Foo[a]) = Some (m.arg)
- }
+ class Foo[a](val arg : a)
+ object Foo {
+ def apply [a](arg : a, right :a) = new Foo[a](arg)
+ def unapply [a](m : Foo[a]) = Some (m.arg)
+ }
+
def matchAndGetArgFromFoo[a]( e:Foo[a]):a = {e match { case Foo(x) => x }}
-
-
+
+
// Try the same thing as above but use function as argument to Bar
// constructor
-
+
type FunIntToA [a] = (Int) => a
- class Bar[a] (var f: FunIntToA[a])
-
+ class Bar[a] (var f: FunIntToA[a])
+
object Bar {
def apply[a](f: FunIntToA[a]) = new Bar[a](f)
def unapply[a](m: Bar[a]) = Some (m.f)
}
-
+
def matchAndGetFunFromBar[a](b:Bar[a]) : FunIntToA[a] = { b match { case Bar(x) => x}}
-
+
}
diff --git a/test/files/pos/t1168.scala b/test/files/pos/t1168.scala
index 75638e792f..d9f38714b8 100644
--- a/test/files/pos/t1168.scala
+++ b/test/files/pos/t1168.scala
@@ -1,5 +1,5 @@
object Test extends App {
-
+
trait SpecialException {}
try {
diff --git a/test/files/pos/t1210a.scala b/test/files/pos/t1210a.scala
index b3492f96e4..fbb0a611d6 100644
--- a/test/files/pos/t1210a.scala
+++ b/test/files/pos/t1210a.scala
@@ -1,9 +1,9 @@
// both styles of abstraction should behave the same
// related to 1210 because that bug broke the OO version below
-trait OO {
+trait OO {
abstract class Test { self =>
type T
-
+
val v: Test {type T = self.T} = self.v.v
}
}
diff --git a/test/files/pos/t122.scala b/test/files/pos/t122.scala
index 630e24ce4a..e3daeef73e 100644
--- a/test/files/pos/t122.scala
+++ b/test/files/pos/t122.scala
@@ -1,4 +1,4 @@
class L {
- val List(v:Int, 2) = List(2, v:Int)
+ val List(v:Int, 2) = List(2, v:Int)
val (a:Int, b:Int) = (1, a)
}
diff --git a/test/files/pos/t1236.scala b/test/files/pos/t1236.scala
index 5e221ce411..7028162ee0 100644
--- a/test/files/pos/t1236.scala
+++ b/test/files/pos/t1236.scala
@@ -1,5 +1,5 @@
trait Empty[E[_]] {
- def e[A]: E[A]
+ def e[A]: E[A]
}
object T {
diff --git a/test/files/pos/t1237.scala b/test/files/pos/t1237.scala
index 7777372138..0d1dd05d50 100644
--- a/test/files/pos/t1237.scala
+++ b/test/files/pos/t1237.scala
@@ -1,11 +1,11 @@
-class HelloWorld {
- def main(args: Array[String]) {
+class HelloWorld {
+ def main(args: Array[String]) {
object TypeBool;
trait Fct {
def g(x : Int) = TypeBool // breaks.
-
+
// def g(x : Int) = 3 // fine.
}
diff --git a/test/files/pos/t1254/t1254.java b/test/files/pos/t1254/t1254.java
index 17e1c60bf5..17dc391672 100644
--- a/test/files/pos/t1254/t1254.java
+++ b/test/files/pos/t1254/t1254.java
@@ -11,7 +11,7 @@ class NothingBug3 {
scala.Option<?> o = scala.None$.MODULE$;
test(o);
- None.toLeft(new scala.runtime.AbstractFunction0<Integer>() {
+ None.toLeft(new scala.runtime.AbstractFunction0<Integer>() {
public Integer apply() { return 0; }
});
}
diff --git a/test/files/pos/t1263/test.scala b/test/files/pos/t1263/test.scala
index 92d8c1cdfa..7ced59083a 100644
--- a/test/files/pos/t1263/test.scala
+++ b/test/files/pos/t1263/test.scala
@@ -2,7 +2,7 @@ package test
trait Map[A, +B] {
def plus(key: A): MapTo = new MapTo(key)
-
+
class MapTo(key: A) {
def arrow [B1 >: B](value: B1) = null
}
diff --git a/test/files/pos/t1272.scala b/test/files/pos/t1272.scala
index d86a909ae5..aab1a886c7 100644
--- a/test/files/pos/t1272.scala
+++ b/test/files/pos/t1272.scala
@@ -2,8 +2,8 @@ object ImplicitTest {
implicit val i : Int = 10
implicit def a(implicit i : Int) : Array[Byte] = null
implicit def b[T](implicit i : Int) : Array[T] = null
-
+
def fn[T](implicit x : T) = 0
-
+
val x = fn[Array[Byte]]
} \ No newline at end of file
diff --git a/test/files/pos/t1292.scala b/test/files/pos/t1292.scala
index 83a996d530..3ed153abf2 100644
--- a/test/files/pos/t1292.scala
+++ b/test/files/pos/t1292.scala
@@ -1,5 +1,5 @@
trait Foo[T <: Foo[T, Enum], Enum <: Enumeration] {
- type StV = Enum#Value
+ type StV = Enum#Value
type Meta = MegaFoo[T, Enum]
type Slog <: Enumeration
diff --git a/test/files/pos/t1318.scala b/test/files/pos/t1318.scala
index f3d2f7ab5a..3fc6e3060f 100644
--- a/test/files/pos/t1318.scala
+++ b/test/files/pos/t1318.scala
@@ -19,7 +19,7 @@ object A extends A0 {}
abstract class B0 extends M {
type mType = B0
- def fs: List[fType] = Nil
+ def fs: List[fType] = Nil
}
object B extends B0 {}
diff --git a/test/files/pos/t1385.scala b/test/files/pos/t1385.scala
index 55356c1f25..59953bcc39 100644
--- a/test/files/pos/t1385.scala
+++ b/test/files/pos/t1385.scala
@@ -1,3 +1,3 @@
-@serializable object Test {
+@serializable object Test {
private def readResolve:AnyRef = this
}
diff --git a/test/files/pos/t1480.scala b/test/files/pos/t1480.scala
index 1d9f94d2e9..3dc3062ca0 100644
--- a/test/files/pos/t1480.scala
+++ b/test/files/pos/t1480.scala
@@ -1,6 +1,6 @@
class Foo{
def compare(newP : Any, oldP : Any) : Boolean = (newP,oldP) match {
- case (newP : AnyRef, oldP : AnyRef) if newP == oldP => newP == oldP
- case (newS : Symbol, oldS: Symbol) if newS == oldS => newS == oldS
+ case (newP : AnyRef, oldP : AnyRef) if newP == oldP => newP == oldP
+ case (newS : Symbol, oldS: Symbol) if newS == oldS => newS == oldS
}
}
diff --git a/test/files/pos/t1545.scala b/test/files/pos/t1545.scala
index 8cdd39660c..51df606da3 100755
--- a/test/files/pos/t1545.scala
+++ b/test/files/pos/t1545.scala
@@ -9,8 +9,8 @@ object Main extends App {
case None => 99
}
}
-
+
println (x (Foo (None))) // prints 99
println (x (Foo (Some ("foo")))) // prints 42
-
+
}
diff --git a/test/files/pos/t1560.scala b/test/files/pos/t1560.scala
index 2af299af86..fb5592016a 100644
--- a/test/files/pos/t1560.scala
+++ b/test/files/pos/t1560.scala
@@ -1,13 +1,13 @@
object Test extends App {
-
+
trait C[T] {
def t: T
}
-
+
def b: Option[C[x] forSome { type x }] = null
-
+
def c = b match {
case Some(b) => b.t
}
-
+
}
diff --git a/test/files/pos/t1565.scala b/test/files/pos/t1565.scala
index df333151d5..030086c541 100644
--- a/test/files/pos/t1565.scala
+++ b/test/files/pos/t1565.scala
@@ -3,7 +3,7 @@ object Bug1565 {
def x() = { 0; (a : Int, b : Int) => println(List(a, b)) ; 0 }
(a : Int, b : Int) => println(List(a, b))
-
+
// various function syntaxes to exercise the parser
val xs = List(1,2,3)
xs.filter(x => x < 2)
diff --git a/test/files/pos/t1591b.scala b/test/files/pos/t1591b.scala
index c671ad6472..84372bb084 100644
--- a/test/files/pos/t1591b.scala
+++ b/test/files/pos/t1591b.scala
@@ -1,10 +1,10 @@
import scala.tools.nsc._
-class SemanticTokens(val compiler: Global) {
- import compiler._
+class SemanticTokens(val compiler: Global) {
+ import compiler._
def build() = ErrorType
-
+
class Process {
def f() = analyzer
// or to crash the compiler instead of a nice message,
diff --git a/test/files/pos/t1711/Seq.scala b/test/files/pos/t1711/Seq.scala
index c18f05cd73..5f426ea0f7 100644
--- a/test/files/pos/t1711/Seq.scala
+++ b/test/files/pos/t1711/Seq.scala
@@ -3,7 +3,7 @@ package com
object Sequence {
def filteringFunction[V](filter: V => Boolean): List[V] => List[V] = {
- def include(v: V) =
+ def include(v: V) =
filter(v)
(l: List[V]) => l.filter(include)
}
diff --git a/test/files/pos/t1722-A.scala b/test/files/pos/t1722-A.scala
index d059bf22f8..9e522a5059 100644
--- a/test/files/pos/t1722-A.scala
+++ b/test/files/pos/t1722-A.scala
@@ -1,8 +1,8 @@
sealed trait Top
trait C {
private object P extends Top
-}
-/*
+}
+/*
$ scala -e 'new AnyRef with C'
error: error while loading Top, class file '/private/tmp/bobobo/./Top.class' is broken
(error reading Scala signature of /private/tmp/bobobo/./Top.class: malformed Scala signature of Top at 185; reference value P of trait C refers to nonexisting symbol.)
diff --git a/test/files/pos/t1722/Test.scala b/test/files/pos/t1722/Test.scala
index f236d3fdc4..5685d8f40a 100755
--- a/test/files/pos/t1722/Test.scala
+++ b/test/files/pos/t1722/Test.scala
@@ -1,5 +1,5 @@
package t1722
object Test {
- val x = new AnyRef with C
+ val x = new AnyRef with C
}
diff --git a/test/files/pos/t1722/Top.scala b/test/files/pos/t1722/Top.scala
index 4ac52412aa..cec4c531f9 100755
--- a/test/files/pos/t1722/Top.scala
+++ b/test/files/pos/t1722/Top.scala
@@ -3,8 +3,8 @@ package t1722
sealed trait Top
trait C {
private object P extends Top
-}
-/*
+}
+/*
$ scala -e 'new AnyRef with C'
error: error while loading Top, class file '/private/tmp/bobobo/./Top.class' is broken
(error reading Scala signature of /private/tmp/bobobo/./Top.class: malformed Scala signature of Top at 185; reference value P of trait C refers to nonexisting symbol.)
diff --git a/test/files/pos/t1745/J.java b/test/files/pos/t1745/J.java
index 8444eabb24..d95efe8e6f 100644
--- a/test/files/pos/t1745/J.java
+++ b/test/files/pos/t1745/J.java
@@ -1,9 +1,9 @@
-class J {
+class J {
S1 s1;
S2 s2;
-
+
String s = bar(S3.foo(), S3.bar("def"));
-
+
private String bar(String s1, String s2) {
return s1 + s2;
}
diff --git a/test/files/pos/t1756.scala b/test/files/pos/t1756.scala
index 1d067c3b04..2e09c8a94a 100755
--- a/test/files/pos/t1756.scala
+++ b/test/files/pos/t1756.scala
@@ -1,5 +1,5 @@
-/**
+/**
This is a tricky issue which has to do with the fact that too much conflicting
type information is propagated into a single implicit search, where the intended
solution applies two implicit searches.
@@ -35,20 +35,20 @@ class Poly[C <: Ring[C]](val c: C) extends Ring[Poly[C]] {
}
object Test extends App {
-
+
implicit def coef2poly[C <: Ring[C]](c: C): Poly[C] = new Poly(c)
val a = new A
val x = new Poly(new A)
-
+
println(x+a) // works
println(a+x) // works
-
+
val y = new Poly(new Poly(new A))
-
+
println(x+y*x) // works
println(x*y+x) // works
println(y*x+x) // works
-
+
println(x+x*y) // failed before
}
diff --git a/test/files/pos/t1761.scala b/test/files/pos/t1761.scala
index a3ceeea815..2af7280734 100644
--- a/test/files/pos/t1761.scala
+++ b/test/files/pos/t1761.scala
@@ -3,7 +3,7 @@ import scala.xml._
class Foo {
val elements: Seq[Node] = Nil
val innerTransform: PartialFunction[Elem, String] = {
- case Elem(_, l: String, _, _, _ @ _*) if elements.exists(_.label == l) =>
+ case Elem(_, l: String, _, _, _ @ _*) if elements.exists(_.label == l) =>
l
}
}
diff --git a/test/files/pos/t1798.scala b/test/files/pos/t1798.scala
index 1624e3025e..93df61e844 100644
--- a/test/files/pos/t1798.scala
+++ b/test/files/pos/t1798.scala
@@ -2,7 +2,7 @@ object Foo { private def bar(): Int = 55 }
class Foo(x: Int) { def this() = this(Foo.bar()) }
/*
- * scalac28 a.scala
+ * scalac28 a.scala
a.scala:2: error: method bar cannot be accessed in object Foo
class Foo(x: Int) { def this() = this(Foo.bar()) }
^
diff --git a/test/files/pos/t1840/J.java b/test/files/pos/t1840/J.java
index fd98b6c4a5..a697596fdd 100644
--- a/test/files/pos/t1840/J.java
+++ b/test/files/pos/t1840/J.java
@@ -1,4 +1,4 @@
package p;
-class J {
- J() {}
+class J {
+ J() {}
}
diff --git a/test/files/pos/t1974.scala b/test/files/pos/t1974.scala
index a0daa13c21..3d28478177 100644
--- a/test/files/pos/t1974.scala
+++ b/test/files/pos/t1974.scala
@@ -1,20 +1,20 @@
object Broken {
private var map = Map[Class[_], String]()
-
+
def addToMap(c : Class[_], s : String) = map += (c -> s)
def fetch(c : Class[_]) = map(c)
}
object Works {
private var map = Map[Class[_], String]()
-
+
def addToMap(c : Class[_], s : String) = map += ((c, s))
def fetch(c : Class[_]) = map(c)
}
object Works2 {
private var map = Map[Class[_], String]()
-
+
def addToMap(c : Class[_], s : String) = map += ((c : Class[_]) -> s)
def fetch(c : Class[_]) = map(c)
} \ No newline at end of file
diff --git a/test/files/pos/t2023.scala b/test/files/pos/t2023.scala
index 21c6fc96a6..de3e848fbd 100644
--- a/test/files/pos/t2023.scala
+++ b/test/files/pos/t2023.scala
@@ -3,11 +3,11 @@ trait C[A]
object C {
implicit def ipl[A](implicit from: A => Ordered[A]): C[A] = null
}
-
+
object P {
def foo[A](i: A, j: A)(implicit c: C[A]): Unit = ()
}
-
+
class ImplicitChainTest {
def testTrivial: Unit = {
P.foo('0', '9')
diff --git a/test/files/pos/t2060.scala b/test/files/pos/t2060.scala
index 2c701150e4..cf7250f545 100644
--- a/test/files/pos/t2060.scala
+++ b/test/files/pos/t2060.scala
@@ -4,7 +4,7 @@
* line':
*
* val failure = 1.0 + new Op[Int]
- *
+ *
* we reduce the problem to finding a function from Double to
* {+: _ >: Op[Int] <: Any}, that is, a method which takes
* an argument which is an Op[Int] or a supertype thereof.
diff --git a/test/files/pos/t2081.scala b/test/files/pos/t2081.scala
index 52388464a5..d772c02dc2 100644
--- a/test/files/pos/t2081.scala
+++ b/test/files/pos/t2081.scala
@@ -7,5 +7,5 @@ object ScalaForRubyists {
val x = 10.days
// a couple parser corner cases I wanted not to break
- val y = 5.e0 + 5e7
+ val y = 5.e0 + 5e7
}
diff --git a/test/files/pos/t2082.scala b/test/files/pos/t2082.scala
index 3a160612fe..38937d78fb 100644
--- a/test/files/pos/t2082.scala
+++ b/test/files/pos/t2082.scala
@@ -1,10 +1,10 @@
trait Mapper[T <: Mapper[T]]
-trait KeyedMapper[KeyType, T <: KeyedMapper[KeyType, T]] extends Mapper[T]
+trait KeyedMapper[KeyType, T <: KeyedMapper[KeyType, T]] extends Mapper[T]
-trait KeyedMetaMapper[KeyType, T <: KeyedMapper[KeyType, T]]
+trait KeyedMetaMapper[KeyType, T <: KeyedMapper[KeyType, T]]
trait MappedForeignKey[KeyType, Owner <: Mapper[Owner], Other <: KeyedMapper[KeyType, Other]]
@@ -19,19 +19,19 @@ class TestRun extends KeyedMapper[Long, TestRun] with IdPK {
object TestRun extends TestRun with KeyedMetaMapper[Long, TestRun]
class MetaTestSubject extends TestSubject with KeyedMetaMapper[Long, TestSubject]
-object TestSubject extends MetaTestSubject
+object TestSubject extends MetaTestSubject
object Main {
-
+
def oneToOneJoin[PType <: KeyedMapper[Long, PType] with IdPK,
CType <: KeyedMapper[Long, CType] with IdPK,
- CMetaType <: CType with KeyedMetaMapper[Long, CType],
+ CMetaType <: CType with KeyedMetaMapper[Long, CType],
FKType <: MappedForeignKey[Long, PType, CType]]
- (parents: List[PType], metaMapper: CMetaType, keyGetter: (PType) => FKType ):
+ (parents: List[PType], metaMapper: CMetaType, keyGetter: (PType) => FKType ):
Map[Long, CType] = Map.empty
-
+
def callIt {
- oneToOneJoin[TestRun, TestSubject, MetaTestSubject,
+ oneToOneJoin[TestRun, TestSubject, MetaTestSubject,
MappedForeignKey[Long, TestRun, TestSubject]](
List(), TestSubject, (tr: TestRun) => tr.testSubject)
}
diff --git a/test/files/pos/t2130-2.scala b/test/files/pos/t2130-2.scala
index 1d0b33c3e5..464f5e0d8e 100644
--- a/test/files/pos/t2130-2.scala
+++ b/test/files/pos/t2130-2.scala
@@ -10,7 +10,7 @@ package object bar {
class Dingus
object Dingus
case class Dongus(x: Float)
-
+
def apply(xs: Int*) = new Bippy(xs.sum)
def apply() = new Bippy(5)
}
diff --git a/test/files/pos/t2133.scala b/test/files/pos/t2133.scala
index c74d0a4bbf..99bac5c38b 100644
--- a/test/files/pos/t2133.scala
+++ b/test/files/pos/t2133.scala
@@ -13,6 +13,6 @@ trait Foo2 {
class Bob extends AnyRef with Foo with Foo2 {
import bip._
import bar._
-
+
def go() = fn()
}
diff --git a/test/files/pos/t2168.scala b/test/files/pos/t2168.scala
index e3b24b6a72..845c5b7361 100644
--- a/test/files/pos/t2168.scala
+++ b/test/files/pos/t2168.scala
@@ -2,5 +2,5 @@ object Test extends App {
def foo1(x: AnyRef) = x match { case x: Function0[_] => x() }
def foo2(x: AnyRef) = x match { case x: Function0[Any] => x() }
}
-
-
+
+
diff --git a/test/files/pos/t2171.scala b/test/files/pos/t2171.scala
index 6c754c76a6..a5663c96cd 100644
--- a/test/files/pos/t2171.scala
+++ b/test/files/pos/t2171.scala
@@ -3,5 +3,5 @@ final object test {
try 0 catch { case ex => println(msg) }
def main (args: Array[String]): Unit =
- while (true) logIgnoredException ("...")
+ while (true) logIgnoredException ("...")
}
diff --git a/test/files/pos/t2261.scala b/test/files/pos/t2261.scala
index aac5c9e0fd..af24234235 100644
--- a/test/files/pos/t2261.scala
+++ b/test/files/pos/t2261.scala
@@ -5,5 +5,5 @@ object Test {
x = List(1,2,3)
// the problem here was that somehow the type variable that was used to infer the type argument for List.apply
// would accumulate several conflicting constraints
- // can't reproduce with
+ // can't reproduce with
} \ No newline at end of file
diff --git a/test/files/pos/t2281.scala b/test/files/pos/t2281.scala
index fc4ae1ca25..3515d2e2e6 100644
--- a/test/files/pos/t2281.scala
+++ b/test/files/pos/t2281.scala
@@ -27,11 +27,11 @@ class B {
outarr
}
- def spanForSentence(x : String,picktext : String) =
+ def spanForSentence(x : String,picktext : String) =
if(x == "\n\n"){
<br/><br/>
}else{
- <span class='clicksentence' style={if(x == picktext) "background-color: yellow" else ""}>{x}</span>
+ <span class='clicksentence' style={if(x == picktext) "background-color: yellow" else ""}>{x}</span>
}
def selectableSentences(text : String, picktext : String) = {
diff --git a/test/files/pos/t2305.scala b/test/files/pos/t2305.scala
index 8b5abccbe0..d0b103fdba 100644
--- a/test/files/pos/t2305.scala
+++ b/test/files/pos/t2305.scala
@@ -1,6 +1,6 @@
import java.util.ArrayList
-trait Bind[Z[_]]
+trait Bind[Z[_]]
class MySerializable[X] extends java.io.Serializable
@@ -17,7 +17,7 @@ object works {
object breaks {
def runbind(implicit bind: Bind[ArrayList]) {}
- runbind
+ runbind
/*java.lang.AssertionError: assertion failed: java.io.Serializable
at scala.Predef$.assert(Predef.scala:107)
at scala.tools.nsc.symtab.Types$TypeRef.transform(Types.scala:1417)
diff --git a/test/files/pos/t2310.scala b/test/files/pos/t2310.scala
index 68912b4961..e08411a3df 100644
--- a/test/files/pos/t2310.scala
+++ b/test/files/pos/t2310.scala
@@ -1,15 +1,15 @@
import scala.Stream._
object consistencyError {
- /* this gives an error:
+ /* this gives an error:
Consistency problem compiling (virtual file)!
Trying to call method body%1(List(scala.collection.immutable.Stream[A])) with arguments (List(tp2, temp6, temp5))
case (l #:: ls, rs) => None
^
scala.tools.nsc.symtab.Types$TypeError: too many arguments for method body%1: (val rs: scala.collection.immutable.Stream[A])None.type
-
+
two errors found
- vss(0) =
+ vss(0) =
args = List(tp2, temp6, temp5)
vss(1) = value rs, value ls, value l
args = List(tp2, temp6, temp5)
@@ -18,19 +18,19 @@ object consistencyError {
labels(1) = method body%1
labels(0) = method body%0
bx = 1
- label.tpe = (val rs: scala.collection.immutable.Stream[A])None.type
+ label.tpe = (val rs: scala.collection.immutable.Stream[A])None.type
*/
def crash[A](lefts: Stream[A], rights: Stream[A]) = (lefts, rights) match {
case (Stream.Empty, Stream.Empty) => None
case (l #:: ls, rs) => None
}
-
+
// These work
// def works1[A](lefts: Stream[A]) = lefts match {
// case Stream.Empty => None
// case l #:: ls => None
// }
- //
+ //
// def works2[A](lefts: Stream[A], rights: Stream[A]) = (lefts, rights) match {
// case (Stream.Empty, Stream.Empty) => None
// case (ls, rs) => None
diff --git a/test/files/pos/t2399.scala b/test/files/pos/t2399.scala
index 07882dd549..b009f7856b 100644
--- a/test/files/pos/t2399.scala
+++ b/test/files/pos/t2399.scala
@@ -3,12 +3,12 @@ trait That2[A, R <: That2[A, R]]
trait T[A, This >: Null <: That1[A] with T[A, This]] extends That2[A, This] {
self: This =>
-
+
private var next: This = _
def isEmpty = next eq null
-
+
def length: Int = {
def loop(x: This, cnt: Int): Int = if (x.isEmpty) cnt else loop(x.next, cnt + 1)
loop(self, 0)
- }
+ }
} \ No newline at end of file
diff --git a/test/files/pos/t2413/TestScalac.scala b/test/files/pos/t2413/TestScalac.scala
index 098e852dd7..6992a30f2c 100644
--- a/test/files/pos/t2413/TestScalac.scala
+++ b/test/files/pos/t2413/TestScalac.scala
@@ -4,7 +4,7 @@ class Foo extends TestJava {
// THIS METHOD YIELDS TO CRASH
/* def foomethod : Option[String] => Unit = {
- case None =>
+ case None =>
val path = repeatParam("s","a","b","c")
()
case Some(error) =>
diff --git a/test/files/pos/t2421.scala b/test/files/pos/t2421.scala
index 0d01be29fc..26e485c160 100644
--- a/test/files/pos/t2421.scala
+++ b/test/files/pos/t2421.scala
@@ -7,8 +7,8 @@ object Test {
implicit val forcibleInt: (Int <~< Forcible[Int]) = error("")
def headProxy[P <: Forcible[Int]](implicit w: Int <~< P): P = error("")
-
- headProxy
- // trivial[Int] should not be considered a valid implicit, since w would have type Int <~< Int,
+
+ headProxy
+ // trivial[Int] should not be considered a valid implicit, since w would have type Int <~< Int,
// and headProxy's type parameter P cannot be instantiated to Int
} \ No newline at end of file
diff --git a/test/files/pos/t2421_delitedsl.scala b/test/files/pos/t2421_delitedsl.scala
index a05887023a..ad6afa7bd8 100644
--- a/test/files/pos/t2421_delitedsl.scala
+++ b/test/files/pos/t2421_delitedsl.scala
@@ -1,10 +1,10 @@
trait DeliteDSL {
abstract class <~<[-From, +To] extends (From => To)
- implicit def trivial[A]: A <~< A = new (A <~< A) {def apply(x: A) = x}
+ implicit def trivial[A]: A <~< A = new (A <~< A) {def apply(x: A) = x}
trait Forcible[T]
object Forcible {
- def factory[T](f: T => Forcible[T]) = new (T <~< Forcible[T]){def apply(x: T) = f(x)}
+ def factory[T](f: T => Forcible[T]) = new (T <~< Forcible[T]){def apply(x: T) = f(x)}
}
case class DeliteInt(x: Int) extends Forcible[Int]
@@ -22,16 +22,16 @@ trait DeliteDSL {
// If T is already a proxy (it is forcible), the compiler should use
// forcibleIdentity to deduce that P=T. If T is Int, the compiler
// should use intToForcible to deduce that P=DeliteInt.
- //
+ //
// Without this feature, the user must write 'xs.proxyOfFirst[DeliteInt]',
// with the feature they can write 'xs.proxyOfFirst', which is shorter and
// avoids exposing internal DELITE types to the world.
object Test {
- val x = new DeliteCollection(List(1,2,3)).headProxy
+ val x = new DeliteCollection(List(1,2,3)).headProxy
// inferred: val x: Forcible[Int] = new DeliteCollection[Int](List.apply[Int](1, 2, 3)).headProxy[Forcible[Int]](forcibleInt);
- val xAlready = new DeliteCollection(List(DeliteInt(1),DeliteInt(2),DeliteInt(3))).headProxy
+ val xAlready = new DeliteCollection(List(DeliteInt(1),DeliteInt(2),DeliteInt(3))).headProxy
// inferred: val xAlready: DeliteInt = new DeliteCollection[DeliteInt](List.apply[DeliteInt](DeliteInt(1), DeliteInt(2), DeliteInt(3))).headProxy[DeliteInt](trivial[DeliteInt]);
}
} \ No newline at end of file
diff --git a/test/files/pos/t2421b_pos.scala b/test/files/pos/t2421b_pos.scala
index 0df3461662..8b848abb75 100644
--- a/test/files/pos/t2421b_pos.scala
+++ b/test/files/pos/t2421b_pos.scala
@@ -11,7 +11,7 @@ object Test {
f
}
-/* bug:
+/* bug:
error: ambiguous implicit values:
both method b in object Test1 of type [X <: Test1.B]Test1.F[X]
and method a in object Test1 of type => Test1.F[Test1.A]
diff --git a/test/files/pos/t2429.scala b/test/files/pos/t2429.scala
index 9b9cb89de7..3ea3f9e2a5 100755
--- a/test/files/pos/t2429.scala
+++ b/test/files/pos/t2429.scala
@@ -1,8 +1,8 @@
object Msg {
trait T
-
+
trait TSeq
-
+
object TSeq {
implicit def fromSeq(s: Seq[T]): TSeq = error("stub")
}
diff --git a/test/files/pos/t2444.scala b/test/files/pos/t2444.scala
index 6f07dcf92d..a052270196 100644
--- a/test/files/pos/t2444.scala
+++ b/test/files/pos/t2444.scala
@@ -2,14 +2,14 @@ object Test {
trait Foo
- class Bar {
+ class Bar {
object baz extends Foo
}
- def frob[P1, P2<:Foo](f:P1 => P2) = ()
+ def frob[P1, P2<:Foo](f:P1 => P2) = ()
def main(args:Array[String]) : Unit = {
- frob((p:Bar) => p.baz)
+ frob((p:Bar) => p.baz)
}
}
diff --git a/test/files/pos/t2464/ScalaOne_1.scala b/test/files/pos/t2464/ScalaOne_1.scala
index 1caf8ecae4..0271b9ce72 100644
--- a/test/files/pos/t2464/ScalaOne_1.scala
+++ b/test/files/pos/t2464/ScalaOne_1.scala
@@ -1,6 +1,6 @@
class ScalaClassOne extends ClassTwo.Child {
def func4() = {
func2
- }
+ }
}
diff --git a/test/files/pos/t247.scala b/test/files/pos/t247.scala
index e976404e61..983b7998a9 100644
--- a/test/files/pos/t247.scala
+++ b/test/files/pos/t247.scala
@@ -12,7 +12,7 @@ class TreeMapFactory[KEY](newOrder:Order[KEY]) extends MapFactory[KEY] {
def Empty[V] = new TreeMap[KEY,V](new TreeMapFactory[KEY](order));
}
-class Tree[KEY,Entry](order:Order[KEY]) {
+class Tree[KEY,Entry](order:Order[KEY]) {
def size =0;
}
diff --git a/test/files/pos/t2504.scala b/test/files/pos/t2504.scala
index 67f8226852..0abe7dd13e 100755
--- a/test/files/pos/t2504.scala
+++ b/test/files/pos/t2504.scala
@@ -1,5 +1,5 @@
object Test {
val ys: Iterable[_] = Array("abc")
- val xs = Array("abc")
+ val xs = Array("abc")
xs sameElements Array("abc")
}
diff --git a/test/files/pos/t2545.scala b/test/files/pos/t2545.scala
index 6ad994223c..b4238fb718 100755
--- a/test/files/pos/t2545.scala
+++ b/test/files/pos/t2545.scala
@@ -1,6 +1,6 @@
trait Frog[T] {
- def hello: T
- def size: Int
+ def hello: T
+ def size: Int
}
trait OnlyWithFrogs {
diff --git a/test/files/pos/t2569/Child.scala b/test/files/pos/t2569/Child.scala
index 64f4dc172f..3d7f4248b5 100644
--- a/test/files/pos/t2569/Child.scala
+++ b/test/files/pos/t2569/Child.scala
@@ -1,9 +1,9 @@
package varargs
-
+
class Child extends Parent {
-
+
override def concatenate(strings: String*): String =
strings map("\"" + _ + "\"") mkString("(", ", ", ")")
-
+
}
diff --git a/test/files/pos/t2569/Parent.java b/test/files/pos/t2569/Parent.java
index 89421becbd..133f2ee567 100644
--- a/test/files/pos/t2569/Parent.java
+++ b/test/files/pos/t2569/Parent.java
@@ -1,7 +1,7 @@
package varargs;
-
+
public class Parent {
-
+
public String concatenate(String... strings) {
StringBuilder builder = new StringBuilder();
for (String s : strings) {
@@ -9,5 +9,5 @@ package varargs;
}
return builder.toString();
}
-
+
}
diff --git a/test/files/pos/t262.scala b/test/files/pos/t262.scala
index ec6187b36b..b81490977c 100644
--- a/test/files/pos/t262.scala
+++ b/test/files/pos/t262.scala
@@ -1,11 +1,11 @@
object O {
abstract class A {
- def f:A;
+ def f:A;
}
class B extends A {
def f = if(1 == 2) new C else new D;
}
- class C extends A {
+ class C extends A {
def f = this;
}
class D extends A {
diff --git a/test/files/pos/t2665.scala b/test/files/pos/t2665.scala
index 3163e31326..108daf509a 100644
--- a/test/files/pos/t2665.scala
+++ b/test/files/pos/t2665.scala
@@ -1,3 +1,3 @@
object Test {
- val x: Unit = Array("")
+ val x: Unit = Array("")
} \ No newline at end of file
diff --git a/test/files/pos/t2669.scala b/test/files/pos/t2669.scala
index 72e931178c..e34f08f0f5 100644
--- a/test/files/pos/t2669.scala
+++ b/test/files/pos/t2669.scala
@@ -23,6 +23,6 @@ import java.util.Vector
// scalac cannot detect lack of type params, but then throws AssertionError later:
class TVector2639 {
- val b = new Vector // this line passed without error detected
+ val b = new Vector // this line passed without error detected
val a = new Vector(1) // this line caused throwing AssertionError when scalac
}
diff --git a/test/files/pos/t2691.scala b/test/files/pos/t2691.scala
index 5f0ddd122f..94012a8177 100644
--- a/test/files/pos/t2691.scala
+++ b/test/files/pos/t2691.scala
@@ -1,5 +1,5 @@
object Breakdown {
- def unapplySeq(x: Int): Some[List[String]] = Some(List("", "there"))
+ def unapplySeq(x: Int): Some[List[String]] = Some(List("", "there"))
}
object Test {
42 match {
diff --git a/test/files/pos/t2726/SQLBuilder_1.scala b/test/files/pos/t2726/SQLBuilder_1.scala
index 8d07a88265..7b3e3d8322 100644
--- a/test/files/pos/t2726/SQLBuilder_1.scala
+++ b/test/files/pos/t2726/SQLBuilder_1.scala
@@ -1,7 +1,7 @@
class SQLBuilder extends SQLBuilder.Segment
-object SQLBuilder {
- trait Segment
+object SQLBuilder {
+ trait Segment
}
diff --git a/test/files/pos/t2910.scala b/test/files/pos/t2910.scala
index d4d92fa765..17a6a64809 100644
--- a/test/files/pos/t2910.scala
+++ b/test/files/pos/t2910.scala
@@ -9,9 +9,9 @@ object Test {
lazy val s = "abc"
}
- def test3 {
+ def test3 {
lazy val lazyBar = bar
- object bar {
+ object bar {
val foo = 12
}
lazy val lazyBar2 = bar
@@ -29,5 +29,5 @@ object Test {
lazy val f: Int = g
Console.println("foo")
lazy val g: Int = f
- }
+ }
} \ No newline at end of file
diff --git a/test/files/pos/t2913.scala b/test/files/pos/t2913.scala
index 11d8b92053..ee86b9e402 100755
--- a/test/files/pos/t2913.scala
+++ b/test/files/pos/t2913.scala
@@ -11,13 +11,13 @@ class RichA {
object Test {
implicit def AToRichA(a: A) = new RichA
-
+
val a = new A
a.foo()
a.foo(1)
a.foo("") // Without implicits, a type error regarding invalid argument types is generated at `""`. This is
- // the same position as an argument, so the 'second try' typing with an Implicit View is tried,
+ // the same position as an argument, so the 'second try' typing with an Implicit View is tried,
// and AToRichA(a).foo("") is found.
//
// My reading of the spec "7.3 Views" is that `a.foo` denotes a member of `a`, so the view should
@@ -48,6 +48,6 @@ object Main {
val fn = (a : Int, str : String) => "a: " + a + ", str: " + str
implicit def fx[T](f : (T,String) => String) = (x:T) => f(x,null)
println(fn(1))
- ()
+ ()
}
}
diff --git a/test/files/pos/t2939.scala b/test/files/pos/t2939.scala
index 3be4d4d561..67677f2f18 100644
--- a/test/files/pos/t2939.scala
+++ b/test/files/pos/t2939.scala
@@ -4,10 +4,10 @@ object Proxies {
class C1 extends MapProxy[Int,Int] { def self = Map[Int,Int]() }
class C2 extends mutable.MapProxy[Int,Int] { def self = mutable.Map[Int,Int]() }
class C3 extends immutable.MapProxy[Int,Int] { def self = immutable.Map[Int,Int]() }
-
+
class C4 extends SetProxy[Int] { def self = Set[Int]() }
class C5 extends mutable.SetProxy[Int] { def self = mutable.Set[Int]() }
class C6 extends immutable.SetProxy[Int] { def self = immutable.Set[Int]() }
-
+
class C7 extends SeqProxy[Int] { def self = Seq[Int]() }
} \ No newline at end of file
diff --git a/test/files/pos/t2940/Error.scala b/test/files/pos/t2940/Error.scala
index bf5a6bd0df..7c600667f3 100644
--- a/test/files/pos/t2940/Error.scala
+++ b/test/files/pos/t2940/Error.scala
@@ -5,8 +5,8 @@ abstract class Error {
object Test {
trait Quux[T] extends Cycle[Quux[T]]
val x = new Quux[Int] { def doStuff() { } }
-
+
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/pos/t2994a.scala b/test/files/pos/t2994a.scala
index cb4a389e2f..f2d57c34ca 100644
--- a/test/files/pos/t2994a.scala
+++ b/test/files/pos/t2994a.scala
@@ -17,8 +17,8 @@ object Naturals {
type _5 = SUCC[_4]
type _6 = SUCC[_5]
-
- // crashes scala-2.8.0 beta1
+
+ // crashes scala-2.8.0 beta1
trait MUL[n <: NAT, m <: NAT] extends NAT {
trait curry[n[_[_], _], s[_]] { type f[z <: NAT] = n[s, z] }
type a[s[_ <: NAT] <: NAT, z <: NAT] = n#a[curry[m#a, s]#f, z]
diff --git a/test/files/pos/t3020.scala b/test/files/pos/t3020.scala
index 016563e27f..cb429cd94f 100644
--- a/test/files/pos/t3020.scala
+++ b/test/files/pos/t3020.scala
@@ -1,7 +1,7 @@
object Test {
def main(args: Array[String]): Unit = {
var x = true
-
+
( { if (x) new scala.util.Random() } .asInstanceOf[Runnable] )
}
}
diff --git a/test/files/pos/t3079.scala b/test/files/pos/t3079.scala
index fa732ea516..4bead34ff3 100644
--- a/test/files/pos/t3079.scala
+++ b/test/files/pos/t3079.scala
@@ -10,8 +10,8 @@ object Coerce {
def IdentityCoerce[B] = new Coerce[Identity[B], B] {
// java.lang.Error: A in trait Identity cannot be instantiated from ?x$1.type
def unwrap = _.value
-
+
// Providing the type of _ works around the problem.
- //def unwrap = (_: Identity[B]).value
+ //def unwrap = (_: Identity[B]).value
}
} \ No newline at end of file
diff --git a/test/files/pos/t3106.scala b/test/files/pos/t3106.scala
index 162e93366f..cf7b507126 100644
--- a/test/files/pos/t3106.scala
+++ b/test/files/pos/t3106.scala
@@ -3,5 +3,5 @@ class Sample[A] (val d0: ((A,A)) => A) {}
object Sample {
implicit def apply[A] (x:A): Sample[A] = {
new Sample(p => p._1)
- }
+ }
} \ No newline at end of file
diff --git a/test/files/pos/t3136.scala b/test/files/pos/t3136.scala
index 33d42c2f3c..6a5850aeb0 100644
--- a/test/files/pos/t3136.scala
+++ b/test/files/pos/t3136.scala
@@ -11,7 +11,7 @@ object NullaryMethodType {
}
object Test {
- def TEST(tp: Type): String =
+ def TEST(tp: Type): String =
tp match {
case PolyType(ps1, PolyType(ps2, res @ PolyType(a, b))) => "1"+tp // couldn't find a simpler version that still crashes
case NullaryMethodType(meh) => "2"+meh
diff --git a/test/files/pos/t3174b.scala b/test/files/pos/t3174b.scala
index 4df1bfe837..002c4f090f 100644
--- a/test/files/pos/t3174b.scala
+++ b/test/files/pos/t3174b.scala
@@ -2,9 +2,9 @@ trait Foo[X] { def foo : Map[String,Foo[X]] }
object Test {
def f[T]() : Foo[T] = {
- class Anon extends Foo[T] {
- var foo: Map[String, Foo[T]] = Map[String,Foo[T]]()
- //def foo = Map[String,Foo[T]]()
+ class Anon extends Foo[T] {
+ var foo: Map[String, Foo[T]] = Map[String,Foo[T]]()
+ //def foo = Map[String,Foo[T]]()
//def foo_=(x: Map[String,Foo[T]]) {}
}
new Anon
diff --git a/test/files/pos/t3175-pos.scala b/test/files/pos/t3175-pos.scala
index 89bbf8b5fc..497ff8255c 100644
--- a/test/files/pos/t3175-pos.scala
+++ b/test/files/pos/t3175-pos.scala
@@ -1,7 +1,7 @@
object Test {
- def f(g:{val update:Unit}) = g.update
-
+ def f(g:{val update:Unit}) = g.update
+
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/pos/t3177.scala b/test/files/pos/t3177.scala
index 9f9528faec..21893c9422 100644
--- a/test/files/pos/t3177.scala
+++ b/test/files/pos/t3177.scala
@@ -1,17 +1,17 @@
trait InvariantFunctor[F[_]] {
def xmap[A, B](ma: F[A], f: A => B, g: B => A): F[B]
}
-
+
object InvariantFunctor {
import Endo._
-
+
implicit val EndoInvariantFunctor = new InvariantFunctor[Endo] {
- def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
+ def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
}
-
+
// The definition about fails with:
// anon-type.scala:9: error: not found: value b
- // def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
+ // def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
// ^
// anon-type.scala:8: error: not found: type $anon
// implicit val EndoInvariantFunctor = new InvariantFunctor[Endo] {
@@ -20,9 +20,9 @@ object InvariantFunctor {
// These both work:
// implicit val EndoInvariantFunctorAscribed: InvariantFunctor[Endo] = new InvariantFunctor[Endo] {
- // def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
+ // def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = (b: B) => f(ma(g(b)))
// }
- //
+ //
// implicit val EndoInvariantFunctorStubbed = new InvariantFunctor[Endo] {
// def xmap[A, B](ma: Endo[A], f: A => B, g: B => A): Endo[B] = error("stub")
// }
diff --git a/test/files/pos/t3234.scala b/test/files/pos/t3234.scala
index 1553f1fa05..443d0467f0 100644
--- a/test/files/pos/t3234.scala
+++ b/test/files/pos/t3234.scala
@@ -1,6 +1,6 @@
trait Trait1 {
// need more work before this one works
- // @inline
+ // @inline
def foo2(n: Int) = n*n
}
diff --git a/test/files/pos/t3274.scala b/test/files/pos/t3274.scala
index 15723184bb..dfa6a4ec01 100644
--- a/test/files/pos/t3274.scala
+++ b/test/files/pos/t3274.scala
@@ -1,7 +1,7 @@
-trait A { this: B =>
- trait X {
+trait A { this: B =>
+ trait X {
class Y1 extends Y
- }
+ }
}
trait B extends A {
diff --git a/test/files/pos/t3312.scala b/test/files/pos/t3312.scala
index aef965d2e7..9bf3e23ed3 100644
--- a/test/files/pos/t3312.scala
+++ b/test/files/pos/t3312.scala
@@ -12,6 +12,6 @@ trait B extends Root {
object Foo extends A with B {
override def say: String = foo(super[A].say)
-
+
def foo(p: => String): String = p
}
diff --git a/test/files/pos/t3349/AbstractTupleSet.java b/test/files/pos/t3349/AbstractTupleSet.java
index 38e4743ef4..47b440a589 100644
--- a/test/files/pos/t3349/AbstractTupleSet.java
+++ b/test/files/pos/t3349/AbstractTupleSet.java
@@ -5,5 +5,5 @@ public abstract class AbstractTupleSet implements TupleSet {
public void addColumn(String name, String expr) {
throw new UnsupportedOperationException();
- }
+ }
}
diff --git a/test/files/pos/t3411.scala b/test/files/pos/t3411.scala
index b58e52db8d..b76fec66a6 100644
--- a/test/files/pos/t3411.scala
+++ b/test/files/pos/t3411.scala
@@ -1,6 +1,6 @@
object A {
def g(c: PartialFunction[Any,Unit]) {}
-
+
def f {
lazy val x = 0
g { case `x` => }
diff --git a/test/files/pos/t3429/A.scala b/test/files/pos/t3429/A.scala
index 80785db51d..4b705808c1 100644
--- a/test/files/pos/t3429/A.scala
+++ b/test/files/pos/t3429/A.scala
@@ -2,8 +2,8 @@ class A {
@Test(exc = classOf[Exception])
def myTestMethod = 0
}
-// rytz@chara:~/scala/trunk/sandbox$ javac Test.java
-// rytz@chara:~/scala/trunk/sandbox$ ../build/pack/bin/scalac A.scala
+// rytz@chara:~/scala/trunk/sandbox$ javac Test.java
+// rytz@chara:~/scala/trunk/sandbox$ ../build/pack/bin/scalac A.scala
// A.scala:2: error: type mismatch;
// found : java.lang.Class[Exception](classOf[java.lang.Exception])
// required: java.lang.Class
diff --git a/test/files/pos/t3430.scala b/test/files/pos/t3430.scala
index 3129c6276a..4990abb2a1 100644
--- a/test/files/pos/t3430.scala
+++ b/test/files/pos/t3430.scala
@@ -1,6 +1,6 @@
// package com.example
-object A {
+object A {
def f1(f: String => Boolean) = f("a")
def f2(): Boolean =
diff --git a/test/files/pos/t3440.scala b/test/files/pos/t3440.scala
index 026abfea1f..46bba1b207 100644
--- a/test/files/pos/t3440.scala
+++ b/test/files/pos/t3440.scala
@@ -9,7 +9,7 @@ object test {
case object Int16 extends SampleFormat1 {
def readerFactory = error("")
}
-
+
(new {}: Any) match {
case 8 => Int8
case 16 => Int16
diff --git a/test/files/pos/t3521/DoubleValue.java b/test/files/pos/t3521/DoubleValue.java
index e8c093890b..28f05cd972 100644
--- a/test/files/pos/t3521/DoubleValue.java
+++ b/test/files/pos/t3521/DoubleValue.java
@@ -4,4 +4,4 @@ import java.lang.annotation.*;
@Target(ElementType.FIELD)
public @interface DoubleValue {
double value();
-} \ No newline at end of file
+} \ No newline at end of file
diff --git a/test/files/pos/t3528.scala b/test/files/pos/t3528.scala
index ff49b3e929..b1c4344731 100644
--- a/test/files/pos/t3528.scala
+++ b/test/files/pos/t3528.scala
@@ -4,5 +4,5 @@ class A {
// 3528 comments
def f2 = List(Set(1,2,3), List(1,2,3))
// 2322
- def f3 = List(null: Range, null: List[Int])
+ def f3 = List(null: Range, null: List[Int])
}
diff --git a/test/files/pos/t3568.scala b/test/files/pos/t3568.scala
index c8e3fcc4be..0f26e2fad3 100644
--- a/test/files/pos/t3568.scala
+++ b/test/files/pos/t3568.scala
@@ -14,7 +14,7 @@ package buffer {
// ArrayVec2 can be compiled, instantiated and used.
def main(args: Array[String]) { println(works) }
}
-
+
trait ElemType { type Element; type Component <: ElemType }
trait Float1 extends ElemType { type Element = Float; type Component = Float1}
class Vec2 extends ElemType { type Element = Vec2; type Component = Float1 }
diff --git a/test/files/pos/t3578.scala b/test/files/pos/t3578.scala
index d984118208..306cde811b 100644
--- a/test/files/pos/t3578.scala
+++ b/test/files/pos/t3578.scala
@@ -24,7 +24,7 @@ object Test {
case class JInt(num: BigInt) extends JValue
case class JBool(value: Boolean) extends JValue
case class JField(name: String, value: JValue) extends JValue
- case class JObject(obj: List[JField]) extends JValue
+ case class JObject(obj: List[JField]) extends JValue
case class JArray(arr: List[JValue]) extends JValue
}
diff --git a/test/files/pos/t3582.scala b/test/files/pos/t3582.scala
index 0ac112efbf..e20af5e61d 100644
--- a/test/files/pos/t3582.scala
+++ b/test/files/pos/t3582.scala
@@ -6,7 +6,7 @@ object Test {
// [[syntax trees at end of typer]]
// abstract trait C#5[A#9116 >: Nothing#5832 <: Any#52] extends scala#33.AnyRef#2780;
// final object Test#15 extends java.lang.Object#2485 with ScalaObject#1913 {
-// def ImplicitParamCA#9123[CC#9124[A#10858 >: Nothing#5832 <: Any#52] >: [A#10858]Nothing#5832 <: [A#10858]Any#52,
+// def ImplicitParamCA#9123[CC#9124[A#10858 >: Nothing#5832 <: Any#52] >: [A#10858]Nothing#5832 <: [A#10858]Any#52,
// A#9125 >: Nothing#5832 <: Any#52](implicit ev#10856: C#5[A#9127]): Unit#3818
// = scala#34.this.Predef#1683.implicitly#8816[C#5[A#10858]]()
// }
diff --git a/test/files/pos/t3636.scala b/test/files/pos/t3636.scala
index 24d18c653d..dbfc7a2c94 100644
--- a/test/files/pos/t3636.scala
+++ b/test/files/pos/t3636.scala
@@ -5,11 +5,11 @@ class CTxnLocal[ T ] {
}
trait Txn
-
+
trait ProcTxn {
def ccstm: Txn
}
-
+
trait TxnLocal[ @specialized T ] {
def apply()( implicit tx: ProcTxn ) : T
def set( v: T )( implicit tx: ProcTxn ) : Unit
diff --git a/test/files/pos/t3670.scala b/test/files/pos/t3670.scala
index ec4fbe5b4f..19959f910f 100644
--- a/test/files/pos/t3670.scala
+++ b/test/files/pos/t3670.scala
@@ -1,4 +1,4 @@
-class A {
+class A {
val n = {
val z = {
lazy val bb = 1
diff --git a/test/files/pos/t3671.scala b/test/files/pos/t3671.scala
index 1ca9327bb7..75559f84e2 100644
--- a/test/files/pos/t3671.scala
+++ b/test/files/pos/t3671.scala
@@ -2,6 +2,6 @@ object Crash {
def crash(value: Int): Unit =
value match {
case java.lang.Integer.MAX_VALUE => println("MAX_VALUE")
- case java.lang.Integer.MIN_VALUE => println("MIN_VALUE")
+ case java.lang.Integer.MIN_VALUE => println("MIN_VALUE")
}
} \ No newline at end of file
diff --git a/test/files/pos/t3731.scala b/test/files/pos/t3731.scala
index 9a617012b3..75938540c0 100644
--- a/test/files/pos/t3731.scala
+++ b/test/files/pos/t3731.scala
@@ -2,7 +2,7 @@ object Test{
trait ZW[S]{type T}
def ZipWith[S, M <: ZW[S]]: M#T = error("ZW")
- // meh must be parameterised to force an asSeenFrom that
+ // meh must be parameterised to force an asSeenFrom that
// duplicates the refinement in the TR's pre without updating its sym
def meh[A] = ZipWith[A, ZW[A]{type T=Stream[A]}]
diff --git a/test/files/pos/t3837.scala b/test/files/pos/t3837.scala
index bcaf63cc8d..e1797dba77 100644
--- a/test/files/pos/t3837.scala
+++ b/test/files/pos/t3837.scala
@@ -1,8 +1,8 @@
class BipClass { }
trait BipTrait {
self: BipClass =>
-
- private[this] def foo() = 5
+
+ private[this] def foo() = 5
def bar() = this.foo()
}
// error: value foo is not a member of BipTrait with BipClass
diff --git a/test/files/pos/t3856.scala b/test/files/pos/t3856.scala
index 71c7bdc99d..fd253a56a8 100644
--- a/test/files/pos/t3856.scala
+++ b/test/files/pos/t3856.scala
@@ -1,4 +1,4 @@
-case class C[T](x: T)
+case class C[T](x: T)
case class CS(xs: C[_]*)
diff --git a/test/files/pos/t3864/tuples_1.scala b/test/files/pos/t3864/tuples_1.scala
index ed0c63dc79..1d19af6e41 100644
--- a/test/files/pos/t3864/tuples_1.scala
+++ b/test/files/pos/t3864/tuples_1.scala
@@ -4,7 +4,7 @@ trait PimpedType[X] {
trait Tuples {
-
+
trait Tuple15W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O] extends PimpedType[Tuple15[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple15[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15)}
@@ -13,7 +13,7 @@ trait Tuple15W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O] extends PimpedType[T
implicit def ToTuple15W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O)): Tuple15W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O] = new { val value = t } with Tuple15W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O]
-
+
trait Tuple16W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] extends PimpedType[Tuple16[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple16[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16)}
@@ -22,7 +22,7 @@ trait Tuple16W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] extends PimpedTyp
implicit def ToTuple16W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P)): Tuple16W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P] = new { val value = t } with Tuple16W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P]
-
+
trait Tuple17W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q] extends PimpedType[Tuple17[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple17[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17)}
@@ -31,7 +31,7 @@ trait Tuple17W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q] extends Pimped
implicit def ToTuple17W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q)): Tuple17W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q] = new { val value = t } with Tuple17W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q]
-
+
trait Tuple18W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R] extends PimpedType[Tuple18[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple18[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18)}
@@ -40,7 +40,7 @@ trait Tuple18W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R] extends Pim
implicit def ToTuple18W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R)): Tuple18W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R] = new { val value = t } with Tuple18W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R]
-
+
trait Tuple19W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S] extends PimpedType[Tuple19[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple19[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19)}
@@ -49,7 +49,7 @@ trait Tuple19W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S] extends
implicit def ToTuple19W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S)): Tuple19W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S] = new { val value = t } with Tuple19W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S]
-
+
trait Tuple20W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T] extends PimpedType[Tuple20[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple20[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20)}
@@ -58,7 +58,7 @@ trait Tuple20W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T] exten
implicit def ToTuple20W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T)): Tuple20W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T] = new { val value = t } with Tuple20W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T]
-
+
trait Tuple21W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U] extends PimpedType[Tuple21[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple21[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21)}
@@ -67,7 +67,7 @@ trait Tuple21W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U] ex
implicit def ToTuple21W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U](t: (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U)): Tuple21W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U] = new { val value = t } with Tuple21W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U]
-
+
trait Tuple22W[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V] extends PimpedType[Tuple22[A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V]] {
def fold[Z](f: => (A, B, C, D, E, F, G, H, I, J, K, L, M, N, O, P, Q, R, S, T, U, V) => Z): Z = {import value._; f(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22)}
def toIndexedSeq[Z](implicit ev: value.type <:< Tuple22[Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z, Z]): IndexedSeq[Z] = {val zs = ev(value); import zs._; IndexedSeq(_1, _2, _3, _4, _5, _6, _7, _8, _9, _10, _11, _12, _13, _14, _15, _16, _17, _18, _19, _20, _21, _22)}
diff --git a/test/files/pos/t3866.scala b/test/files/pos/t3866.scala
index 5d366ccf13..5fe7e3f50e 100644
--- a/test/files/pos/t3866.scala
+++ b/test/files/pos/t3866.scala
@@ -13,5 +13,5 @@ abstract class ImplicitRepeated {
f("A", 1, 2) // should be implicitly resolved to alternative b)
f( 1, 2 ) // should be implicitly resolved to alternative a)
// ImplicitRepeated.this.f[Int, Nothing]("A", ImplicitRepeated.this.anyToN[Int](1), ImplicitRepeated.this.anyToN[Int](2));
- // ImplicitRepeated.this.f[Int, Nothing](ImplicitRepeated.this.anyToN[Int](1), ImplicitRepeated.this.anyToN[Int](2))
+ // ImplicitRepeated.this.f[Int, Nothing](ImplicitRepeated.this.anyToN[Int](1), ImplicitRepeated.this.anyToN[Int](2))
} \ No newline at end of file
diff --git a/test/files/pos/t3898.scala b/test/files/pos/t3898.scala
index ab47bbd877..075692e5a8 100644
--- a/test/files/pos/t3898.scala
+++ b/test/files/pos/t3898.scala
@@ -2,5 +2,5 @@ trait Atomic[@specialized(Boolean) T] {
def x: T
def f(fn: T => T): Boolean = f(fn(x), true)
- def f[R](a: T, b: R): R = b
+ def f[R](a: T, b: R): R = b
}
diff --git a/test/files/pos/t3927.scala b/test/files/pos/t3927.scala
index c1344febba..eb4c4b3be5 100644
--- a/test/files/pos/t3927.scala
+++ b/test/files/pos/t3927.scala
@@ -3,4 +3,4 @@ object A {
implicit lazy val e: Equiv[Int] = error("")
implicitly[Equiv[Int]]
}
-}
+}
diff --git a/test/files/pos/t3938/Parent.java b/test/files/pos/t3938/Parent.java
index 08fae330bb..a35f435030 100644
--- a/test/files/pos/t3938/Parent.java
+++ b/test/files/pos/t3938/Parent.java
@@ -1,7 +1,7 @@
public class Parent<A>{
class I1 {}
class I2 extends Parent.I1 {}
-
+
// OKAY:
class I3 extends I1 {}
static class I4 {}
diff --git a/test/files/pos/t3938/UseParent.scala b/test/files/pos/t3938/UseParent.scala
index 685d1a03a8..3f4c2298d5 100644
--- a/test/files/pos/t3938/UseParent.scala
+++ b/test/files/pos/t3938/UseParent.scala
@@ -1,6 +1,6 @@
object UseParent {
classOf[Parent[AnyRef]#I2]
-
+
// OKAY
classOf[Parent[AnyRef]#I3]
classOf[Parent.I5]
diff --git a/test/files/pos/t3972.scala b/test/files/pos/t3972.scala
index 5dfc10fcef..d6cbb3dfb7 100644
--- a/test/files/pos/t3972.scala
+++ b/test/files/pos/t3972.scala
@@ -2,7 +2,7 @@ object CompilerCrash {
def main(args: Array[String]) {
args match {
case Array("a", a @ _*) => { } // The code compiles fine if this line is commented out or "@ _*" is deleted or this line is swapped for the next line
- case Array("b") => { } // The code compiles fine if this line is commented out
+ case Array("b") => { } // The code compiles fine if this line is commented out
case Array("c", c) => {
0 // The code compiles fine if this line is commented out
}
diff --git a/test/files/pos/t4020.scala b/test/files/pos/t4020.scala
index f976460191..8a758d53f7 100644
--- a/test/files/pos/t4020.scala
+++ b/test/files/pos/t4020.scala
@@ -14,11 +14,11 @@ class B {
def mthd(foo: a2.Foo) = {
foo match {
case a2.Foo2(i) => i
-
- // Note: This case is impossible. In fact, scalac
+
+ // Note: This case is impossible. In fact, scalac
// will (correctly) report an error if it is uncommented,
// but a warning if it is commented.
-
+
// case a1.Foo1(i) => i
}
}
diff --git a/test/files/pos/t4202.scala b/test/files/pos/t4202.scala
index b2a0c0120a..aca7d503ee 100644
--- a/test/files/pos/t4202.scala
+++ b/test/files/pos/t4202.scala
@@ -2,7 +2,7 @@ object t4202_1 {
() => {
trait T {
def t = ()
- }
+ }
}
}
diff --git a/test/files/pos/t4220.scala b/test/files/pos/t4220.scala
index 98f2649767..8fb999e345 100644
--- a/test/files/pos/t4220.scala
+++ b/test/files/pos/t4220.scala
@@ -1,4 +1,4 @@
-// don't know if our half-working sbt build is meaningfully
+// don't know if our half-working sbt build is meaningfully
// tested for #4220 with this, but it can't hurt.
class Boo(a: Int = 0)
diff --git a/test/files/pos/t4243.scala b/test/files/pos/t4243.scala
index e6c66faff0..5fa8665918 100644
--- a/test/files/pos/t4243.scala
+++ b/test/files/pos/t4243.scala
@@ -3,16 +3,16 @@
object wrap {
-
+
trait DomainLike[@specialized(Int) A, +This <: Domain[A]]
-
+
trait Domain[@specialized(Int) B]
extends DomainLike[B, Domain[B]]
-
+
trait IterableDomainLike[@specialized(Int) C, +This <: IterableDomain[C]]
extends DomainLike[C, This]
-
+
trait IterableDomain[@specialized(Int) D]
extends Domain[D] with IterableDomainLike[D, IterableDomain[D]]
-
+
}
diff --git a/test/files/pos/t4266.scala b/test/files/pos/t4266.scala
index 222f65e970..301cc264bc 100644
--- a/test/files/pos/t4266.scala
+++ b/test/files/pos/t4266.scala
@@ -1,21 +1,21 @@
object Test {
-
+
trait Tensor2Like[
- @specialized(Int) A1,
- +D1 <: DomainLike[A1],
+ @specialized(Int) A1,
+ +D1 <: DomainLike[A1],
+D <: Product2DomainLike[D1]
] {
def domain: D;
-
+
def checkKey(k1: A1) {
domain._1.contains(k1)
}
}
-
+
trait DomainLike[A] {
def contains(key: A): Boolean;
}
-
+
// trait DomainLike[@specialized(Int) A] {
// def contains(key: A): Boolean;
// }
diff --git a/test/files/pos/t4269.scala b/test/files/pos/t4269.scala
index 99a30785b4..70f0471a9a 100644
--- a/test/files/pos/t4269.scala
+++ b/test/files/pos/t4269.scala
@@ -1,5 +1,5 @@
-class A {
- PartialFunction.condOpt(Nil) {
- case items@List(_*) if true =>
+class A {
+ PartialFunction.condOpt(Nil) {
+ case items@List(_*) if true =>
}
}
diff --git a/test/files/pos/t4275.scala b/test/files/pos/t4275.scala
index 1938aceadc..183cb5155e 100644
--- a/test/files/pos/t4275.scala
+++ b/test/files/pos/t4275.scala
@@ -1,6 +1,6 @@
object Test {
def f = "abc".count(_ > 'a')
-
+
class A {
private val count: Int = 0
}
diff --git a/test/files/pos/t430-feb09.scala b/test/files/pos/t430-feb09.scala
index 1499f32b7a..bba8996e4e 100644
--- a/test/files/pos/t430-feb09.scala
+++ b/test/files/pos/t430-feb09.scala
@@ -13,12 +13,12 @@ package c.scala {
case class C[T]()
}
-// Doesn't compile: type Nothing is not a member of d.scala
+// Doesn't compile: type Nothing is not a member of d.scala
package d.scala.d {
case class D[T]()
}
-// Doesn't compile: type Any is not a member of e.scala
+// Doesn't compile: type Any is not a member of e.scala
package e.scala {
case class E[T >: Nothing]()
}
diff --git a/test/files/pos/t4432.scala b/test/files/pos/t4432.scala
index 106312311a..09f4c2ab34 100644
--- a/test/files/pos/t4432.scala
+++ b/test/files/pos/t4432.scala
@@ -9,7 +9,7 @@ object Main {
}
new A
}
-
+
def foo2 = {
class B {
val x = {
@@ -38,5 +38,5 @@ object Main {
}
new D
}
-
+
}
diff --git a/test/files/pos/t4457_1.scala b/test/files/pos/t4457_1.scala
index 32edd6cfdc..4442f28e4a 100644
--- a/test/files/pos/t4457_1.scala
+++ b/test/files/pos/t4457_1.scala
@@ -15,7 +15,7 @@ object ImplicitConvAmbiguity2 {
def aFunc[A](a: NN[A]) = new BB[A]
def bFunc[T](e1: N[T]) = {}
-
+
def typeMe1 {
val x = aFunc(4F)
bFunc(x)
diff --git a/test/files/pos/t4501.scala b/test/files/pos/t4501.scala
index 40628f1a4b..dac2524024 100644
--- a/test/files/pos/t4501.scala
+++ b/test/files/pos/t4501.scala
@@ -6,7 +6,7 @@ class A {
def f1 = foo(ListBuffer(), List())
def f2 = foo(ListBuffer(), ListBuffer())
def f3 = foo(List(), List())
-
+
// scalap
// def f1 : scala.collection.Seq[scala.Nothing] = { /* compiled code */ }
// def f2 : scala.collection.mutable.ListBuffer[scala.Nothing] = { /* compiled code */ }
diff --git a/test/files/pos/t460.scala b/test/files/pos/t460.scala
index 3fc13e4dd0..466d06c2ad 100644
--- a/test/files/pos/t460.scala
+++ b/test/files/pos/t460.scala
@@ -1,8 +1,8 @@
object Bug460 {
def testFun(x : Int, y : Int) = x + y
- val fn = testFun _
-
- fn(1, 2) // Ok
+ val fn = testFun _
+
+ fn(1, 2) // Ok
(testFun(_, _))(1, 2) // Ok
(testFun _).apply(1, 2)
(testFun _)(1, 2) // Error! (but no longer)
diff --git a/test/files/pos/t4603/S.scala b/test/files/pos/t4603/S.scala
index c7d809d9f7..9e228195a4 100644
--- a/test/files/pos/t4603/S.scala
+++ b/test/files/pos/t4603/S.scala
@@ -1,7 +1,7 @@
// S.scala
class S extends J[AnyRef]
-object Test {
+object Test {
def main(args:Array[String]) {
J.f(classOf[S])
}
diff --git a/test/files/pos/t4716.scala b/test/files/pos/t4716.scala
index ec29e8d2cb..d4bd55c55b 100644
--- a/test/files/pos/t4716.scala
+++ b/test/files/pos/t4716.scala
@@ -2,7 +2,7 @@
-trait Bug2[@specialized(Int) +A] extends TraversableOnce[A] {
+trait Bug2[@specialized(Int) +A] extends TraversableOnce[A] {
def ++[B >: A](that: TraversableOnce[B]) = {
lazy val it = that.toIterator
it
diff --git a/test/files/pos/t4840.scala b/test/files/pos/t4840.scala
index bf44f71d7a..eefa3b2dee 100644
--- a/test/files/pos/t4840.scala
+++ b/test/files/pos/t4840.scala
@@ -1,6 +1,6 @@
class Crashy {
def g(): Option[Any] = None
-
+
def crashy() = {
for (_ <- g()) {
(null: Any) match {
diff --git a/test/files/pos/t4853.scala b/test/files/pos/t4853.scala
index c91f2d6b05..ed9b320434 100644
--- a/test/files/pos/t4853.scala
+++ b/test/files/pos/t4853.scala
@@ -3,7 +3,7 @@ object Animal {
}
class Animal[A <: AwakeOrAsleep] {
- def goToSleep[B >: A <: Awake]: Animal[Asleep] = new Animal[Asleep]
+ def goToSleep[B >: A <: Awake]: Animal[Asleep] = new Animal[Asleep]
def wakeUp[B >: A <: Asleep]: Animal[Awake] = new Animal[Awake]
}
diff --git a/test/files/pos/t5127.scala b/test/files/pos/t5127.scala
index c562025302..e90b8d00a0 100644
--- a/test/files/pos/t5127.scala
+++ b/test/files/pos/t5127.scala
@@ -4,5 +4,5 @@ package foo {
class Parametrized1[T] extends Abstract1[Parametrized2[T]] {
def bar(a: AnyRef) { a match { case d: Parametrized1[_] => println("ok") } }
}
- class Parametrized2[T] extends Parametrized1[T] with Abstract2[Parametrized2[T]]
+ class Parametrized2[T] extends Parametrized1[T] with Abstract2[Parametrized2[T]]
}
diff --git a/test/files/pos/t516.scala b/test/files/pos/t516.scala
index ce4e0e3dd6..735b259436 100644
--- a/test/files/pos/t516.scala
+++ b/test/files/pos/t516.scala
@@ -4,7 +4,7 @@ import scala.collection.script._;
class Members;
object subscriber extends Subscriber[Message[String] with Undoable, Members] {
- def notify(pub: Members, event: Message[String] with Undoable): Unit =
+ def notify(pub: Members, event: Message[String] with Undoable): Unit =
(event: Message[String]) match {
case Include(l, elem) => Console.println("ADD: " + elem);
case Remove(l, elem) => Console.println("REM: " + elem);
@@ -12,4 +12,4 @@ object subscriber extends Subscriber[Message[String] with Undoable, Members] {
//case r : Remove [HasTree] with Undoable =>
}
}
-
+
diff --git a/test/files/pos/t573.scala b/test/files/pos/t573.scala
index 694d001e3c..7b9d377cd1 100644
--- a/test/files/pos/t573.scala
+++ b/test/files/pos/t573.scala
@@ -16,15 +16,15 @@ import DirX._;
abstract class Linked {
type Node <: Node0;
-
+
abstract class Node0 {
self: Node =>
-
+
var next : Node = _;
var prev : Node = _;
-
+
def get(dir : Dir) = if (dir == BEFORE) prev; else next;
- private def set(dir : Dir, node : Node) =
+ private def set(dir : Dir, node : Node) =
if (dir == BEFORE) prev = node; else next = node;
def link(dir : Dir, node : Node) = {
@@ -34,7 +34,7 @@ abstract class Linked {
node.set(dir.reverse, self);
}
-
+
def end(dir : Dir) : Node = {
if (get(dir) == null) this;
else get(dir).end(dir);
diff --git a/test/files/pos/t577.scala b/test/files/pos/t577.scala
index ede45399a0..236c1395e2 100644
--- a/test/files/pos/t577.scala
+++ b/test/files/pos/t577.scala
@@ -1,15 +1,15 @@
trait PriorityTree {
type Node <: BasicTreeNode;
-
+
val top = initTree;
top.next = (initTree);
top.next.prev = (top);
-
+
def initTree : Node;
+
+
-
-
-
+
trait BasicTreeNode {
private[PriorityTree] var next : Node = _;
private[PriorityTree] var prev : Node = _;
diff --git a/test/files/pos/t599.scala b/test/files/pos/t599.scala
index 968e2deaee..53f205a26b 100644
--- a/test/files/pos/t599.scala
+++ b/test/files/pos/t599.scala
@@ -16,4 +16,4 @@ abstract class FooA {
val aaa: InnerB.this.B = doB
aaa.xxx;
}
- }
+ }
diff --git a/test/files/pos/t602.scala b/test/files/pos/t602.scala
index 18dd405645..6062b976b6 100644
--- a/test/files/pos/t602.scala
+++ b/test/files/pos/t602.scala
@@ -10,5 +10,5 @@ case class Span[K <: Ordered[K]](low: Option[K], high: Option[K]) extends Functi
case Span(Some(low), None) => (k >= low)
case Span(None, Some(high)) => (k <= high)
case _ => false
- }
+ }
}
diff --git a/test/files/pos/t613.scala b/test/files/pos/t613.scala
index e140833106..6e3841dada 100644
--- a/test/files/pos/t613.scala
+++ b/test/files/pos/t613.scala
@@ -3,9 +3,9 @@ class Outer extends App {
abstract class C {
val x: Int
}
- val foo = new C {
+ val foo = new C {
class I {
- val z = y
+ val z = y
}
val x = (new I).z
}
diff --git a/test/files/pos/t616.scala b/test/files/pos/t616.scala
index bb91c732a6..074ad190da 100644
--- a/test/files/pos/t616.scala
+++ b/test/files/pos/t616.scala
@@ -1,7 +1,7 @@
object testImplicit {
implicit def foo2bar(foo: Foo): Bar = foo.bar
class Foo(val bar: Bar) {
- def testCoercion = {val a = this; a.baz} // here, foo2bar is inferred by the compiler, as expected
+ def testCoercion = {val a = this; a.baz} // here, foo2bar is inferred by the compiler, as expected
//def testCoercionThisImplicit = baz // --> error: not found: value baz
def testCoercionThisExplicit: Any = this.baz // --> error: value baz is not a member of Foo
}
diff --git a/test/files/pos/t651.scala b/test/files/pos/t651.scala
index c146446af9..44d20ad580 100644
--- a/test/files/pos/t651.scala
+++ b/test/files/pos/t651.scala
@@ -4,12 +4,12 @@ trait Test3 {
trait MatchableImpl {
trait MatchImpl;
}
-
+
trait BracePairImpl {
trait BraceImpl extends MatchableImpl {
private object MyMatch1 extends MatchImpl;
protected def match0 : MatchImpl = MyMatch1;
-
+
}
}
}
diff --git a/test/files/pos/t675.scala b/test/files/pos/t675.scala
index c736d9dc05..c284c0e202 100644
--- a/test/files/pos/t675.scala
+++ b/test/files/pos/t675.scala
@@ -7,7 +7,7 @@ trait T {
}
trait X {
def foo : Foo = FOO_0;
- }
+ }
}
object Test extends App {
@@ -15,5 +15,5 @@ object Test extends App {
val x = new t.X{}
Console.println(x.foo)
}
-
-
+
+
diff --git a/test/files/pos/t690.scala b/test/files/pos/t690.scala
index a93c54f007..3fcdca785d 100644
--- a/test/files/pos/t690.scala
+++ b/test/files/pos/t690.scala
@@ -10,5 +10,5 @@ trait test {
override def foo(t : T) = super.foo(t);
}
def t : T;
- M0.foo(t);
+ M0.foo(t);
}
diff --git a/test/files/pos/t711.scala b/test/files/pos/t711.scala
index 4dd6040969..10b410e54e 100644
--- a/test/files/pos/t711.scala
+++ b/test/files/pos/t711.scala
@@ -2,7 +2,7 @@ abstract class Component
class Button extends Component {
def sayHey: Unit = Console.println("Hey, I'm a button") }
-
+
abstract class Origin {
val delegate: Component }
diff --git a/test/files/pos/t715/meredith_1.scala b/test/files/pos/t715/meredith_1.scala
index 4be7b48908..3ed2e57d7a 100644
--- a/test/files/pos/t715/meredith_1.scala
+++ b/test/files/pos/t715/meredith_1.scala
@@ -9,7 +9,7 @@ trait XMLRenderer {
classOf[java.lang.Boolean],
classOf[java.lang.Integer],
classOf[java.lang.Float],
- classOf[java.lang.String]
+ classOf[java.lang.String]
// more to come
)
@@ -21,14 +21,14 @@ trait XMLRenderer {
value match {
case null => Text( "null" )
case vUnmatched =>
- if (value.isInstanceOf[java.lang.Boolean])
+ if (value.isInstanceOf[java.lang.Boolean])
Text( value.asInstanceOf[java.lang.Boolean].toString )
- else if (value.isInstanceOf[java.lang.Integer])
+ else if (value.isInstanceOf[java.lang.Integer])
Text( value.asInstanceOf[java.lang.Integer].toString )
- else if (value.isInstanceOf[java.lang.Float])
+ else if (value.isInstanceOf[java.lang.Float])
Text( value.asInstanceOf[java.lang.Float].toString )
- // else if (value.isInstanceOf[T])
- // pojo2XML( value.asInstanceOf[T] )
+ // else if (value.isInstanceOf[T])
+ // pojo2XML( value.asInstanceOf[T] )
else
<unmatchedType>
<theType>
@@ -57,7 +57,7 @@ trait XMLRenderer {
null,
field.getName,
null,
- TopScope,
+ TopScope,
fldValXML
)
}
@@ -73,7 +73,7 @@ trait XMLRenderer {
null,
TopScope,
progeny.asInstanceOf[Array[scala.xml.Node]] : _*
- )
+ )
}
}
diff --git a/test/files/pos/t757.scala b/test/files/pos/t757.scala
index fd7624cee7..7513910d8d 100644
--- a/test/files/pos/t757.scala
+++ b/test/files/pos/t757.scala
@@ -1,4 +1,4 @@
-package foo {
+package foo {
object C {
def foo {
Console.println("foo")
@@ -6,7 +6,7 @@ package foo {
}
}
-package bar {
+package bar {
object Main extends App {
foo.C.foo
}
diff --git a/test/files/pos/t758.scala b/test/files/pos/t758.scala
index 160bf37172..44769d54f1 100644
--- a/test/files/pos/t758.scala
+++ b/test/files/pos/t758.scala
@@ -1,7 +1,7 @@
trait A { type T; type M >: T }
-trait B extends A {
- val x : String;
- val u : A { type T = B.this.T } ;
- type T = x.type;
- type M = u.M
+trait B extends A {
+ val x : String;
+ val u : A { type T = B.this.T } ;
+ type T = x.type;
+ type M = u.M
}
diff --git a/test/files/pos/t767.scala b/test/files/pos/t767.scala
index 0c4067f022..d4d7eae870 100644
--- a/test/files/pos/t767.scala
+++ b/test/files/pos/t767.scala
@@ -4,7 +4,7 @@ abstract class AbsCell {
private var value: T = init
def get: T = value
def set (x: T) { value = x }
-
+
class Node {
val foo = 1
}
diff --git a/test/files/pos/t788.scala b/test/files/pos/t788.scala
index 19638dd170..3da88a2d26 100644
--- a/test/files/pos/t788.scala
+++ b/test/files/pos/t788.scala
@@ -4,7 +4,7 @@ trait Test {
type Node <: NodeImpl;
trait NodeImpl;
type Expression <: Node with ExpressionImpl;
- trait ExpressionImpl extends NodeImpl {
+ trait ExpressionImpl extends NodeImpl {
def self : Expression;
}
type Named <: Node with NamedImpl;
diff --git a/test/files/pos/t802.scala b/test/files/pos/t802.scala
index 2dea7036d6..124d4915bc 100644
--- a/test/files/pos/t802.scala
+++ b/test/files/pos/t802.scala
@@ -1,17 +1,17 @@
package test;
trait Test {
- abstract class BracesImpl {
+ abstract class BracesImpl {
type Singleton;
type Brace <: Singleton with BraceImpl;
- trait BraceImpl;
+ trait BraceImpl;
trait ForFile;
}
- abstract class ParensImpl extends BracesImpl {
+ abstract class ParensImpl extends BracesImpl {
type Brace <: Singleton with BraceImpl;
trait BraceImpl extends super.BraceImpl;
}
val parens : ParensImpl;
- abstract class BracksImpl extends BracesImpl {
+ abstract class BracksImpl extends BracesImpl {
type Brace <: Singleton with BraceImpl;
trait BraceImpl extends super.BraceImpl;
}
diff --git a/test/files/pos/t807.scala b/test/files/pos/t807.scala
index 0eeb92ea24..ed73fe3f97 100644
--- a/test/files/pos/t807.scala
+++ b/test/files/pos/t807.scala
@@ -6,7 +6,7 @@ trait Matcher {
trait HasLinks {
def link(b : Boolean) : Link = null;
}
-
+
}
trait BraceMatcher extends Matcher {
trait BracePair {
diff --git a/test/files/pos/t927.scala b/test/files/pos/t927.scala
index c903f19867..534f355045 100644
--- a/test/files/pos/t927.scala
+++ b/test/files/pos/t927.scala
@@ -7,5 +7,5 @@ object Test {
}
val str: Stream[Int] = List(1,2,3).iterator.toStream
assert(sum(str) == 6)
-
+
}
diff --git a/test/files/pos/t946.scala b/test/files/pos/t946.scala
index c4bd6e9ba4..9f4cdbc043 100644
--- a/test/files/pos/t946.scala
+++ b/test/files/pos/t946.scala
@@ -1,7 +1,7 @@
object pmbugbounds {
trait Bar
class Foo[t <: Bar] {}
-
+
(new Foo[Bar]) match {
case _ : Foo[x] => null
}
diff --git a/test/files/pos/tcpoly_boundedmonad.scala b/test/files/pos/tcpoly_boundedmonad.scala
index ef02507b66..24a911769b 100644
--- a/test/files/pos/tcpoly_boundedmonad.scala
+++ b/test/files/pos/tcpoly_boundedmonad.scala
@@ -1,19 +1,19 @@
trait Monad[T <: Bound[T], MyType[x <: Bound[x]], Bound[_]] {
- def map[S <: Bound[S]](f: T => S): MyType[S]
+ def map[S <: Bound[S]](f: T => S): MyType[S]
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
- (f: T => Result[S]): Result[S]
+ (f: T => Result[S]): Result[S]
def filter(p: T => Boolean): MyType[T]
}
class Set[T <: Ordered[T]] extends Monad[T, Set, Ordered] {
- def map[S <: Ordered[S]](f: T => S): Set[S] = error("TODO")
-
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ def map[S <: Ordered[S]](f: T => S): Set[S] = error("TODO")
+
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
- (f: T => Result[S]): Result[S] = error("TODO")
-
- def filter(p: T => Boolean): Set[T] = error("TODO")
+ (f: T => Result[S]): Result[S] = error("TODO")
+
+ def filter(p: T => Boolean): Set[T] = error("TODO")
}
diff --git a/test/files/pos/tcpoly_bounds1.scala b/test/files/pos/tcpoly_bounds1.scala
index 5874cc664d..142c0b7b7f 100644
--- a/test/files/pos/tcpoly_bounds1.scala
+++ b/test/files/pos/tcpoly_bounds1.scala
@@ -1,6 +1,6 @@
-class Foo[t[x]<: Pair[Int, x]]
+class Foo[t[x]<: Pair[Int, x]]
-//
+//
class MyPair[z](a: Int, b: z) extends Pair[Int, z](a,b)
object foo extends Foo[MyPair]
diff --git a/test/files/pos/tcpoly_checkkinds_mix.scala b/test/files/pos/tcpoly_checkkinds_mix.scala
index 3734405f8b..2d265da6b9 100644
--- a/test/files/pos/tcpoly_checkkinds_mix.scala
+++ b/test/files/pos/tcpoly_checkkinds_mix.scala
@@ -2,9 +2,9 @@ trait Iterable[A <: Bound[A], Bound[_]] {
type MyType[x <: Bound[x]] <: Iterable[x, Bound]
def map[B <: Bound[B]](f: A => B): MyType[B]
def flatMap[B <: Bound[B]](f: A => MyType[B]): MyType[B]
- def filter(p: A => Boolean): MyType[A]
+ def filter(p: A => Boolean): MyType[A]
}
-trait OrderedSet[T <: Ordered[T]] extends Iterable[T, Ordered] {
+trait OrderedSet[T <: Ordered[T]] extends Iterable[T, Ordered] {
type MyType[x <: Ordered[x]] = OrderedSet[x]
-}
+}
diff --git a/test/files/pos/tcpoly_gm.scala b/test/files/pos/tcpoly_gm.scala
index 95361e0dac..ecaeef9679 100644
--- a/test/files/pos/tcpoly_gm.scala
+++ b/test/files/pos/tcpoly_gm.scala
@@ -1,4 +1,4 @@
-trait Rep[a] {
+trait Rep[a] {
def rep[m[x]]: m[a] // typedTypeApply must use asSeenFrom to adapt the return type
// since rep is called on x: Rep[t]
// a must become t
@@ -9,7 +9,7 @@ case class ShowBin[b](app: b => String)
object foo {
def showBin[t](x: Rep[t], y: t): String = {
val r: ShowBin[t] = x.rep[ShowBin]
- r.app(y)
+ r.app(y)
}
}
-
+
diff --git a/test/files/pos/tcpoly_higherorder_bound_method.scala b/test/files/pos/tcpoly_higherorder_bound_method.scala
index 3905b3b96d..090bb8fcf3 100644
--- a/test/files/pos/tcpoly_higherorder_bound_method.scala
+++ b/test/files/pos/tcpoly_higherorder_bound_method.scala
@@ -1,3 +1,3 @@
trait SkolemisationOfHigherOrderBoundInMethod {
def method[A, N[X <: A], M[X <: N[A]]]: Unit
-}
+}
diff --git a/test/files/pos/tcpoly_infer_explicit_tuple_wrapper.scala b/test/files/pos/tcpoly_infer_explicit_tuple_wrapper.scala
index de31efd565..97594d506d 100644
--- a/test/files/pos/tcpoly_infer_explicit_tuple_wrapper.scala
+++ b/test/files/pos/tcpoly_infer_explicit_tuple_wrapper.scala
@@ -7,9 +7,9 @@ class IterableOps[CC[+B] <: Iterable[B] with GenericTraversableTemplate[B, CC],
object Test {
- implicit def tupleOfIterableWrapper[CC[+B] <: Iterable[B] with GenericTraversableTemplate[B, CC], A1, A2](tuple: (CC[A1], Iterable[A2]))
+ implicit def tupleOfIterableWrapper[CC[+B] <: Iterable[B] with GenericTraversableTemplate[B, CC], A1, A2](tuple: (CC[A1], Iterable[A2]))
= new IterableOps[CC, A1, A2](tuple)
-
+
val t = (List(1, 2, 3), List(6, 5, 4))
tupleOfIterableWrapper(t) unzip
diff --git a/test/files/pos/tcpoly_late_method_params.scala b/test/files/pos/tcpoly_late_method_params.scala
index e2f0bcffb3..c9298918a0 100644
--- a/test/files/pos/tcpoly_late_method_params.scala
+++ b/test/files/pos/tcpoly_late_method_params.scala
@@ -1,5 +1,5 @@
trait Foo {
- def flatMap[RT <: RBound[RT], RBound[_], Result[x <: RBound[x]]]: Result[RT]
+ def flatMap[RT <: RBound[RT], RBound[_], Result[x <: RBound[x]]]: Result[RT]
// bounds for RT& = >: scala.this.Nothing <: RBound&[RT&]
// bounds for x = >: scala.this.Nothing <: RBound&[x]
}
diff --git a/test/files/pos/tcpoly_method.scala b/test/files/pos/tcpoly_method.scala
index 294b53b915..80dc0482fd 100644
--- a/test/files/pos/tcpoly_method.scala
+++ b/test/files/pos/tcpoly_method.scala
@@ -1,6 +1,6 @@
trait Iterable[m[+x], +t] {
def flatMap[resColl[+x] <: Iterable[resColl, x], s](f: t => resColl[s]): resColl[s]
-
+
def foo[a[x]] = "a"
val x = foo[List]
}
diff --git a/test/files/pos/tcpoly_overloaded.scala b/test/files/pos/tcpoly_overloaded.scala
index f67e4a9fef..4240074d85 100644
--- a/test/files/pos/tcpoly_overloaded.scala
+++ b/test/files/pos/tcpoly_overloaded.scala
@@ -1,10 +1,10 @@
trait Monad[T <: Bound[T], MyType[x <: Bound[x]], Bound[_]] {
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
- (f: T => Result[S]): Result[S]
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ (f: T => Result[S]): Result[S]
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
- (f: T => Result[S], foo: String): Result[S]
+ (f: T => Result[S], foo: String): Result[S]
def flatMap[S <: Bound[S]]
(f: T => MyType[S], foo: Int): MyType[S]
}
@@ -12,14 +12,14 @@ trait Monad[T <: Bound[T], MyType[x <: Bound[x]], Bound[_]] {
trait Test {
def moo: MList[Int]
class MList[T](el: T) extends Monad[T, List, Any] {
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
(f: T => Result[S]): Result[S] = error("foo")
- def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
+ def flatMap[S <: RBound[S], RContainer[x <: RBound[x]], RBound[_],
Result[x <: RBound[x]] <: Monad[x, RContainer, RBound]]
(f: T => Result[S], foo: String): Result[S] = error("foo")
def flatMap[S]
- (f: T => List[S], foo: Int): List[S] = error("foo")
+ (f: T => List[S], foo: Int): List[S] = error("foo")
}
val l: MList[String] = moo.flatMap[String, List, Any, MList]((x: Int) => new MList("String"))
}
diff --git a/test/files/pos/tcpoly_poly.scala b/test/files/pos/tcpoly_poly.scala
index 1ba04e29df..50ffc7837f 100644
--- a/test/files/pos/tcpoly_poly.scala
+++ b/test/files/pos/tcpoly_poly.scala
@@ -1,3 +1,3 @@
-class Monad[m[x]]
+class Monad[m[x]]
object ml extends Monad[List]
diff --git a/test/files/pos/tcpoly_return_overriding.scala b/test/files/pos/tcpoly_return_overriding.scala
index 57ec8da76c..0814e73fa4 100644
--- a/test/files/pos/tcpoly_return_overriding.scala
+++ b/test/files/pos/tcpoly_return_overriding.scala
@@ -2,7 +2,7 @@ trait Generic[g[x]] {
def unit: g[Unit]
}
-trait Rep[t] {
+trait Rep[t] {
def rep[m[x]](implicit gen: Generic[m]): m[t]
}
diff --git a/test/files/pos/tcpoly_seq.scala b/test/files/pos/tcpoly_seq.scala
index 48b3e1ce52..b5f46f6b6b 100644
--- a/test/files/pos/tcpoly_seq.scala
+++ b/test/files/pos/tcpoly_seq.scala
@@ -6,40 +6,40 @@ trait HOSeq {
// values implementing this interface, in order to provide more performant ways of building that structure
trait Accumulator[+coll[x], elT] {
def += (el: elT): Unit
- def result: coll[elT]
+ def result: coll[elT]
}
-
-
+
+
// Iterable abstracts over the type of its structure as well as its elements (see PolyP's Bifunctor)
- // m[x] is intentionally unbounded: fold can then be defined nicely
- // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
+ // m[x] is intentionally unbounded: fold can then be defined nicely
+ // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
// is an invariant position -- should probably rule that out?
trait Iterable[+m[+x], +t] {
//def unit[a](orig: a): m[a]
def iterator: Iterator[t]
-
+
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
def accumulator[t]: Accumulator[m, t]
-
+
def filter(p: t => Boolean): m[t] = {
val buf = accumulator[t]
val elems = iterator
while (elems.hasNext) { val x = elems.next; if (p(x)) buf += x }
buf.result
}
-
+
def map[s](f: t => s): m[s] = {
val buf = accumulator[s]
val elems = iterator
while (elems.hasNext) buf += f(elems.next)
buf.result
}
-
+
// flatMap is a more specialized map, it only works if the mapped function produces Iterable values,
// which are then added to the result one by one
// the compiler should be able to find the right accumulator (implicit buf) to build the result
// to get concat, resColl = SingletonIterable, f = unit for SingletonIterable
- def flatMap[resColl[+x] <: Iterable[resColl, x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
+ def flatMap[resColl[+x] <: Iterable[resColl, x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
// TODO: would a viewbound for resColl[x] be better?
// -- 2nd-order type params are not yet in scope in view bound
val elems = iterator
@@ -48,9 +48,9 @@ trait HOSeq {
while (elemss.hasNext) buf += elemss.next
}
buf.result
- }
+ }
}
-
+
final class ListBuffer[A] {
private var start: List[A] = Nil
private var last: ::[A] = _
@@ -78,7 +78,7 @@ trait HOSeq {
exported = !start.isEmpty
start
}
-
+
/** Clears the buffer contents.
*/
def clear {
@@ -97,13 +97,13 @@ trait HOSeq {
}
}
}
-
+
implicit def listAccumulator[elT]: Accumulator[List, elT] = new Accumulator[List, elT] {
private[this] val buff = new ListBuffer[elT]
def += (el: elT): Unit = buff += el
def result: List[elT] = buff.toList
}
-
+
trait List[+t] extends Iterable[List, t] {
def head: t
def tail: List[t]
@@ -121,14 +121,14 @@ trait HOSeq {
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
def accumulator[t]: Accumulator[List, t] = listAccumulator[t]
}
-
+
// TODO: the var tl approach does not seem to work because subtyping isn't fully working yet
final case class ::[+b](hd: b, private val tl: List[b]) extends List[b] {
def head = hd
def tail = if(tl==null) this else tl // hack
override def isEmpty: Boolean = false
}
-
+
case object Nil extends List[Nothing] {
def isEmpty = true
def head: Nothing =
@@ -157,18 +157,18 @@ trait HOSeq {
def filter(f: T=>Boolean): FilterResult
def subseq(from: Int, to: Int): Subseq
def flatMap[S <: Seq[K], K](f: T => S): S#Concat // legal?
- def concat(others: Seq[T]): Concat
+ def concat(others: Seq[T]): Concat
*/
-
+
/*trait Iterator[t] {
// @post hasAdvanced implies hasNext
// model def hasAdvanced: Boolean
-
+
def hasNext: Boolean // pure
-
+
// @pre hasAdvanced
def current: t // pure
-
+
// @pre hasNext
// @post hasAdvanced
def advance: Unit
diff --git a/test/files/pos/tcpoly_seq_typealias.scala b/test/files/pos/tcpoly_seq_typealias.scala
index fb48126ce6..0651ad9760 100644
--- a/test/files/pos/tcpoly_seq_typealias.scala
+++ b/test/files/pos/tcpoly_seq_typealias.scala
@@ -6,42 +6,42 @@ trait HOSeq {
// values implementing this interface, in order to provide more performant ways of building that structure
trait Accumulator[+coll[x], elT] {
def += (el: elT): Unit
- def result: coll[elT]
+ def result: coll[elT]
}
-
-
+
+
// Iterable abstracts over the type of its structure as well as its elements (see PolyP's Bifunctor)
- // m[x] is intentionally unbounded: fold can then be defined nicely
- // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
+ // m[x] is intentionally unbounded: fold can then be defined nicely
+ // variance: if we write m[+x] instead of +m[+x], x is an invariant position because its enclosing type
// is an invariant position -- should probably rule that out?
trait Iterable[+t] {
- type m[+x]
-
+ type m[+x]
+
//def unit[a](orig: a): m[a]
def iterator: Iterator[t]
-
+
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
def accumulator[t]: Accumulator[m, t]
-
+
def filter(p: t => Boolean): m[t] = {
val buf = accumulator[t]
val elems = iterator
while (elems.hasNext) { val x = elems.next; if (p(x)) buf += x }
buf.result
}
-
+
def map[s](f: t => s): m[s] = {
val buf = accumulator[s]
val elems = iterator
while (elems.hasNext) buf += f(elems.next)
buf.result
}
-
+
// flatMap is a more specialized map, it only works if the mapped function produces Iterable values,
// which are then added to the result one by one
// the compiler should be able to find the right accumulator (implicit buf) to build the result
// to get concat, resColl = SingletonIterable, f = unit for SingletonIterable
- def flatMap[resColl[+x] <: Iterable[x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
+ def flatMap[resColl[+x] <: Iterable[x], s](f: t => resColl[s])(implicit buf: Accumulator[resColl, s]): resColl[s] = {
// TODO: would a viewbound for resColl[x] be better?
// -- 2nd-order type params are not yet in scope in view bound
val elems = iterator
@@ -50,9 +50,9 @@ trait HOSeq {
while (elemss.hasNext) buf += elemss.next
}
buf.result
- }
+ }
}
-
+
final class ListBuffer[A] {
private var start: List[A] = Nil
private var last: ::[A] = _
@@ -80,7 +80,7 @@ trait HOSeq {
exported = !start.isEmpty
start
}
-
+
/** Clears the buffer contents.
*/
def clear {
@@ -99,16 +99,16 @@ trait HOSeq {
}
}
}
-
+
implicit def listAccumulator[elT]: Accumulator[List, elT] = new Accumulator[List, elT] {
private[this] val buff = new ListBuffer[elT]
def += (el: elT): Unit = buff += el
def result: List[elT] = buff.toList
}
-
+
trait List[+t] extends Iterable[t] {
type m[+x] = List[x]
-
+
def head: t
def tail: List[t]
def isEmpty: Boolean
@@ -125,14 +125,14 @@ trait HOSeq {
// construct an empty accumulator that will produce the same structure as this iterable, with elements of type t
def accumulator[t]: Accumulator[List, t] = listAccumulator[t]
}
-
+
// TODO: the var tl approach does not seem to work because subtyping isn't fully working yet
final case class ::[+b](hd: b, private val tl: List[b]) extends List[b] {
def head = hd
def tail = if(tl==null) this else tl // hack
override def isEmpty: Boolean = false
}
-
+
case object Nil extends List[Nothing] {
def isEmpty = true
def head: Nothing =
diff --git a/test/files/pos/ted.scala b/test/files/pos/ted.scala
index 314f109328..d8ae64f29b 100644
--- a/test/files/pos/ted.scala
+++ b/test/files/pos/ted.scala
@@ -9,7 +9,7 @@ object App
case (b, e) => b * exponentiate(b, e - 1)
}
-
+
def main(args : Array[String]) =
System.out.println(exponentiate(2, 2))
diff --git a/test/files/pos/test5.scala b/test/files/pos/test5.scala
index 4dbafc9ac3..b04de5d613 100644
--- a/test/files/pos/test5.scala
+++ b/test/files/pos/test5.scala
@@ -53,7 +53,7 @@ object test {
// Check type j.P
j.chk_ip(val_mp);
- j.chk_ip(val_np);
+ j.chk_ip(val_np);
// Check type i.X
i.chk_ix(i.val_ix);
@@ -63,6 +63,6 @@ object test {
// Check j.X
j.chk_ix(j.val_ix);
j.chk_ix(j.val_jx);
- j.chk_ix(val_njx);
+ j.chk_ix(val_njx);
}
}
diff --git a/test/files/pos/test5refine.scala b/test/files/pos/test5refine.scala
index 5459b3b975..290449c3ed 100644
--- a/test/files/pos/test5refine.scala
+++ b/test/files/pos/test5refine.scala
@@ -60,7 +60,7 @@ object test {
// Check type j.P
j.chk_ip(val_mp);
- j.chk_ip(val_np);
+ j.chk_ip(val_np);
// Check type i.X
i.chk_ix(i.val_ix);
@@ -70,6 +70,6 @@ object test {
// Check j.X
j.chk_ix(j.val_ix);
j.chk_ix(j.val_jx);
- j.chk_ix(val_njx);
+ j.chk_ix(val_njx);
}
}
diff --git a/test/files/pos/testCoercionThis.scala b/test/files/pos/testCoercionThis.scala
index 5631b33306..8bbfdcd684 100644
--- a/test/files/pos/testCoercionThis.scala
+++ b/test/files/pos/testCoercionThis.scala
@@ -11,9 +11,9 @@ object Test {
// PP: is that something we really want to work? Seems like sketchville.
//
// These work, so I moved this out of pending.
- def testCoercionThis1 = this.baz
+ def testCoercionThis1 = this.baz
def testCoercionThis2 = (this: Foo).baz
}
-
- class Bar { def baz = System.out.println("baz") }
+
+ class Bar { def baz = System.out.println("baz") }
}
diff --git a/test/files/pos/thistypes.scala b/test/files/pos/thistypes.scala
index 7319cc1ecb..26339e07c4 100644
--- a/test/files/pos/thistypes.scala
+++ b/test/files/pos/thistypes.scala
@@ -5,4 +5,4 @@ trait B {
trait C extends B {
def foo: C.this.I;
-}
+}
diff --git a/test/files/pos/ticket0137.scala b/test/files/pos/ticket0137.scala
index 94ef8e49fc..72f955fe5e 100644
--- a/test/files/pos/ticket0137.scala
+++ b/test/files/pos/ticket0137.scala
@@ -1,7 +1,7 @@
-trait AbsM {
- abstract class MonadCompanion[M[_]]
+trait AbsM {
+ abstract class MonadCompanion[M[_]]
abstract class AbsMonadCompanion extends MonadCompanion[AM] {
- def newTag: Int
+ def newTag: Int
}
type AM[_] // to trigger the bug, this must be an abstract type member that comes after the reference to it
diff --git a/test/files/pos/traits.scala b/test/files/pos/traits.scala
index 8dcd9c0b5f..bd64d7215a 100644
--- a/test/files/pos/traits.scala
+++ b/test/files/pos/traits.scala
@@ -20,8 +20,8 @@ object Test {
trait BorderedColoredShape extends Shape with Bordered with Colored {
override def equals(other: Any) = other match {
case that: BorderedColoredShape => (
- super.equals(that) &&
- super[Bordered].equals(that) &&
+ super.equals(that) &&
+ super[Bordered].equals(that) &&
super[Colored].equals(that))
case _ => false
}
diff --git a/test/files/pos/typealias_dubious.scala b/test/files/pos/typealias_dubious.scala
index de6bb67fe3..587453a037 100644
--- a/test/files/pos/typealias_dubious.scala
+++ b/test/files/pos/typealias_dubious.scala
@@ -1,8 +1,8 @@
class MailBox {
- //class Message
+ //class Message
type Message = AnyRef
-}
-
+}
+
abstract class Actor {
private val in = new MailBox
@@ -10,6 +10,6 @@ abstract class Actor {
def unstable: Actor = error("foo")
- def dubiousSend(msg: MailBox#Message) =
+ def dubiousSend(msg: MailBox#Message) =
unstable.send(msg) // in.Message becomes unstable.Message, but that's ok since Message is a concrete type member
-}
+}
diff --git a/test/files/pos/typealiases.scala b/test/files/pos/typealiases.scala
index d03b521f77..5974921ed3 100644
--- a/test/files/pos/typealiases.scala
+++ b/test/files/pos/typealiases.scala
@@ -3,18 +3,18 @@ package foo
trait Test[T] {
type Check[T] = Array[T] => Unit;
type MyPair[S] = (T, S)
-
+
val pair1: (T, Int)
val pair: MyPair[Int] = pair1
-
+
def check(xs: Array[T], c: Check[T]) = c(xs)
- def check2[S](xs: Array[S], c: Check[S]) = c(xs)
-}
+ def check2[S](xs: Array[S], c: Check[S]) = c(xs)
+}
-object main extends Test[Int] {
- val pair1 = (1,1)
+object main extends Test[Int] {
+ val pair1 = (1,1)
implicit def topair(x: Int): Pair[Int, Int] = (x,x)
- val pair2: MyPair[Int] = 1
+ val pair2: MyPair[Int] = 1
val x: Short = 1
}
diff --git a/test/files/pos/unapplyNeedsMemberType.scala b/test/files/pos/unapplyNeedsMemberType.scala
index b423257e04..2581512a7b 100644
--- a/test/files/pos/unapplyNeedsMemberType.scala
+++ b/test/files/pos/unapplyNeedsMemberType.scala
@@ -8,7 +8,7 @@ trait Gunk[a] {
def unapply(s: Seq) = unapply_Cons(s)
}
def unapply_Cons(s: Any): Option[Tuple2[a, Seq]]
-}
+}
class Join[a] extends Gunk[a] {
type Seq = JoinSeq
diff --git a/test/files/pos/unapplySeq.scala b/test/files/pos/unapplySeq.scala
index 6d13cc8b52..4d5409c6f7 100644
--- a/test/files/pos/unapplySeq.scala
+++ b/test/files/pos/unapplySeq.scala
@@ -4,7 +4,7 @@ object FooSeq {
val y = x.asInstanceOf[Bar]
Some(y.size, y.name)
} else None
- }
+ }
def main(args:Array[String]) = {
val b = new Bar
diff --git a/test/files/pos/unapplyVal.scala b/test/files/pos/unapplyVal.scala
index 368b9b9375..0d6394a90f 100644
--- a/test/files/pos/unapplyVal.scala
+++ b/test/files/pos/unapplyVal.scala
@@ -10,7 +10,7 @@ class Buffer {
def joinPat(x: Any): Unit = {
x match {
- case Put =>
+ case Put =>
case Put(y) =>
println("returning "+y)
}
@@ -29,7 +29,7 @@ object unapplyJoins extends App { // bug #1257
object Get extends Sync
val jp: PartialFunction[Any, Any] = {
- case Get() =>
+ case Get() =>
}
}
diff --git a/test/files/pos/virtpatmat_castbinder.scala b/test/files/pos/virtpatmat_castbinder.scala
index be269638ce..53e937e866 100644
--- a/test/files/pos/virtpatmat_castbinder.scala
+++ b/test/files/pos/virtpatmat_castbinder.scala
@@ -6,7 +6,7 @@ trait IntMapIterator[V, T] {
def valueOf(tip: Tip[V]): T
def pop: IntMap[V]
- def next: T =
+ def next: T =
pop match {
case Bin(t@Tip(_)) => {
valueOf(t)
diff --git a/test/files/pos/virtpatmat_exist1.scala b/test/files/pos/virtpatmat_exist1.scala
index 6cad017b0b..ccb91299db 100644
--- a/test/files/pos/virtpatmat_exist1.scala
+++ b/test/files/pos/virtpatmat_exist1.scala
@@ -13,7 +13,7 @@ object Test {
// without type ascription for the one in the body of the last flatmap of each alternative, type inference borks on the existentials
// def splitArray[T >: Nothing <: Any](ad: Array[Iterable[T]]): Any = { import OptionMatching._
// runOrElse(ad.apply(0))(((x1: Iterable[T]) => (
- // or(((x4: Iterable[T]) => one(null)),
+ // or(((x4: Iterable[T]) => one(null)),
// guard(x1.isInstanceOf[Iterable[T] with Test.HashMapCollision1[_,_]], x1.asInstanceOf[Iterable[T] with Test.HashMapCollision1[_,_]]).flatMap(((x2: Iterable[T] with Test.HashMapCollision1[_,_]) => one(x2))),
// guard(x1.isInstanceOf[Test.HashSetCollision1[_]], x1.asInstanceOf[Iterable[T] with Test.HashSetCollision1[_]]).flatMap(((x3: Iterable[T] with Test.HashSetCollision1[_]) => one(x3)))): Option[Any]).orElse(
// (zero: Option[Any])))
diff --git a/test/files/pos/virtpatmat_exist2.scala b/test/files/pos/virtpatmat_exist2.scala
index ee186074ab..b0e4c667b7 100644
--- a/test/files/pos/virtpatmat_exist2.scala
+++ b/test/files/pos/virtpatmat_exist2.scala
@@ -9,11 +9,11 @@ object Test {
// what's the _$1 doing there?
// def grow[T >: Nothing <: Any]: ParseResult[T] = {
// import OptionMatching._
- // runOrElse[MemoEntry[T], ParseResult[T]]((null: MemoEntry[T]))(((x1: MemoEntry[T]) =>
- // (MemoEntry.unapply[T](x1).flatMap[ParseResult[T]](((x4: Either[Nothing,ParseResult[_]]) =>
- // guard[Right[Nothing,ParseResult[_]]](x4.isInstanceOf[Right[Nothing,ParseResult[_]]], x4.asInstanceOf[Right[Nothing,ParseResult[_]]]).flatMap[ParseResult[T]](((cp3: Right[Nothing,ParseResult[_]]) =>
- // scala.Right.unapply[Nothing, ParseResult[_]](cp3).flatMap[ParseResult[T]](((x5: ParseResult[_]) =>
- // guard[ParseResult[_$1]](x5.ne(null), x5.asInstanceOf[ParseResult[_]]).flatMap[ParseResult[T]](((x6: ParseResult[_]) =>
+ // runOrElse[MemoEntry[T], ParseResult[T]]((null: MemoEntry[T]))(((x1: MemoEntry[T]) =>
+ // (MemoEntry.unapply[T](x1).flatMap[ParseResult[T]](((x4: Either[Nothing,ParseResult[_]]) =>
+ // guard[Right[Nothing,ParseResult[_]]](x4.isInstanceOf[Right[Nothing,ParseResult[_]]], x4.asInstanceOf[Right[Nothing,ParseResult[_]]]).flatMap[ParseResult[T]](((cp3: Right[Nothing,ParseResult[_]]) =>
+ // scala.Right.unapply[Nothing, ParseResult[_]](cp3).flatMap[ParseResult[T]](((x5: ParseResult[_]) =>
+ // guard[ParseResult[_$1]](x5.ne(null), x5.asInstanceOf[ParseResult[_]]).flatMap[ParseResult[T]](((x6: ParseResult[_]) =>
// one[ParseResult[T]](x6.asInstanceOf[ParseResult[T]]))))))))): Option[ParseResult[T]]
// ).orElse[ParseResult[T]]((zero: Option[ParseResult[T]]))))
// }
diff --git a/test/files/pos/virtpatmat_exist3.scala b/test/files/pos/virtpatmat_exist3.scala
index 94385f32c9..c8f873878f 100644
--- a/test/files/pos/virtpatmat_exist3.scala
+++ b/test/files/pos/virtpatmat_exist3.scala
@@ -4,8 +4,8 @@ class ReferenceQueue[T] {
case null => null
}
- // def wrapper(jref: ReferenceQueue[_]): ReferenceQueue[T] = OptionMatching.runOrElse(jref)(((x1: ReferenceQueue[_]) =>
- // (OptionMatching.guard(null.==(x1), x1.asInstanceOf[ReferenceQueue[_]]).flatMap(((x2: ReferenceQueue[_]) =>
+ // def wrapper(jref: ReferenceQueue[_]): ReferenceQueue[T] = OptionMatching.runOrElse(jref)(((x1: ReferenceQueue[_]) =>
+ // (OptionMatching.guard(null.==(x1), x1.asInstanceOf[ReferenceQueue[_]]).flatMap(((x2: ReferenceQueue[_]) =>
// OptionMatching.one(null))): Option[ReferenceQueue[T]]).orElse(
// (OptionMatching.zero: Option[ReferenceQueue[T]])))
// )
diff --git a/test/files/pos/virtpatmat_gadt_array.scala b/test/files/pos/virtpatmat_gadt_array.scala
index f3332a897f..27e72aa03e 100644
--- a/test/files/pos/virtpatmat_gadt_array.scala
+++ b/test/files/pos/virtpatmat_gadt_array.scala
@@ -4,12 +4,12 @@ object Test {
case x: Array[AnyRef] => refArrayOps[AnyRef](x).asInstanceOf[ArrayOps[T]]
case null => null
}
- // def genericArrayOps[T >: Nothing <: Any](xs: Array[T]): scala.collection.mutable.ArrayOps[T]
- // = OptionMatching.runOrElse(xs)(((x1: Array[T]) =>
- // ((OptionMatching.guard(x1.isInstanceOf[Array[AnyRef]], x1.asInstanceOf[Array[T] with Array[AnyRef]]).flatMap(((x2: Array[T] with Array[AnyRef]) =>
+ // def genericArrayOps[T >: Nothing <: Any](xs: Array[T]): scala.collection.mutable.ArrayOps[T]
+ // = OptionMatching.runOrElse(xs)(((x1: Array[T]) =>
+ // ((OptionMatching.guard(x1.isInstanceOf[Array[AnyRef]], x1.asInstanceOf[Array[T] with Array[AnyRef]]).flatMap(((x2: Array[T] with Array[AnyRef]) =>
// OptionMatching.one(Test.this.refArrayOps[AnyRef](x2).asInstanceOf[scala.collection.mutable.ArrayOps[T]]))): Option[scala.collection.mutable.ArrayOps[T]]).orElse(
- // (OptionMatching.guard(null.==(x1), x1.asInstanceOf[Array[T]]).flatMap(((x3: Array[T]) =>
+ // (OptionMatching.guard(null.==(x1), x1.asInstanceOf[Array[T]]).flatMap(((x3: Array[T]) =>
// OptionMatching.one(null))): Option[scala.collection.mutable.ArrayOps[T]])): Option[scala.collection.mutable.ArrayOps[T]]).orElse((OptionMatching.zero: Option[scala.collection.mutable.ArrayOps[T]]))))
-
+
def refArrayOps[T <: AnyRef](xs: Array[T]): ArrayOps[T] = new ArrayOps.ofRef[T](xs)
} \ No newline at end of file
diff --git a/test/files/positions/Anon.scala b/test/files/positions/Anon.scala
index 940fff035a..65eb7ae477 100644
--- a/test/files/positions/Anon.scala
+++ b/test/files/positions/Anon.scala
@@ -2,7 +2,7 @@ object Anon {
trait Foo {
val bar : Int
}
-
+
def foo = new Foo {
override val bar = 23
}
diff --git a/test/files/positions/Enclosing1.scala b/test/files/positions/Enclosing1.scala
index e170187d60..7c8fbaf4a0 100644
--- a/test/files/positions/Enclosing1.scala
+++ b/test/files/positions/Enclosing1.scala
@@ -1,5 +1,5 @@
object Enclosing1 {
do {
-
+
} while (true)
}
diff --git a/test/files/positions/ExcludedPrefix1.scala b/test/files/positions/ExcludedPrefix1.scala
index f3562c37f0..72d9756b2a 100644
--- a/test/files/positions/ExcludedPrefix1.scala
+++ b/test/files/positions/ExcludedPrefix1.scala
@@ -5,16 +5,16 @@ object ExcludedPrefix1 {
case
object
BLAH
-
+
val
a = 1
-
+
var
b = 2
-
+
def
c = 23
-
+
private
def
d = 23
@@ -22,19 +22,19 @@ object ExcludedPrefix1 {
lazy
val
e = 23
-
+
private
type
f = Int
-
+
val
g,
h = 23
-
+
val
(i,
j) = (0, 0)
-
+
val Pair(
k,
l) = (0, 0)
diff --git a/test/files/positions/Overlap3.scala b/test/files/positions/Overlap3.scala
index 4c5f8af9d1..657c12d4fd 100644
--- a/test/files/positions/Overlap3.scala
+++ b/test/files/positions/Overlap3.scala
@@ -1,3 +1,3 @@
object Overlap3 {
- val (a, b) = (0, 0)
+ val (a, b) = (0, 0)
}
diff --git a/test/files/positions/Scaladoc2.scala b/test/files/positions/Scaladoc2.scala
index e52263d86c..78bc4acb28 100644
--- a/test/files/positions/Scaladoc2.scala
+++ b/test/files/positions/Scaladoc2.scala
@@ -4,13 +4,13 @@ object Scaladoc2 {
* Foo
*/
def g {}
-
+
/*
* Blah blah
*/
def h{}
h
}
-
+
def h {}
}
diff --git a/test/files/positions/Scaladoc3.scala b/test/files/positions/Scaladoc3.scala
index c331b7e396..bb9d66fdb4 100644
--- a/test/files/positions/Scaladoc3.scala
+++ b/test/files/positions/Scaladoc3.scala
@@ -3,6 +3,6 @@ object Scaladoc3 {
* Foo
*/
import scala.collection.mutable.ArrayBuffer
-
+
def f {}
}
diff --git a/test/files/positions/Scaladoc4.scala b/test/files/positions/Scaladoc4.scala
index 133cde1c85..f613dda7f5 100644
--- a/test/files/positions/Scaladoc4.scala
+++ b/test/files/positions/Scaladoc4.scala
@@ -3,6 +3,6 @@ object Scaladoc4 {
* Foo
*/
2+2
-
+
def f {}
}
diff --git a/test/files/positions/Scaladoc6.scala b/test/files/positions/Scaladoc6.scala
index 8beda625ae..5c230edeb2 100644
--- a/test/files/positions/Scaladoc6.scala
+++ b/test/files/positions/Scaladoc6.scala
@@ -5,6 +5,6 @@ object Scaladoc6 {
*/
val i = 23
}
-
+
def f {}
}
diff --git a/test/files/presentation/akka/src/com/eaio/uuid/UUIDGen.java b/test/files/presentation/akka/src/com/eaio/uuid/UUIDGen.java
index a42ed666bc..7b63f65447 100644
--- a/test/files/presentation/akka/src/com/eaio/uuid/UUIDGen.java
+++ b/test/files/presentation/akka/src/com/eaio/uuid/UUIDGen.java
@@ -73,7 +73,7 @@ public final class UUIDGen {
* The last time value. Used to remove duplicate UUIDs.
*/
private static long lastTime = Long.MIN_VALUE;
-
+
/**
* The cached MAC address.
*/
@@ -232,11 +232,11 @@ public final class UUIDGen {
public static long newTime() {
return createTime(System.currentTimeMillis());
}
-
+
/**
* Creates a new time field from the given timestamp. Note that even identical
* values of <code>currentTimeMillis</code> will produce different time fields.
- *
+ *
* @param currentTimeMillis the timestamp
* @return a new time value
* @see UUID#getTime()
@@ -271,10 +271,10 @@ public final class UUIDGen {
return time;
}
-
+
/**
* Returns the MAC address. Not guaranteed to return anything.
- *
+ *
* @return the MAC address, may be <code>null</code>
*/
public static String getMACAddress() {
diff --git a/test/files/presentation/akka/src/pi.scala b/test/files/presentation/akka/src/pi.scala
index 24eba5a013..b4c644052c 100644
--- a/test/files/presentation/akka/src/pi.scala
+++ b/test/files/presentation/akka/src/pi.scala
@@ -50,7 +50,7 @@ object Pi extends App {
// create the workers
val workers = Vector.fill(nrOfWorkers)(actorOf[Worker]./*!*/start())
-
+
// wrap them with a load-balancing router
val router = Routing./*!*/loadBalancerActor(CyclicIterator(workers))./*!*/start()
diff --git a/test/files/presentation/callcc-interpreter/src/CallccInterpreter.scala b/test/files/presentation/callcc-interpreter/src/CallccInterpreter.scala
index ce3b996b96..0e96dfaa05 100644
--- a/test/files/presentation/callcc-interpreter/src/CallccInterpreter.scala
+++ b/test/files/presentation/callcc-interpreter/src/CallccInterpreter.scala
@@ -2,8 +2,8 @@ object callccInterpreter {
type Answer = Value
- /**
- * A continuation monad.
+ /**
+ * A continuation monad.
*/
case class M[A](in: (A => Answer) => Answer) {
def bind[B](k: A => M[B]) = M[B](c => in (a => k(a) in c))
diff --git a/test/files/presentation/ide-bug-1000475/src/Foo.scala b/test/files/presentation/ide-bug-1000475/src/Foo.scala
index 5dd6b7d00d..b963bb7a88 100644
--- a/test/files/presentation/ide-bug-1000475/src/Foo.scala
+++ b/test/files/presentation/ide-bug-1000475/src/Foo.scala
@@ -1,7 +1,7 @@
class Foo {
val v = new Object
v.toS/*!*/
-
+
val m = Map(1 -> new Object)
m(1).toS/*!*/
m(1)./*!*/
diff --git a/test/files/presentation/ide-bug-1000531/src/CrashOnLoad.scala b/test/files/presentation/ide-bug-1000531/src/CrashOnLoad.scala
index 878bbfa19e..21d39c8923 100644
--- a/test/files/presentation/ide-bug-1000531/src/CrashOnLoad.scala
+++ b/test/files/presentation/ide-bug-1000531/src/CrashOnLoad.scala
@@ -1,7 +1,7 @@
/** When this files is opened within the IDE, a typing error is reported. */
class A[B] extends java.lang.Iterable[B] {
import scala.collection.JavaConversions._
- def iterator = Iterator.empty
-
+ def iterator = Iterator.empty
+
iterator. /*!*/
} \ No newline at end of file
diff --git a/test/files/presentation/implicit-member/src/ImplicitMember.scala b/test/files/presentation/implicit-member/src/ImplicitMember.scala
index a547b65a8e..06732f6dc6 100644
--- a/test/files/presentation/implicit-member/src/ImplicitMember.scala
+++ b/test/files/presentation/implicit-member/src/ImplicitMember.scala
@@ -1,8 +1,8 @@
object Implicit {
final class AppliedImplicit[A](val x: A)
-
+
implicit def AppliedImplicit[A](x: A): AppliedImplicit[A] = new AppliedImplicit(x)
-
+
this./*!*/x
} \ No newline at end of file
diff --git a/test/files/presentation/ping-pong/src/PingPong.scala b/test/files/presentation/ping-pong/src/PingPong.scala
index 94f52c4658..08bb4e3f2d 100644
--- a/test/files/presentation/ping-pong/src/PingPong.scala
+++ b/test/files/presentation/ping-pong/src/PingPong.scala
@@ -2,21 +2,21 @@
class Ping {
val pong = new Pong(this)
-
+
def name = "ping"
- def loop/*?*/ { poke() }
-
+ def loop/*?*/ { poke() }
+
def poke/*?*/ { pong./*!*/poke() }
-
- override def toString = name
+
+ override def toString = name
}
class Pong(ping: Ping) {
val name/*?*/ = "pong"
-
+
def poke() { ping./*!*/poke() }
-
+
override def toString = name
} \ No newline at end of file
diff --git a/test/files/presentation/random/src/Random.scala b/test/files/presentation/random/src/Random.scala
index af76a28f47..4fff783fa4 100644
--- a/test/files/presentation/random/src/Random.scala
+++ b/test/files/presentation/random/src/Random.scala
@@ -4,16 +4,16 @@ import java.io._
import java.net.{InetAddress,ServerSocket,Socket,SocketException}
import java.util.Random
-/**
- * Simple client/server application using Java sockets.
- *
- * The server simply generates random integer values and
- * the clients provide a filter function to the server
- * to get only values they interested in (eg. even or
- * odd values, and so on).
+/**
+ * Simple client/server application using Java sockets.
+ *
+ * The server simply generates random integer values and
+ * the clients provide a filter function to the server
+ * to get only values they interested in (eg. even or
+ * odd values, and so on).
*/
object randomclient {
-
+
def main(args: Array[String]) {
val filter/*?*/ = try {
Integer.parseInt(args(0)/*?*/) match {
diff --git a/test/files/presentation/timeofday/src/timeofday.scala b/test/files/presentation/timeofday/src/timeofday.scala
index b0d422a99e..d6355097f1 100644
--- a/test/files/presentation/timeofday/src/timeofday.scala
+++ b/test/files/presentation/timeofday/src/timeofday.scala
@@ -1,16 +1,16 @@
object timeofday {
class DateError extends Exception
- /** Simulating properties in Scala
- * (example 4.2.1 in ScalaReference.pdf)
+ /** Simulating properties in Scala
+ * (example 4.2.1 in ScalaReference.pdf)
*/
class TimeOfDayVar {
private var h, m, s: Int = 0
def hours = h
- /** A method 'ident_=' is a setter for 'ident'. 'code.ident = ...' will
- * be translated to a call to 'ident_='
+ /** A method 'ident_=' is a setter for 'ident'. 'code.ident = ...' will
+ * be translated to a call to 'ident_='
*/
def hours_= (h: Int) =
if (0 <= h && h < 24) this.h = h
@@ -26,7 +26,7 @@ object timeofday {
if (0 <= s && s < 60) this./*!*/s = s
else throw new DateError()
}
-
+
def main(args: Array[String]) {
val d = new TimeOfDayVar
d.hours = 8; d./*!*/minutes = 30; d.seconds = 0
diff --git a/test/files/res/t597/Test.scala b/test/files/res/t597/Test.scala
index 2f63f46c3d..45b90bb17d 100644
--- a/test/files/res/t597/Test.scala
+++ b/test/files/res/t597/Test.scala
@@ -2,7 +2,7 @@ package test;
abstract class Base {
type A <: Ax;
-
+
abstract class Ax {
def a = null;
def string = "A";
diff --git a/test/files/res/t722/Parser.scala b/test/files/res/t722/Parser.scala
index 5dfcd57367..9f54358920 100644
--- a/test/files/res/t722/Parser.scala
+++ b/test/files/res/t722/Parser.scala
@@ -2,7 +2,7 @@
package t722;
trait Parser {
trait Link {
- def foo() = {}
+ def foo() = {}
}
}
diff --git a/test/files/res/t735/ScalaExpressions.scala b/test/files/res/t735/ScalaExpressions.scala
index f9c8ac733c..605ad51c08 100644
--- a/test/files/res/t735/ScalaExpressions.scala
+++ b/test/files/res/t735/ScalaExpressions.scala
@@ -1,6 +1,6 @@
package t735;
trait ScalaExpressions {
- trait ExpressionFactory {
+ trait ExpressionFactory {
def foo = 10;
def bar : Int;
}
diff --git a/test/files/res/t743/BracesXXX.scala b/test/files/res/t743/BracesXXX.scala
index ed7b386a88..d3f6e28fe9 100644
--- a/test/files/res/t743/BracesXXX.scala
+++ b/test/files/res/t743/BracesXXX.scala
@@ -1,6 +1,6 @@
package t743;
trait BracesXXX extends ParserXXX {
- trait Matchable extends IsLinked {
+ trait Matchable extends IsLinked {
def foo : NodeImpl = null;
}
}
diff --git a/test/files/res/t743/ParserXXX.scala b/test/files/res/t743/ParserXXX.scala
index d132bdbf1d..fd584b972a 100644
--- a/test/files/res/t743/ParserXXX.scala
+++ b/test/files/res/t743/ParserXXX.scala
@@ -1,9 +1,9 @@
package t743;
trait ParserXXX {
- val foo = null;
- trait NodeImpl {
+ val foo = null;
+ trait NodeImpl {
trait Link extends ParserXXX.this.Link {
- val from = null;
+ val from = null;
}
}
trait Link {
diff --git a/test/files/res/t785/ScalaNewTyper.scala b/test/files/res/t785/ScalaNewTyper.scala
index acdba0f25d..919e3b8d0e 100644
--- a/test/files/res/t785/ScalaNewTyper.scala
+++ b/test/files/res/t785/ScalaNewTyper.scala
@@ -1,7 +1,7 @@
package t785;
trait ScalaNewTyper {
private var typed : String = null;
- trait HasSymbol {
+ trait HasSymbol {
protected def foo() : Unit = {}
}
trait HasArgsTypeParametersImpl extends HasSymbol {
diff --git a/test/files/res/t831/NewScalaParserXXX.scala b/test/files/res/t831/NewScalaParserXXX.scala
index 958e4f99c1..ed9b9d3b6f 100644
--- a/test/files/res/t831/NewScalaParserXXX.scala
+++ b/test/files/res/t831/NewScalaParserXXX.scala
@@ -10,33 +10,33 @@ trait ScalaNodeScannerXXX {
//for (ns <-n; val i <- 0.until(ns)) yield f;
-trait NewScalaScannerXXX extends ScalaNodeScannerXXX {
+trait NewScalaScannerXXX extends ScalaNodeScannerXXX {
type Unfixed <: Node with UnfixedImpl;
trait UnfixedImpl extends super.UnfixedImpl with NodeImpl;
type Statement <: Unfixed with StatementImpl;
trait StatementImpl extends UnfixedImpl { def self : Statement; }
type NewLine <: Statement with NewLineImpl;
- trait NewLineImpl extends StatementImpl {
- def self : NewLine;
+ trait NewLineImpl extends StatementImpl {
+ def self : NewLine;
def isActive : Boolean = true;
}
object ArrowMode extends Enumeration { val Def, Case, Expr = Value }
}
-trait ScalaPrecedenceXXX extends NewScalaScannerXXX {
+trait ScalaPrecedenceXXX extends NewScalaScannerXXX {
type NewLine <: Statement with NewLineImpl;
- trait NewLineImpl extends super.NewLineImpl with StatementImpl {
- def self : NewLine;
+ trait NewLineImpl extends super.NewLineImpl with StatementImpl {
+ def self : NewLine;
override def isActive = super[NewLineImpl].isActive;
}
}
trait NewScalaParserXXX extends NewScalaScannerXXX with ScalaPrecedenceXXX {
type NewLine <: Statement with NewLineImpl;
trait MyNewLine extends super[NewScalaScannerXXX].NewLineImpl;
- trait NewLineImpl extends MyNewLine with
+ trait NewLineImpl extends MyNewLine with
super[ScalaPrecedenceXXX].NewLineImpl with
- StatementImpl {
- def self : NewLine;
+ StatementImpl {
+ def self : NewLine;
override def isActive = super[MyNewLine].isActive;
}
}
diff --git a/test/files/run/Course-2002-02.scala b/test/files/run/Course-2002-02.scala
index b8650108ed..56d7298aaf 100644
--- a/test/files/run/Course-2002-02.scala
+++ b/test/files/run/Course-2002-02.scala
@@ -100,7 +100,7 @@ object M4 {
def sumInts = sum(x => x)
def sumCubes = sum(x => x * x * x)
- def sumReciprocals = sum(1.0/_)
+ def sumReciprocals = sum(1.0/_)
def sumPi = { n: Int => 4 + sum(x => 4.0/(4*x+1) - 4.0/(4*x-1))(1, n) }
Console.println(sumInts(1,4))
@@ -194,7 +194,7 @@ object M8 {
//############################################################################
object M9 {
- def accumulate[t](combiner: (t, t) => t, nullValue: t, f: Int => t,
+ def accumulate[t](combiner: (t, t) => t, nullValue: t, f: Int => t,
next: Int => Int)(a: Int, b: Int): t =
if (a > b) nullValue
else combiner(f(a), accumulate(combiner, nullValue, f, next)(next(a), b))
@@ -328,9 +328,9 @@ object MD {
iter(a, zero)
}
- def plus (x:Double,y:Double) = x+y;
+ def plus (x:Double,y:Double) = x+y;
val sum: (Int => Double) => (Int, Int) => Double = reduce(plus , 0);
- def times(x:Double,y:Double) = x*y;
+ def times(x:Double,y:Double) = x*y;
val product: (Int => Double) => (Int, Int) => Double = reduce(times, 1);
def factorial(n: Int) = product(x => x)(1 , n)
diff --git a/test/files/run/Course-2002-05.scala b/test/files/run/Course-2002-05.scala
index e6764b92c8..9457fae147 100644
--- a/test/files/run/Course-2002-05.scala
+++ b/test/files/run/Course-2002-05.scala
@@ -129,7 +129,7 @@ object M3 {
else {
def isSafe(column: Int, placement: Placement): Boolean =
placement forall {
- pos => (pos._2 != column &&
+ pos => (pos._2 != column &&
abs(pos._2 - column) != row - pos._1)
}
diff --git a/test/files/run/Course-2002-08.scala b/test/files/run/Course-2002-08.scala
index 2423bbc36a..85a83e0146 100644
--- a/test/files/run/Course-2002-08.scala
+++ b/test/files/run/Course-2002-08.scala
@@ -520,7 +520,7 @@ abstract class CircuitSimulator() extends BasicCircuitSimulator() {
val w1 = new Wire();
val w2 = new Wire();
val w3 = new Wire();
-
+
andGate(in, ctrl(1), w3);
andGate(in, ctrl(1), w2);
andGate(in, ctrlN(1), w1);
diff --git a/test/files/run/OrderingTest.scala b/test/files/run/OrderingTest.scala
index 8af18aaba5..53448fbbce 100644
--- a/test/files/run/OrderingTest.scala
+++ b/test/files/run/OrderingTest.scala
@@ -6,7 +6,7 @@ object Test extends App {
assert((cmp == 0) == (cmp2 == 0))
assert((cmp > 0) == (cmp2 < 0))
assert((cmp < 0) == (cmp2 > 0))
- }
+ }
def testAll[T](t1 : T, t2 : T)(implicit ord : Ordering[T]) = {
assert(ord.compare(t1, t2) < 0)
@@ -16,8 +16,8 @@ object Test extends App {
}
assert(Ordering[String].compare("australopithecus", "brontausaurus") < 0)
- // assert(Ordering[Unit].compare((), ()) == 0)
-
+ // assert(Ordering[Unit].compare((), ()) == 0)
+
testAll("bar", "foo");
testAll[Byte](0, 1);
testAll(false, true)
@@ -28,7 +28,7 @@ object Test extends App {
testAll[Iterable[Int]](List(1, 2), List(2));
testAll((1, "bar"), (1, "foo"))
testAll((1, "foo"), (2, "bar"))
-
+
// sortBy
val words = "The quick brown fox jumped over the lazy dog".split(' ')
val result = words.sortBy(x => (x.length, x.head))
diff --git a/test/files/run/ReplacementMatching.scala b/test/files/run/ReplacementMatching.scala
index 05040d98a3..faa46419dc 100644
--- a/test/files/run/ReplacementMatching.scala
+++ b/test/files/run/ReplacementMatching.scala
@@ -7,12 +7,12 @@ import util.matching._
object Test {
-
+
def main(args: Array[String]) {
replacementMatching
groupsMatching
}
-
+
def replacementMatching {
val regex = """\$\{(.+?)\}""".r
val replaced = regex.replaceAllIn("Replacing: ${main}. And another method: ${foo}.",
@@ -21,7 +21,7 @@ object Test {
identifier
})
assert(replaced == "Replacing: main. And another method: foo.")
-
+
val regex3 = """\$\{(.+?)\}""".r
val replaced3 = regex3.replaceSomeIn("Replacing: ${main}. And another: ${foo}.", (m: util.matching.Regex.Match) => {
val id = m.group(1)
@@ -29,7 +29,7 @@ object Test {
})
assert(replaced3 == "Replacing: main. And another: ${foo}.")
}
-
+
def groupsMatching {
val Date = """(\d+)/(\d+)/(\d+)""".r
for (Regex.Groups(a, b, c) <- Date findFirstMatchIn "1/1/2001 marks the start of the millenium. 31/12/2000 doesn't.") {
@@ -43,5 +43,5 @@ object Test {
assert(c == "2001" || c == "2000")
}
}
-
+
}
diff --git a/test/files/run/ReverseSeqView.scala b/test/files/run/ReverseSeqView.scala
index 2004791bff..517f1cc24c 100644
--- a/test/files/run/ReverseSeqView.scala
+++ b/test/files/run/ReverseSeqView.scala
@@ -5,14 +5,14 @@
object Test extends App {
-
+
val lstv = List(1, 2, 3).view
val lstvr = lstv.reverse
assert(lstvr.iterator.toList == List(3, 2, 1))
assert(lstvr.reverse == List(1, 2, 3))
assert(lstvr.reverseIterator.toList == List(1, 2, 3))
assert(lstvr.reverseMap(_ + 1) == List(2, 3, 4))
-
+
}
diff --git a/test/files/run/UnrolledBuffer.scala b/test/files/run/UnrolledBuffer.scala
index 62a1f7d083..fe08e812ac 100644
--- a/test/files/run/UnrolledBuffer.scala
+++ b/test/files/run/UnrolledBuffer.scala
@@ -7,12 +7,12 @@ import collection.mutable.UnrolledBuffer
object Test {
-
+
def main(args: Array[String]) {
val u1 = new UnrolledBuffer[Int]
assert(u1.isEmpty)
assert(u1.size == 0)
-
+
u1 += 1
u1 += 2
u1 += 3
@@ -20,11 +20,11 @@ object Test {
assert(u1.toList == List(1, 2, 3))
assert(u1.nonEmpty)
assert(u1.size == 3)
-
+
u1.clear
assert(u1.isEmpty)
assert(u1.size == 0)
-
+
u1 += 1
u1 += 2
u1 += 3
@@ -33,56 +33,56 @@ object Test {
assert(u1.size == 2)
assert(u1 == UnrolledBuffer(1, 3))
assert(u1.toList == List(1, 3))
-
+
u1 concat UnrolledBuffer(5, 7, 9)
assert(u1 == UnrolledBuffer(1, 3, 5, 7, 9))
-
+
val u2 = u1 map { x => (x - 1) / 2 }
assert(u2 == UnrolledBuffer(0, 1, 2, 3, 4))
-
+
u1.clear
u2.clear
assert(u1.size == 0)
assert(u2.size == 0)
-
+
for (i <- 0 until 500) u1 += i
for (i <- 500 until 1000) u2 += i
assert(u1.size == 500)
assert(u2.size == 500)
assert(u1.iterator.toList == (0 until 500).toList)
assert((for (elem <- u1) yield elem) sameElements (0 until 500))
-
+
u1 concat u2
assert(u1.size == 1000)
assert(u2.size == 0)
assertCorrect(u1)
-
+
u1 concat UnrolledBuffer()
assertCorrect(u1)
-
+
val u3 = u1 map { x => x }
var i = 0
for (elem <- u1) {
assert(elem == u3(i))
i += 1
}
-
+
u1.remove(999)
assert(u1.size == 999)
assertCorrect(u1)
-
+
u1.remove(500)
assert(u1.size == 998)
assertCorrect(u1)
-
+
u1.remove(5)
assert(u1.size == 997)
assertCorrect(u1)
-
+
u1.remove(0)
assert(u1.size == 996)
assertCorrect(u1)
-
+
u1.insert(0, 0)
assert(u1.size == 997)
assertCorrect(u1)
@@ -90,15 +90,15 @@ object Test {
u1.insert(5, 5)
assert(u1.size == 998)
assertCorrect(u1)
-
+
u1.insert(500, 500)
assert(u1.size == 999)
assertCorrect(u1)
-
+
u1.insert(999, 999)
assert(u1.size == 1000)
assertCorrect(u1)
-
+
for (i <- -100 until 0) {
i +=: u1
assertCorrect(u1)
@@ -106,7 +106,7 @@ object Test {
assert(u1.size == 1100)
assertCorrect(u1)
}
-
+
def assertCorrect(u1: UnrolledBuffer[Int]) {
val sz = u1.size
val store = new Array[Int](sz)
@@ -117,9 +117,9 @@ object Test {
for (i <- 0 until sz) assert(u1(i) == (sz - i))
for (i <- 0 until sz) u1(i) = store(i)
for (i <- 0 until sz) assert(store(i) == u1(i))
-
+
assert((u1 map { x => x }) == u1)
assert(u1.iterator.toSeq.size == u1.size)
}
-
+
}
diff --git a/test/files/run/absoverride.scala b/test/files/run/absoverride.scala
index a3c03df0d7..8c6de09d2a 100644
--- a/test/files/run/absoverride.scala
+++ b/test/files/run/absoverride.scala
@@ -26,16 +26,16 @@ trait SyncIterator extends AbsIterator {
}
}
trait LoggedIterator extends AbsIterator {
- abstract override def next: T = {
- val x = super.next; println("log: " + x); x
+ abstract override def next: T = {
+ val x = super.next; println("log: " + x); x
}
}
-class Iter2(s: String) extends StringIterator(s)
- with SyncIterator with LoggedIterator;
+class Iter2(s: String) extends StringIterator(s)
+ with SyncIterator with LoggedIterator;
object Test {
def main(args: Array[String]) {
class Iter extends StringIterator(args(0)) with RichIterator with SyncIterator with LoggedIterator
val iter = new Iter
- iter foreach Console.println
+ iter foreach Console.println
}
}
diff --git a/test/files/run/arrayclone.scala b/test/files/run/arrayclone.scala
index fbca38b42e..c9f7556b47 100644
--- a/test/files/run/arrayclone.scala
+++ b/test/files/run/arrayclone.scala
@@ -16,7 +16,7 @@ object BooleanArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = false;
- assert(it(0) == true)
+ assert(it(0) == true)
}
object ByteArrayClone{
@@ -24,7 +24,7 @@ object ByteArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object ShortArrayClone{
@@ -32,7 +32,7 @@ object ShortArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object CharArrayClone{
@@ -40,7 +40,7 @@ object CharArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object IntArrayClone{
@@ -48,7 +48,7 @@ object IntArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object LongArrayClone{
@@ -56,7 +56,7 @@ object LongArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object FloatArrayClone{
@@ -64,7 +64,7 @@ object FloatArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object DoubleArrayClone{
@@ -72,7 +72,7 @@ object DoubleArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = 0;
- assert(it(0) == 1)
+ assert(it(0) == 1)
}
object ObjectArrayClone{
@@ -80,7 +80,7 @@ object ObjectArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = "0";
- assert(it(0) == "1")
+ assert(it(0) == "1")
}
object PolymorphicArrayClone{
@@ -88,14 +88,14 @@ object PolymorphicArrayClone{
val cloned = it.clone();
assert(cloned.sameElements(it));
cloned(0) = zero;
- assert(it(0) == one)
- }
+ assert(it(0) == one)
+ }
testIt(Array("one", "two"), "one", "two");
class Mangler[T: Manifest](ts : T*){
// this will always be a BoxedAnyArray even after we've unboxed its contents.
- val it = ts.toArray[T];
+ val it = ts.toArray[T];
}
val mangled = new Mangler[Int](0, 1);
diff --git a/test/files/run/arraycopy.scala b/test/files/run/arraycopy.scala
index bb06200dc7..82c34c23e7 100644
--- a/test/files/run/arraycopy.scala
+++ b/test/files/run/arraycopy.scala
@@ -5,7 +5,7 @@ object Test {
val a = new Array[Int](10)
val b = new Array[Any](10)
for (i <- 0 until 10) b(i) = i
-
+
Array.copy(b, 3, a, 3, 7)
assert(a.toSeq == List(0, 0, 0, 3, 4, 5, 6, 7, 8, 9))
}
diff --git a/test/files/run/arrayview.scala b/test/files/run/arrayview.scala
index 97e840f5e9..42ced5e9ac 100644
--- a/test/files/run/arrayview.scala
+++ b/test/files/run/arrayview.scala
@@ -1,6 +1,6 @@
object Test {
def f = (1 to 100).toArray.view
-
+
def main(args: Array[String]): Unit = {
val xs = (f filter (_ < 50)).reverse.filter(_ % 2 == 0).map(_ / 2).flatMap(x => Array(1, x))
assert(xs.size == 48)
diff --git a/test/files/run/bigDecimalCache.scala b/test/files/run/bigDecimalCache.scala
index c0c709a50f..e8ebefee78 100644
--- a/test/files/run/bigDecimalCache.scala
+++ b/test/files/run/bigDecimalCache.scala
@@ -1,9 +1,9 @@
-object Test {
+object Test {
def main(args: Array[String]): Unit = {
val bd5a = BigDecimal(5)
val mc = java.math.MathContext.DECIMAL32
val bd5b = BigDecimal(5,mc)
-
+
assert(bd5b.mc == mc)
}
}
diff --git a/test/files/run/bigDecimalTest.scala b/test/files/run/bigDecimalTest.scala
index 480305d7d4..07b524c017 100644
--- a/test/files/run/bigDecimalTest.scala
+++ b/test/files/run/bigDecimalTest.scala
@@ -28,7 +28,7 @@ object Test {
// SI-4547: implicit conversion
assert(5 + BigDecimal(3) == BigDecimal(8))
-
+
// meaningless sanity check
List[BigDecimal](a, b, c, d, e, f) map (_.scale) foreach println
}
diff --git a/test/files/run/boolexprs.scala b/test/files/run/boolexprs.scala
index b9b4faea9c..4f1c4b161a 100644
--- a/test/files/run/boolexprs.scala
+++ b/test/files/run/boolexprs.scala
@@ -10,7 +10,7 @@ class Counter {
object Test1 {
var flag = false;
- def flip: Boolean = { val tmp = flag; flag = !flag; tmp }
+ def flip: Boolean = { val tmp = flag; flag = !flag; tmp }
def run: Int = {
val c = new Counter;
c.incrThen(flip || flip);
diff --git a/test/files/run/bugs.scala b/test/files/run/bugs.scala
index bbf2a0fb39..d5905af76c 100644
--- a/test/files/run/bugs.scala
+++ b/test/files/run/bugs.scala
@@ -304,7 +304,7 @@ object Bug250Test {
// Bug 257
object Bug257Test {
- def sayhello(): Unit = { Console.println("I should come 1st and 2nd"); };
+ def sayhello(): Unit = { Console.println("I should come 1st and 2nd"); };
def sayhi(): Unit = { Console.println("I should come last"); };
def f1(x: Unit): Unit = ();
diff --git a/test/files/run/caseClassEquality.scala b/test/files/run/caseClassEquality.scala
index c11d7ad0d1..4940d80951 100644
--- a/test/files/run/caseClassEquality.scala
+++ b/test/files/run/caseClassEquality.scala
@@ -11,25 +11,25 @@ object Test {
case _ => false
}
}
-
+
case class CS1(xs: Any*)
class CS2(xs: Seq[_]*) extends CS1(xs: _*)
class CS3(xs: IndexedSeq[Int]*) extends CS2(xs: _*)
-
+
case class H1(x: Int, y: Double)
class H2(x: Double, y: Int) extends H1(y, x)
-
+
def main(args: Array[String]): Unit = {
assert(C1(5) == new C2(5))
assert(new C2(5) == C1(5))
assert(C1(5).hashCode == new C2(5).hashCode)
assert(new C2(5).hashCode == C1(5).hashCode)
-
+
assert(C1(5) != new C3(5))
assert(new C3(5) != C1(5))
-
+
assert(CS1(List(1d,2d), Seq[Float](3f, 4f)) == new CS3(IndexedSeq(1,2), IndexedSeq(3, 4)))
-
+
assert(H1(5, 10d) == new H2(10d, 5))
assert(H1(5, 10d).hashCode == new H2(10d, 5).hashCode)
}
diff --git a/test/files/run/castsingleton.scala b/test/files/run/castsingleton.scala
index 339f5e00cf..47bd613079 100644
--- a/test/files/run/castsingleton.scala
+++ b/test/files/run/castsingleton.scala
@@ -8,4 +8,4 @@ object Test extends App {
}
empty(L())
-}
+}
diff --git a/test/files/run/checked.scala b/test/files/run/checked.scala
index e4db9c0916..06bc0c05e5 100644
--- a/test/files/run/checked.scala
+++ b/test/files/run/checked.scala
@@ -23,9 +23,9 @@ trait T {
// Should not throw
class D extends B with T {
val sum = x + y + z + b1 + b2 + t1 + t2
- override def toString =
+ override def toString =
"sum = " + sum
-
+
}
abstract class NeedsXEarly {
@@ -91,7 +91,7 @@ class TestInterference extends {
object Test extends App {
-
+
def shouldThrow(t: => Unit) = try {
t
println("[FAIL]: No UFE thrown")
diff --git a/test/files/run/classof.scala b/test/files/run/classof.scala
index b50facc1e9..10c07d2e51 100644
--- a/test/files/run/classof.scala
+++ b/test/files/run/classof.scala
@@ -13,14 +13,14 @@ object Test {
println(classOf[Long])
println(classOf[Float])
println(classOf[Double])
-
+
println("Class types")
println(classOf[SomeClass])
println(classOf[List[Array[Float]]])
println(classOf[(String, Map[Int, String])])
println("Arrays:")
- println(classOf[Array[Unit]])
+ println(classOf[Array[Unit]])
println(classOf[Array[Int]])
println(classOf[Array[Double]])
println(classOf[Array[List[String]]])
diff --git a/test/files/run/code.scala b/test/files/run/code.scala
index e26f97b2a4..162f796c63 100644
--- a/test/files/run/code.scala
+++ b/test/files/run/code.scala
@@ -56,5 +56,5 @@ package baz {
}
-
+
diff --git a/test/files/run/collections-toSelf.scala b/test/files/run/collections-toSelf.scala
index 02f1dd6a95..2adbc22af7 100644
--- a/test/files/run/collections-toSelf.scala
+++ b/test/files/run/collections-toSelf.scala
@@ -2,7 +2,7 @@ object Test {
val map = Map(1 -> 2)
val set = Set(1, 2)
val seq = collection.immutable.Seq(1, 2)
-
+
def main(args: Array[String]): Unit = {
assert(map.toMap eq map)
assert(set.toSet eq set)
diff --git a/test/files/run/collections.scala b/test/files/run/collections.scala
index deab5aa210..60f0765e6a 100644
--- a/test/files/run/collections.scala
+++ b/test/files/run/collections.scala
@@ -61,7 +61,7 @@ object Test extends App {
}
time {
var x = 0
- for (i <- 0 to 10000)
+ for (i <- 0 to 10000)
s get i match {
case Some(i) => x += i
case None =>
@@ -96,7 +96,7 @@ object Test extends App {
}
time {
var x = 0
- for (i <- 0 to 10000)
+ for (i <- 0 to 10000)
s get i match {
case Some(i) => x += i
case None =>
diff --git a/test/files/run/colltest1.scala b/test/files/run/colltest1.scala
index 0e4c7e574c..1cbd932222 100644
--- a/test/files/run/colltest1.scala
+++ b/test/files/run/colltest1.scala
@@ -61,7 +61,7 @@ object Test extends App {
assert(ten.toStream == ten)
assert(ten.toString endsWith "(1, 2, 3, 4, 5, 6, 7, 8, 9, 10)")
assert(ten.mkString("[", "; ", "]") endsWith "[1; 2; 3; 4; 5; 6; 7; 8; 9; 10]")
- }
+ }
def orderedIterableTest(empty: Iterable[Int]) {
orderedTraversableTest(empty)
@@ -84,7 +84,7 @@ object Test extends App {
assert(ten(0) == 1 && ten(9) == 10)
assert((ten lengthCompare 10) == 0 && (ten lengthCompare 1) > 0 && (ten lengthCompare 11) < 0)
assert((ten isDefinedAt 0) && (ten isDefinedAt 9))
- assert(!(ten isDefinedAt -1));
+ assert(!(ten isDefinedAt -1));
assert(!(ten isDefinedAt 10))
val tenten = ten zip ten
assert((tenten map (_._1)) == ten)
@@ -174,8 +174,8 @@ object Test extends App {
m ++= ('J' to 'Z') map (x => (x.toString -> x.toString))
println(m.toList.sorted)
assert(!m.isEmpty)
- assert(m.keySet forall (k => (m get k) == Some(k)))
- assert(m.keySet forall (k => (m apply k) == k))
+ assert(m.keySet forall (k => (m get k) == Some(k)))
+ assert(m.keySet forall (k => (m apply k) == k))
assert(m.keySet forall (m contains))
assert(m.getOrElse("7", "@") == "@")
assert(m.keySet.size == 26)
diff --git a/test/files/run/comparable-comparator.scala b/test/files/run/comparable-comparator.scala
index aafe10eb59..ac943c63bb 100644
--- a/test/files/run/comparable-comparator.scala
+++ b/test/files/run/comparable-comparator.scala
@@ -1,7 +1,7 @@
object Test {
import java.util.Comparator
-
+
class C1(val s: String) extends Comparable[C1] {
def compareTo(other: C1) = s compareTo other.s
override def toString = s
@@ -10,7 +10,7 @@ object Test {
def compareTo(other: C2) = s compareTo other.s
override def toString = s
}
-
+
implicit val cmp: Comparator[C2] = new Comparator[C2] {
def compare(p1: C2, p2: C2) = p2.s compareTo p1.s
}
@@ -18,10 +18,10 @@ object Test {
val strs = "zip foo bar baz aggle bing bong" split ' ' toList
val c1s = strs map (x => new C1(x))
val c2s = strs map (x => new C2(x))
-
+
val sorted1 = c1s.sorted map (_.s)
val sorted2 = c2s.sorted map (_.s)
-
+
def main(args: Array[String]): Unit = {
assert(sorted1 == sorted2.reverse)
}
diff --git a/test/files/run/concat-two-strings.scala b/test/files/run/concat-two-strings.scala
index c8881aa146..ad796fe0ee 100644
--- a/test/files/run/concat-two-strings.scala
+++ b/test/files/run/concat-two-strings.scala
@@ -8,7 +8,7 @@ object Test {
def f4(x: List[Int]) = "" + x
def f5(x: Any) = "" + x
def f6(x: AnyVal) = "" + x
-
+
def main(args: Array[String]): Unit = {
List(f1("a"), f2(5), f3(null), f3(Array('a')), f4(List(1)), f5(null), f6(55d)) mkString ""
}
diff --git a/test/files/run/constrained-types.check b/test/files/run/constrained-types.check
index 963dd4a059..ac8817cb08 100644
--- a/test/files/run/constrained-types.check
+++ b/test/files/run/constrained-types.check
@@ -14,7 +14,7 @@ scala> class A {
val x = "hello"
val y: Int @Annot(x) = 10
override def toString = "an A"
-}
+}
defined class A
scala>
@@ -22,7 +22,7 @@ scala>
scala> val a = new A
a: A = an A
-scala> val y = a.y // should rewrite "this.x" to "a.x"
+scala> val y = a.y // should rewrite "this.x" to "a.x"
y: Int @Annot(a.x) = 10
scala> var a2 = new A
diff --git a/test/files/run/constrained-types.scala b/test/files/run/constrained-types.scala
index 91bd856d00..38ae076c06 100644
--- a/test/files/run/constrained-types.scala
+++ b/test/files/run/constrained-types.scala
@@ -15,10 +15,10 @@ class A {
val x = "hello"
val y: Int @Annot(x) = 10
override def toString = "an A"
-}
+}
val a = new A
-val y = a.y // should rewrite "this.x" to "a.x"
+val y = a.y // should rewrite "this.x" to "a.x"
var a2 = new A
val y2 = a2.y // should drop the annotation
diff --git a/test/files/run/ctor-order.scala b/test/files/run/ctor-order.scala
index 5f5871691a..a223ff77e8 100644
--- a/test/files/run/ctor-order.scala
+++ b/test/files/run/ctor-order.scala
@@ -8,7 +8,7 @@ class Outer {
class X extends {
/* The constructor of X should set this.$outer to the outer instance
- * *before* calling the super constructors. This is tested by
+ * *before* calling the super constructors. This is tested by
* mixin M1, which tries to access global from the enclosing class.
*/
val outer = Outer.this
diff --git a/test/files/run/distinct.scala b/test/files/run/distinct.scala
index 698d31f1e9..09e5a0734a 100644
--- a/test/files/run/distinct.scala
+++ b/test/files/run/distinct.scala
@@ -5,7 +5,7 @@ object Test {
val alphabet = 'a' to 'z' mkString ""
val alphaList = 'a' to 'z' toList
def shuffled = util.Random.shuffle(alphaList)
-
+
def main(args: Array[String]): Unit = {
val longList = alphaList ++ (1 to 9 flatMap (_ => shuffled))
val result = longList.distinct mkString ""
diff --git a/test/files/run/elidable-noflags.scala b/test/files/run/elidable-noflags.scala
index 1b9c5118bb..5192e34096 100644
--- a/test/files/run/elidable-noflags.scala
+++ b/test/files/run/elidable-noflags.scala
@@ -9,7 +9,7 @@ object Test {
@elidable(100000) def f5() = println("Good for me, I was not elided.")
@elidable(OFF) def f6() = println("Good for me, I was not elided.")
@elidable(ALL) def f7() = println("ESPECIALLY good for me, I was not elided.")
-
+
def main(args: Array[String]): Unit = {
f1()
f2()
diff --git a/test/files/run/elidable.scala b/test/files/run/elidable.scala
index 2a527efc4b..264efbad59 100644
--- a/test/files/run/elidable.scala
+++ b/test/files/run/elidable.scala
@@ -6,7 +6,7 @@ object Test {
@elidable(INFO) def f2() = assert(false, "Should have been elided.")
@elidable(SEVERE) def f3() = println("Good for me, I was not elided.")
@elidable(INFO) def f4 = assert(false, "Should have been elided (no parens).")
-
+
def main(args: Array[String]): Unit = {
f1()
f2()
diff --git a/test/files/run/emptypf.scala b/test/files/run/emptypf.scala
index eb3e3e6380..8aa0906a1b 100644
--- a/test/files/run/emptypf.scala
+++ b/test/files/run/emptypf.scala
@@ -5,10 +5,10 @@ object Test {
case s => s.length
}
}
-
+
def main(args: Array[String]): Unit = {
println(f("abc"))
- println(f("def"))
+ println(f("def"))
println(PartialFunction.empty[String, Int] isDefinedAt "abc")
}
}
diff --git a/test/files/run/equality.scala b/test/files/run/equality.scala
index ff59898821..68055fd012 100644
--- a/test/files/run/equality.scala
+++ b/test/files/run/equality.scala
@@ -2,7 +2,7 @@
object Test
{
import scala.runtime.ScalaRunTime.hash
-
+
def makeFromInt(x: Int) = List(
x.toByte, x.toShort, x.toInt, x.toLong, x.toFloat, x.toDouble, BigInt(x), BigDecimal(x)
) ::: (
@@ -11,26 +11,26 @@ object Test
def makeFromDouble(x: Double) = List(
x.toShort, x.toInt, x.toLong, x.toFloat, x.toDouble, BigInt(x.toInt), BigDecimal(x)
)
-
+
def main(args: Array[String]): Unit = {
var xs = makeFromInt(5)
for (x <- xs ; y <- xs) {
assert(x == y, x + " == " + y)
assert(hash(x) == hash(y), "hash(%s) == hash(%s)".format(x, y))
}
-
+
xs = makeFromInt(-5)
for (x <- xs ; y <- xs) {
assert(x == y, x + " == " + y)
assert(hash(x) == hash(y), "hash(%s) == hash(%s)".format(x, y))
}
-
+
xs = makeFromDouble(500.0)
for (x <- xs ; y <- xs) {
assert(x == y, x + " == " + y)
assert(hash(x) == hash(y), "hash(%s) == hash(%s)".format(x, y))
}
-
+
// negatives
val bigLong = new java.util.concurrent.atomic.AtomicLong(Long.MaxValue)
assert(-1 != bigLong && bigLong != -1) // bigLong.intValue() == -1
diff --git a/test/files/run/exceptions-2.scala b/test/files/run/exceptions-2.scala
index 05aab66dd0..d0312a49b2 100644
--- a/test/files/run/exceptions-2.scala
+++ b/test/files/run/exceptions-2.scala
@@ -68,7 +68,7 @@ object Test {
Console.println("Outermost finally");
}
- def mixed =
+ def mixed =
try {
if (10 > 0)
throw Leaf(10);
@@ -107,7 +107,7 @@ object Test {
case Leaf(a) => Console.println(a);
}
} catch {
- case npe: NullPointerException =>
+ case npe: NullPointerException =>
Console.println("Caught an NPE");
}
@@ -141,14 +141,14 @@ object Test {
}
}
- def valInFinally: Unit =
- try {
+ def valInFinally: Unit =
+ try {
} finally {
val fin = "Abc";
Console.println(fin);
};
- def tryAndValInFinally: Unit =
+ def tryAndValInFinally: Unit =
try {
} finally {
val fin = "Abc";
@@ -157,51 +157,51 @@ object Test {
} catch { case _ => () }
};
- def returnInBody: Unit = try {
+ def returnInBody: Unit = try {
try {
Console.println("Normal execution...");
- return
+ return
Console.println("non reachable code");
} finally {
Console.println("inner finally");
}
- } finally {
+ } finally {
Console.println("Outer finally");
}
- def returnInBodySynch: Unit = try {
+ def returnInBodySynch: Unit = try {
synchronized {
try {
Console.println("Synchronized normal execution...");
- return
+ return
Console.println("non reachable code");
} finally {
Console.println("inner finally");
}
}
- } finally {
+ } finally {
Console.println("Outer finally");
}
- def returnInBodyAndInFinally: Unit = try {
+ def returnInBodyAndInFinally: Unit = try {
try {
Console.println("Normal execution...");
- return
+ return
Console.println("non reachable code");
} finally {
Console.println("inner finally");
return
}
- } finally {
+ } finally {
Console.println("Outer finally");
return
}
- def returnInBodyAndInFinally2: Unit = try {
+ def returnInBodyAndInFinally2: Unit = try {
try {
Console.println("Normal execution...");
- return
+ return
Console.println("non reachable code");
} finally {
try {
@@ -211,7 +211,7 @@ object Test {
Console.println("finally inside finally");
}
}
- } finally {
+ } finally {
Console.println("Outer finally");
return
}
@@ -253,7 +253,7 @@ object Test {
}
- def returnWithFinallyClean: Int = try {
+ def returnWithFinallyClean: Int = try {
try {
Console.println("Normal execution...");
return 10
@@ -262,7 +262,7 @@ object Test {
} finally {
Console.println("inner finally");
}
- } finally {
+ } finally {
Console.println("Outer finally");
try { 1 } catch { case e: java.io.IOException => () }
}
@@ -294,7 +294,7 @@ object Test {
Console.println("mixed: ");
execute(mixed);
-
+
Console.println("withValue1:");
execute(withValue1);
@@ -322,7 +322,7 @@ object Test {
Console.println("NoExcep.method3:");
execute(NoExcep.method3);
-
+
Console.println("NoExcep.method4:");
execute(NoExcep.method4);
diff --git a/test/files/run/existentials.scala b/test/files/run/existentials.scala
index ff52cc0040..3977d47417 100644
--- a/test/files/run/existentials.scala
+++ b/test/files/run/existentials.scala
@@ -2,7 +2,7 @@ class Foo {
class Line {
case class Cell[T](var x: T)
def f[T](x: Any): Cell[t1] forSome { type t1 } = x match { case y: Cell[t] => y }
-
+
var x: Cell[T] forSome { type T } = new Cell(1)
println({ x = new Cell("abc"); x })
}
@@ -12,7 +12,7 @@ class FooW {
class Line {
case class Cell[T](var x: T)
def f[T](x: Any): Cell[ _ ] = x match { case y: Cell[t] => y }
-
+
var x: Cell[_] = new Cell(1)
println({ x = new Cell("abc"); x })
}
diff --git a/test/files/run/finally.scala b/test/files/run/finally.scala
index b3b7f684e5..635123cc4d 100644
--- a/test/files/run/finally.scala
+++ b/test/files/run/finally.scala
@@ -10,7 +10,7 @@ object Test extends App {
case e => println(e)
}
}
-
+
// test that finally is not covered by any exception handlers.
def bar {
try {
@@ -26,7 +26,7 @@ object Test extends App {
}
// return in catch (finally is executed)
- def retCatch {
+ def retCatch {
try {
throw new Exception
} catch {
@@ -37,7 +37,7 @@ object Test extends App {
}
// throw in catch (finally is executed, exception propagated)
- def throwCatch {
+ def throwCatch {
try {
throw new Exception
} catch {
@@ -48,7 +48,7 @@ object Test extends App {
}
// return inside body (finally is executed)
- def retBody {
+ def retBody {
try {
return
} catch {
@@ -75,7 +75,7 @@ object Test extends App {
finally {
println("in finally 1")
return
- }
+ }
} finally println("in finally 2")
}
@@ -94,7 +94,7 @@ object Test extends App {
}
// nested finallies with return value
- def nestedFinalies: Int =
+ def nestedFinalies: Int =
try {
try {
return 10
diff --git a/test/files/run/flat-flat-flat.scala b/test/files/run/flat-flat-flat.scala
index 80868b9c5e..d57696b3a3 100644
--- a/test/files/run/flat-flat-flat.scala
+++ b/test/files/run/flat-flat-flat.scala
@@ -2,7 +2,7 @@ object Test {
def f1 = List(Iterator(Some(1), None, Some(2)), Iterator(Some(3), None))
def f2 = Iterator(List(Some(1), None, Some(2)), List(Some(3), None), Nil)
def f3 = List(Some(Iterator(1)), None, Some(Iterator(2, 3)))
-
+
def main(args: Array[String]): Unit = {
assert(f1.flatten.flatten.toList == List(1, 2, 3))
assert(f2.flatten.flatten.toList == List(1, 2, 3))
diff --git a/test/files/run/forvaleq.scala b/test/files/run/forvaleq.scala
index 8c1824a769..2a958802b6 100644
--- a/test/files/run/forvaleq.scala
+++ b/test/files/run/forvaleq.scala
@@ -2,7 +2,7 @@
import scala.collection.immutable.Queue
import scala.{List=>L}
-
+
object Test {
// redefine some symbols to make it extra hard
class List
@@ -16,11 +16,11 @@ object Test {
case _ if (x<10) => x
case _ => firstDigit(x / 10)
}
-
-
+
+
{
- // a basic test case
-
+ // a basic test case
+
val input = L.range(0,20)
val oddFirstTimesTwo =
for {x <- input
@@ -32,7 +32,7 @@ object Test {
{
// a test case with patterns
-
+
val input = L.range(0, 20)
val oddFirstTimesTwo =
for {x <- input
@@ -43,10 +43,10 @@ object Test {
yield a + b
println(oddFirstTimesTwo)
}
-
+
{
// make sure it works on non-Ls
-
+
// val input: Queue = Queue.Empty[int].incl(L.range(0,20))
val input = L.range(0, 20).iterator
val oddFirstTimesTwo =
@@ -54,36 +54,36 @@ object Test {
xf = firstDigit(x)
if xf % 2 == 1}
yield x*2
- println(oddFirstTimesTwo.toList)
+ println(oddFirstTimesTwo.toList)
}
-
+
{
// yield the computed value
-
+
val input = L.range(0,20)
val oddFirstTimesTwo =
for {x <- input
xf = firstDigit(x)
if xf % 2 == 1}
yield xf*2
- println(oddFirstTimesTwo)
+ println(oddFirstTimesTwo)
}
{
// make sure the function is only called once
var count: Int = 0
-
+
def fdct(x: Int) = {
count += 1
firstDigit(x)
}
-
+
val input = L.range(0,20)
for {x <- input
xf = fdct(x)
if xf % 2 == 1}
yield xf
-
+
println("called " + count + " times")
}
diff --git a/test/files/run/gadts.scala b/test/files/run/gadts.scala
index 57c7fc8af0..4ab3ef681a 100644
--- a/test/files/run/gadts.scala
+++ b/test/files/run/gadts.scala
@@ -2,8 +2,8 @@ abstract class Term[T]
case class Lit(x: Int) extends Term[Int]
case class Succ(t: Term[Int]) extends Term[Int]
case class IsZero(t: Term[Int]) extends Term[Boolean]
-case class If[T](c: Term[Boolean],
- t1: Term[T],
+case class If[T](c: Term[Boolean],
+ t1: Term[T],
t2: Term[T]) extends Term[T]
object Test extends App {
diff --git a/test/files/run/getClassTest.scala b/test/files/run/getClassTest.scala
index 951cc8d931..2485cd2c71 100644
--- a/test/files/run/getClassTest.scala
+++ b/test/files/run/getClassTest.scala
@@ -4,7 +4,7 @@ class AnyVals {
def f3 = 5.getClass
def f4 = (5: java.lang.Integer).getClass
def f5 = (5.asInstanceOf[AnyRef]).getClass
-
+
// scalap says:
//
// def f1 : java.lang.Class[?0] forSome {type ?0} = { /* compiled code */ }
@@ -19,18 +19,18 @@ class AnyVals {
// f2: java.lang.Class<?>
// f3: java.lang.Class<java.lang.Object>
// f4: java.lang.Class<? extends java.lang.Integer>
- // f5: java.lang.Class<?>
+ // f5: java.lang.Class<?>
}
class AnyRefs {
class A
class B extends A
-
+
def f1 = (new B: Any).getClass().newInstance()
def f2 = (new B: AnyRef).getClass().newInstance()
def f3 = (new B: A).getClass().newInstance()
def f4 = (new B: B).getClass().newInstance()
-
+
def f0[T >: B] = (new B: T).getClass().newInstance()
def f5 = f0[Any]
@@ -52,7 +52,7 @@ class MoreAnyRefs {
object Test {
def returnTypes[T: Manifest] = (
- manifest[T].erasure.getMethods.toList
+ manifest[T].erasure.getMethods.toList
filter (_.getName startsWith "f")
sortBy (_.getName)
map (m => m.getName + ": " + m.getGenericReturnType.toString)
diff --git a/test/files/run/global-showdef.scala b/test/files/run/global-showdef.scala
index e17f438247..71ba7b8bb3 100644
--- a/test/files/run/global-showdef.scala
+++ b/test/files/run/global-showdef.scala
@@ -39,8 +39,8 @@ object Bippy {
new Global(settings)
}
-
- def slurp(body: => Unit): String = stringFromStream { stream =>
+
+ def slurp(body: => Unit): String = stringFromStream { stream =>
Console.withOut(stream) {
Console.withErr(stream) {
body
@@ -57,11 +57,11 @@ object Bippy {
}
def showClass(name: String) = lines("-Yshow:typer", "-Xshow-class", name)
def showObject(name: String) = lines("-Yshow:typer", "-Xshow-object", name)
-
+
def show(xs: List[String]) = {
xs filter (x => (x contains "def showdefTestMember") || (x startsWith "<<-- ")) foreach println
}
-
+
def main(args: Array[String]) {
show(List("Bippy", "Bippy#BippyType", "Bippy.BippyType", "Bippy#Boppity", "Bippy#Boppity#Boo") flatMap showClass)
show(List("Bippy", "Bippy#Boppity#Boo") flatMap showObject)
diff --git a/test/files/run/groupby.scala b/test/files/run/groupby.scala
index a751e65e80..fe08f52812 100644
--- a/test/files/run/groupby.scala
+++ b/test/files/run/groupby.scala
@@ -3,8 +3,8 @@
// Fixes #3422
object Test {
-
- def main(args: Array[String]) {
+
+ def main(args: Array[String]) {
val arr = Array.range(0,10)
val map = arr groupBy (_%2)
val v1 = map(0)
@@ -14,5 +14,5 @@ object Test {
// hash map by default.
assert(v1 eq v2)
}
-
+
}
diff --git a/test/files/run/hashCodeBoxesRunTime.scala b/test/files/run/hashCodeBoxesRunTime.scala
index ba1a30f5fb..081a73376e 100644
--- a/test/files/run/hashCodeBoxesRunTime.scala
+++ b/test/files/run/hashCodeBoxesRunTime.scala
@@ -4,16 +4,16 @@ object Test
{
import java.{ lang => jl }
import scala.runtime.BoxesRunTime.{ hashFromNumber, hashFromObject }
-
+
def allSame[T](xs: List[T]) = assert(xs.distinct.size == 1, "failed: " + xs)
-
+
def mkNumbers(x: Int): List[Number] =
List(x.toByte, x.toShort, x, x.toLong, x.toFloat, x.toDouble)
-
+
def testLDF(x: Long) = allSame(List[Number](x, x.toDouble, x.toFloat) map hashFromNumber)
-
+
def main(args: Array[String]): Unit = {
- List(Byte.MinValue, -1, 0, 1, Byte.MaxValue) foreach { n =>
+ List(Byte.MinValue, -1, 0, 1, Byte.MaxValue) foreach { n =>
val hashes = mkNumbers(n) map hashFromNumber
allSame(hashes)
if (n >= 0) {
@@ -21,7 +21,7 @@ object Test
assert(charCode == hashes.head)
}
}
-
+
testLDF(Short.MaxValue.toLong)
testLDF(Short.MinValue.toLong)
}
diff --git a/test/files/run/hashhash.scala b/test/files/run/hashhash.scala
index d3800be876..b9cec99a12 100644
--- a/test/files/run/hashhash.scala
+++ b/test/files/run/hashhash.scala
@@ -1,7 +1,7 @@
object Test {
def confirmSame(x: Any) = assert(x.## == x.hashCode, "%s.## != %s.hashCode".format(x, x))
def confirmDifferent(x: Any) = assert(x.## != x.hashCode, "%s.## == %s.hashCode (but should not)".format(x, x))
-
+
def main(args: Array[String]): Unit = {
/** Just a little sanity check, not to be confused with a unit test. */
List(5, 5.5f, "abc", new AnyRef, ()) foreach confirmSame
diff --git a/test/files/run/indexedSeq.scala b/test/files/run/indexedSeq.scala
index 19308e1d8c..9744f47f63 100644
--- a/test/files/run/indexedSeq.scala
+++ b/test/files/run/indexedSeq.scala
@@ -1,8 +1,8 @@
object Test {
import scala.collection.{ mutable, immutable, generic }
-
+
def checkIdentity[A](xs: immutable.IndexedSeq[A]) = assert(xs.toIndexedSeq eq xs)
-
+
def main(args: Array[String]): Unit = {
checkIdentity(immutable.Vector(1 to 10: _*))
checkIdentity(1 to 10 toIndexedSeq)
diff --git a/test/files/run/infix.scala b/test/files/run/infix.scala
index ba77480297..700e4347ac 100644
--- a/test/files/run/infix.scala
+++ b/test/files/run/infix.scala
@@ -9,4 +9,4 @@ object Test extends App {
case null op (0, 0) op (1, 1) op (2, 2) => Console.println("OK")
}
}
-
+
diff --git a/test/files/run/inliner-infer.scala b/test/files/run/inliner-infer.scala
index 027d25b6e2..ea83966c52 100644
--- a/test/files/run/inliner-infer.scala
+++ b/test/files/run/inliner-infer.scala
@@ -7,8 +7,8 @@ object Test extends App {
@annotation.tailrec
def walk(xs: MyList): Unit = {
- if (xs.isEmpty)
- println("empty")
+ if (xs.isEmpty)
+ println("empty")
else {
println("non-empty")
walk(MyNil)
@@ -26,4 +26,4 @@ object MyNil extends MyList {
override def isEmpty = true
}
-
+
diff --git a/test/files/run/inner-obj-auto.scala b/test/files/run/inner-obj-auto.scala
index 98b48b150f..aa2e29326f 100644
--- a/test/files/run/inner-obj-auto.scala
+++ b/test/files/run/inner-obj-auto.scala
@@ -3,15 +3,15 @@
/* ================================================================================
Automatically generated on 2011-05-11. Do Not Edit (unless you have to).
(2-level nesting)
- ================================================================================ */
+ ================================================================================ */
class Class2_1 {
-
+
class Class1_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -31,16 +31,16 @@ class Class2_1 {
def run { runTest }
}
-
+
def run { (new Class1_2).run }
}
object Object3_1 {
-
+
class Class1_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -60,16 +60,16 @@ object Object3_1 {
def run { runTest }
}
-
+
def run { (new Class1_2).run } // trigger
}
trait Trait4_1 {
-
+
class Class1_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -89,16 +89,16 @@ trait Trait4_1 {
def run { runTest }
}
-
+
def run { (new Class1_2).run }
}
class Class6_1 {
-
+
object Object5_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -118,16 +118,16 @@ class Class6_1 {
def run { runTest } // trigger
}
-
+
def run { Object5_2.run }
}
object Object7_1 {
-
+
object Object5_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -147,16 +147,16 @@ object Object7_1 {
def run { runTest } // trigger
}
-
+
def run { Object5_2.run } // trigger
}
trait Trait8_1 {
-
+
object Object5_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -176,16 +176,16 @@ trait Trait8_1 {
def run { runTest } // trigger
}
-
+
def run { Object5_2.run }
}
class Class10_1 {
-
+
trait Trait9_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -205,16 +205,16 @@ class Class10_1 {
def run { runTest }
}
-
+
def run { (new Trait9_2 {}).run }
}
object Object11_1 {
-
+
trait Trait9_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -234,16 +234,16 @@ object Object11_1 {
def run { runTest }
}
-
+
def run { (new Trait9_2 {}).run } // trigger
}
trait Trait12_1 {
-
+
trait Trait9_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -263,16 +263,16 @@ trait Trait12_1 {
def run { runTest }
}
-
+
def run { (new Trait9_2 {}).run }
}
class Class14_1 {
-
+
def method13_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -292,16 +292,16 @@ class Class14_1 {
runTest // trigger
}
-
+
def run { method13_2 }
}
object Object15_1 {
-
+
def method13_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -321,16 +321,16 @@ object Object15_1 {
runTest // trigger
}
-
+
def run { method13_2 } // trigger
}
trait Trait16_1 {
-
+
def method13_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -350,16 +350,16 @@ trait Trait16_1 {
runTest // trigger
}
-
+
def run { method13_2 }
}
class Class18_1 {
-
+
private def method17_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -379,16 +379,16 @@ class Class18_1 {
runTest // trigger
}
-
+
def run { method17_2 }
}
object Object19_1 {
-
+
private def method17_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -408,16 +408,16 @@ object Object19_1 {
runTest // trigger
}
-
+
def run { method17_2 } // trigger
}
trait Trait20_1 {
-
+
private def method17_2 {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -437,16 +437,16 @@ trait Trait20_1 {
runTest // trigger
}
-
+
def run { method17_2 }
}
class Class22_1 {
-
+
val fun21_2 = () => {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -466,16 +466,16 @@ class Class22_1 {
runTest // trigger
}
-
+
def run { fun21_2() }
}
object Object23_1 {
-
+
val fun21_2 = () => {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -495,16 +495,16 @@ object Object23_1 {
runTest // trigger
}
-
+
def run { fun21_2() } // trigger
}
trait Trait24_1 {
-
+
val fun21_2 = () => {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -524,17 +524,17 @@ trait Trait24_1 {
runTest // trigger
}
-
+
def run { fun21_2() }
}
class Class26_1 {
-
+
class Class25_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -553,19 +553,19 @@ class Class26_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class25_2) }
}
object Object27_1 {
-
+
class Class25_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -584,19 +584,19 @@ object Object27_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class25_2) } // trigger
}
trait Trait28_1 {
-
+
class Class25_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -615,19 +615,19 @@ trait Trait28_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class25_2) }
}
class Class30_1 {
-
+
trait Trait29_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -646,19 +646,19 @@ class Class30_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait29_2 {}) }
}
object Object31_1 {
-
+
trait Trait29_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -677,19 +677,19 @@ object Object31_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait29_2 {}) } // trigger
}
trait Trait32_1 {
-
+
trait Trait29_2 {
- { // in primary constructor
+ { // in primary constructor
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -708,18 +708,18 @@ trait Trait32_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait29_2 {}) }
}
class Class34_1 {
-
+
lazy val lzvalue33_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -739,16 +739,16 @@ class Class34_1 {
runTest // trigger
}
-
+
def run { lzvalue33_2 }
}
object Object35_1 {
-
+
lazy val lzvalue33_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -768,16 +768,16 @@ object Object35_1 {
runTest // trigger
}
-
+
def run { lzvalue33_2 } // trigger
}
trait Trait36_1 {
-
+
lazy val lzvalue33_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -797,16 +797,16 @@ trait Trait36_1 {
runTest // trigger
}
-
+
def run { lzvalue33_2 }
}
class Class38_1 {
-
+
val value37_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -826,16 +826,16 @@ class Class38_1 {
runTest // trigger
}
-
+
def run { value37_2 }
}
object Object39_1 {
-
+
val value37_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -855,16 +855,16 @@ object Object39_1 {
runTest // trigger
}
-
+
def run { value37_2 } // trigger
}
trait Trait40_1 {
-
+
val value37_2 = {
var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
Obj // one
@@ -884,16 +884,16 @@ trait Trait40_1 {
runTest // trigger
}
-
+
def run { value37_2 }
}
class Class42_1 {
-
+
class Class41_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -913,16 +913,16 @@ class Class42_1 {
def run { runTest }
}
-
+
def run { (new Class41_2).run }
}
object Object43_1 {
-
+
class Class41_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -942,16 +942,16 @@ object Object43_1 {
def run { runTest }
}
-
+
def run { (new Class41_2).run } // trigger
}
trait Trait44_1 {
-
+
class Class41_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -971,16 +971,16 @@ trait Trait44_1 {
def run { runTest }
}
-
+
def run { (new Class41_2).run }
}
class Class46_1 {
-
+
object Object45_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1000,16 +1000,16 @@ class Class46_1 {
def run { runTest } // trigger
}
-
+
def run { Object45_2.run }
}
object Object47_1 {
-
+
object Object45_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1029,16 +1029,16 @@ object Object47_1 {
def run { runTest } // trigger
}
-
+
def run { Object45_2.run } // trigger
}
trait Trait48_1 {
-
+
object Object45_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1058,16 +1058,16 @@ trait Trait48_1 {
def run { runTest } // trigger
}
-
+
def run { Object45_2.run }
}
class Class50_1 {
-
+
trait Trait49_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1087,16 +1087,16 @@ class Class50_1 {
def run { runTest }
}
-
+
def run { (new Trait49_2 {}).run }
}
object Object51_1 {
-
+
trait Trait49_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1116,16 +1116,16 @@ object Object51_1 {
def run { runTest }
}
-
+
def run { (new Trait49_2 {}).run } // trigger
}
trait Trait52_1 {
-
+
trait Trait49_2 {
var ObjCounter = 0
-
+
private object Obj { ObjCounter += 1}
Obj // one
@@ -1145,16 +1145,16 @@ trait Trait52_1 {
def run { runTest }
}
-
+
def run { (new Trait49_2 {}).run }
}
class Class54_1 {
-
+
class Class53_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1178,16 +1178,16 @@ class Class54_1 {
def run { runTest }
}
-
+
def run { (new Class53_2).run }
}
object Object55_1 {
-
+
class Class53_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1211,16 +1211,16 @@ object Object55_1 {
def run { runTest }
}
-
+
def run { (new Class53_2).run } // trigger
}
trait Trait56_1 {
-
+
class Class53_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1244,16 +1244,16 @@ trait Trait56_1 {
def run { runTest }
}
-
+
def run { (new Class53_2).run }
}
class Class58_1 {
-
+
object Object57_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1277,16 +1277,16 @@ class Class58_1 {
def run { runTest } // trigger
}
-
+
def run { Object57_2.run }
}
object Object59_1 {
-
+
object Object57_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1310,16 +1310,16 @@ object Object59_1 {
def run { runTest } // trigger
}
-
+
def run { Object57_2.run } // trigger
}
trait Trait60_1 {
-
+
object Object57_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1343,16 +1343,16 @@ trait Trait60_1 {
def run { runTest } // trigger
}
-
+
def run { Object57_2.run }
}
class Class62_1 {
-
+
trait Trait61_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1376,16 +1376,16 @@ class Class62_1 {
def run { runTest }
}
-
+
def run { (new Trait61_2 {}).run }
}
object Object63_1 {
-
+
trait Trait61_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1409,16 +1409,16 @@ object Object63_1 {
def run { runTest }
}
-
+
def run { (new Trait61_2 {}).run } // trigger
}
trait Trait64_1 {
-
+
trait Trait61_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1442,16 +1442,16 @@ trait Trait64_1 {
def run { runTest }
}
-
+
def run { (new Trait61_2 {}).run }
}
class Class66_1 {
-
+
def method65_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1475,16 +1475,16 @@ class Class66_1 {
runTest // trigger
}
-
+
def run { method65_2 }
}
object Object67_1 {
-
+
def method65_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1508,16 +1508,16 @@ object Object67_1 {
runTest // trigger
}
-
+
def run { method65_2 } // trigger
}
trait Trait68_1 {
-
+
def method65_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1541,16 +1541,16 @@ trait Trait68_1 {
runTest // trigger
}
-
+
def run { method65_2 }
}
class Class70_1 {
-
+
private def method69_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1574,16 +1574,16 @@ class Class70_1 {
runTest // trigger
}
-
+
def run { method69_2 }
}
object Object71_1 {
-
+
private def method69_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1607,16 +1607,16 @@ object Object71_1 {
runTest // trigger
}
-
+
def run { method69_2 } // trigger
}
trait Trait72_1 {
-
+
private def method69_2 {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1640,16 +1640,16 @@ trait Trait72_1 {
runTest // trigger
}
-
+
def run { method69_2 }
}
class Class74_1 {
-
+
val fun73_2 = () => {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1673,16 +1673,16 @@ class Class74_1 {
runTest // trigger
}
-
+
def run { fun73_2() }
}
object Object75_1 {
-
+
val fun73_2 = () => {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1706,16 +1706,16 @@ object Object75_1 {
runTest // trigger
}
-
+
def run { fun73_2() } // trigger
}
trait Trait76_1 {
-
+
val fun73_2 = () => {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1739,17 +1739,17 @@ trait Trait76_1 {
runTest // trigger
}
-
+
def run { fun73_2() }
}
class Class78_1 {
-
+
class Class77_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1772,19 +1772,19 @@ class Class78_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class77_2) }
}
object Object79_1 {
-
+
class Class77_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1807,19 +1807,19 @@ object Object79_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class77_2) } // trigger
}
trait Trait80_1 {
-
+
class Class77_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1842,19 +1842,19 @@ trait Trait80_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Class77_2) }
}
class Class82_1 {
-
+
trait Trait81_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1877,19 +1877,19 @@ class Class82_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait81_2 {}) }
}
object Object83_1 {
-
+
trait Trait81_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1912,19 +1912,19 @@ object Object83_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait81_2 {}) } // trigger
}
trait Trait84_1 {
-
+
trait Trait81_2 {
- { // in primary constructor
+ { // in primary constructor
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1947,18 +1947,18 @@ trait Trait84_1 {
}
runTest // trigger
- }
+ }
}
-
+
def run { (new Trait81_2 {}) }
}
class Class90_1 {
-
+
val value89_2 = {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -1982,16 +1982,16 @@ class Class90_1 {
runTest // trigger
}
-
+
def run { value89_2 }
}
trait Trait92_1 {
-
+
val value89_2 = {
@volatile var ObjCounter = 0
-
+
object Obj { ObjCounter += 1}
def multiThreadedAccess() {
@@ -2015,7 +2015,7 @@ trait Trait92_1 {
runTest // trigger
}
-
+
def run { value89_2 }
}
diff --git a/test/files/run/io-position.scala b/test/files/run/io-position.scala
index 7e570ea29e..1093704fa4 100644
--- a/test/files/run/io-position.scala
+++ b/test/files/run/io-position.scala
@@ -1,13 +1,13 @@
object Test {
Console.setErr(Console.out)
-
- def main(args: Array[String]): Unit = {
+
+ def main(args: Array[String]): Unit = {
try {
xml.parsing.ConstructingParser.fromSource(io.Source.fromString("<foo>"), false).document()
} catch {
case e:Exception => println(e.getMessage)
}
- }
+ }
-}
+}
diff --git a/test/files/run/iq.scala b/test/files/run/iq.scala
index 31859cf867..e5f9e4705a 100644
--- a/test/files/run/iq.scala
+++ b/test/files/run/iq.scala
@@ -9,8 +9,8 @@ object iq {
/* Create an empty queue. */
val q: Queue[Int] = Queue.empty
- /* Test isEmpty.
- * Expected: Empty
+ /* Test isEmpty.
+ * Expected: Empty
*/
if (q.isEmpty) {
Console.println("Empty")
@@ -20,14 +20,14 @@ object iq {
//val q2 = q + 42 + 0 // deprecated
val q2 = q.enqueue(42).enqueue(0)
- /* Test is empty and dequeue.
+ /* Test is empty and dequeue.
* Expected: Head: 42
*/
val q4 =
if (q2.isEmpty) {
Console.println("Empty")
q2
- }
+ }
else {
val (head, q3) = q2.dequeue
Console.println("Head: " + head)
@@ -36,8 +36,8 @@ object iq {
/* Test sequence enqueing. */
val q5: Queue[Any] = q4.enqueue(List(1,2,3,4,5,6,7,8,9))
- /* Test toString.
- * Expected: Head: q5: Queue(0,1,2,3,4,5,6,7,8,9)
+ /* Test toString.
+ * Expected: Head: q5: Queue(0,1,2,3,4,5,6,7,8,9)
*/
Console.println("q5: " + q5)
/* Test apply
@@ -59,7 +59,7 @@ object iq {
//val q8 = q7 + 10 + 11 //deprecated
val q8 = q7.enqueue(10).enqueue(11)
/* Test dequeu
- * Expected: q8: Queue(2,3,4,5,6,7,8,9,10,11)
+ * Expected: q8: Queue(2,3,4,5,6,7,8,9,10,11)
*/
Console.println("q8: " + q8)
val q9 = Queue(2,3,4,5,6,7,8,9,10,11)
@@ -70,14 +70,14 @@ object iq {
Console.println("q8 == q9: " + (q8 == q9))
/* Testing elements
- * Expected: Elements: 1 2 3 4 5 6 7 8 9
+ * Expected: Elements: 1 2 3 4 5 6 7 8 9
*/
- Console.print("Elements: ");
+ Console.print("Elements: ");
q6.iterator.foreach(e => Console.print(" "+ e + " "))
- Console.println;
+ Console.println;
/* Testing mkString
- * Expected: String: <1-2-3-4-5-6-7-8-9>
+ * Expected: String: <1-2-3-4-5-6-7-8-9>
*/
Console.println("String: " + q6.mkString("<","-",">"))
@@ -89,7 +89,7 @@ object iq {
/* Testing front
* Expected: Front: 1
*/
- Console.println("Front: " + q6.front);
+ Console.println("Front: " + q6.front);
}
}
diff --git a/test/files/run/is-valid-num.scala b/test/files/run/is-valid-num.scala
index 6e423e946e..f919a21dee 100644
--- a/test/files/run/is-valid-num.scala
+++ b/test/files/run/is-valid-num.scala
@@ -1,7 +1,7 @@
object Test {
def x = BigInt("10000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000")
def y = BigDecimal("" + (Short.MaxValue + 1) + ".0")
-
+
def l1 = Int.MaxValue.toLong + 1
def l2 = Int.MinValue.toLong - 1
diff --git a/test/files/run/issue192.scala b/test/files/run/issue192.scala
index 8acd3a6345..d8db8b5816 100644
--- a/test/files/run/issue192.scala
+++ b/test/files/run/issue192.scala
@@ -1,16 +1,16 @@
object Test extends App {
-
+
def f1(p: Any{def unary_+ : Int}) = +p
def f2(p: Any{def unary_- : Int}) = -p
def f3(p: Any{def unary_~ : Int}) = ~p
def f4(p: Any{def unary_! : Boolean}) = !p
-
+
def f5(p: Any{def +(q: Int): Int}) = p + 7
def f6(p: Any{def -(q: Int): Int}) = p - 7
def f7(p: Any{def *(q: Int): Int}) = p * 7
def f8(p: Any{def /(q: Int): Int}) = p / 7
def f9(p: Any{def %(q: Int): Int}) = p % 7
-
+
def f10(p: Any{def |(q: Int): Int}) = p | 7
def f11(p: Any{def |(q: Boolean): Boolean}) = p | true
def f12(p: Any{def ^(q: Int): Int}) = p ^ 7
@@ -19,11 +19,11 @@ object Test extends App {
def f15(p: Any{def &(q: Boolean): Boolean}) = p & true
def f16(p: Any{def ||(q: Boolean): Boolean}) = p || true
def f17(p: Any{def &&(q: Boolean): Boolean}) = p && true
-
+
def f18(p: Any{def <<(q: Int): Int}) = p << 7
def f19(p: Any{def >>(q: Int): Int}) = p >> 7
def f20(p: Any{def >>>(q: Int): Int}) = p >>> 7
-
+
def f21(p: Any{def toByte: Byte}) = p.toByte
def f22(p: Any{def toShort: Short}) = p.toShort
def f23(p: Any{def toChar: Char}) = p.toChar
@@ -31,28 +31,28 @@ object Test extends App {
def f25(p: Any{def toLong: Long}) = p.toLong
def f26(p: Any{def toFloat: Float}) = p.toFloat
def f27(p: Any{def toDouble: Double}) = p.toDouble
-
+
def f28(p: Any{def ==(q: Int): Boolean}) = p == 7
def f29(p: Any{def !=(q: Int): Boolean}) = p != 7
def f30(p: Any{def ==(q: Boolean): Boolean}) = p == true
def f31(p: Any{def !=(q: Boolean): Boolean}) = p != true
-
+
def f32(p: Any{def <(q: Int): Boolean}) = p < 7
def f33(p: Any{def <=(q: Int): Boolean}) = p <= 7
def f34(p: Any{def >=(q: Int): Boolean}) = p >= 7
def f35(p: Any{def >(q: Int): Boolean}) = p > 7
-
+
print("f1 = "); println(f1(1) == +1)
print("f2 = "); println(f2(1) == -1)
print("f3 = "); println(f3(1) == ~1)
print("f4 = "); println(f4(true) == !true)
-
+
print("f5 = "); println(f5(4) == (4 + 7))
print("f6 = "); println(f6(4) == (4 - 7))
print("f7 = "); println(f7(4) == (4 * 7))
print("f8 = "); println(f8(4) == (4 / 7))
print("f9 = "); println(f9(4) == (4 % 7))
-
+
print("f10 = "); println(f10(4) == (4 | 7))
print("f11 = "); println(f11(false) == (false | true))
print("f12 = "); println(f12(4) == (4 ^ 7))
@@ -61,11 +61,11 @@ object Test extends App {
print("f15 = "); println(f15(false) == (false & true))
print("f16 = "); println(f16(false) == (false || true))
print("f17 = "); println(f17(false) == (false && true))
-
+
print("f18 = "); println(f18(4) == (4 << 7))
print("f19 = "); println(f19(-4) == (-4 >> 7))
print("f20 = "); println(f20(-4) == (-4 >>> 7))
-
+
print("f21 = "); println(f21(4.2) == (4.2.toByte))
print("f22 = "); println(f22(4.2) == (4.2.toShort))
print("f23 = "); println(f23(4.2) == (4.2.toChar))
@@ -73,17 +73,17 @@ object Test extends App {
print("f25 = "); println(f25(4.2) == (4.2.toLong))
print("f26 = "); println(f26(4.2) == (4.2.toFloat))
print("f27 = "); println(f27(4.2) == (4.2.toDouble))
-
+
print("f28 = "); println(f28(4) == (4 == 7))
print("f29 = "); println(f29(4) == (4 != 7))
print("f30 = "); println(f30(false) == (false == true))
print("f31 = "); println(f31(false) == (false != true))
-
+
print("f32 = "); println(f32(4) == (4 < 7))
print("f33 = "); println(f33(4) == (4 <= 7))
print("f34 = "); println(f34(4) == (4 >= 7))
print("f35 = "); println(f35(4) == (4 > 7))
-
+
println("ok")
-
+
}
diff --git a/test/files/run/iterator3444.scala b/test/files/run/iterator3444.scala
index 1d0713addc..2d0643bd56 100644
--- a/test/files/run/iterator3444.scala
+++ b/test/files/run/iterator3444.scala
@@ -2,22 +2,22 @@
// ticked #3444
object Test {
-
+
def main(args: Array[String]) {
val it = (1 to 12).toSeq.iterator
-
+
assert(it.next == 1)
assert(it.take(2).toList == List(2, 3))
-
+
val jt = (4 to 12).toSeq.iterator
assert(jt.next == 4)
assert(jt.drop(5).toList == List(10, 11, 12))
-
+
val kt = (1 until 10).toSeq.iterator
assert(kt.drop(50).toList == Nil)
-
+
val mt = (1 until 5).toSeq.iterator
assert(mt.take(50).toList == List(1, 2, 3, 4))
}
-
+
}
diff --git a/test/files/run/iterators.scala b/test/files/run/iterators.scala
index 60eccdc8cc..b85291cd72 100644
--- a/test/files/run/iterators.scala
+++ b/test/files/run/iterators.scala
@@ -82,16 +82,16 @@ object Test {
var xs4 = a.slice(0, 4).iterator.toList;
xs0.length + xs1.length + xs2.length + xs3.length + xs4.length
}
-
+
def check_toSeq: String =
List(1, 2, 3, 4, 5).iterator.toSeq.mkString("x")
-
+
def check_indexOf: String = {
val i = List(1, 2, 3, 4, 5).indexOf(4)
val j = List(1, 2, 3, 4, 5).indexOf(16)
"" + i + "x" + j
}
-
+
def check_findIndexOf: String = {
val i = List(1, 2, 3, 4, 5).indexWhere { x: Int => x >= 4 }
val j = List(1, 2, 3, 4, 5).indexWhere { x: Int => x >= 16 }
diff --git a/test/files/run/java-erasure.scala b/test/files/run/java-erasure.scala
index c9f9b0ad51..0441ad705b 100644
--- a/test/files/run/java-erasure.scala
+++ b/test/files/run/java-erasure.scala
@@ -3,7 +3,7 @@ object Test {
list add "a"
list add "c"
list add "b"
-
+
def main(args: Array[String]): Unit = {
println(java.util.Collections.max(list))
}
diff --git a/test/files/run/json.scala b/test/files/run/json.scala
index 8ee8c347fd..7d3b635006 100644
--- a/test/files/run/json.scala
+++ b/test/files/run/json.scala
@@ -34,7 +34,7 @@ object Test extends App {
case Some(parsed) => println("Passed parse : " + sortJSON(parsed))
}
}
-
+
// For this usage, do a raw parse (to JSONObject/JSONArray)
def printJSON(given : String, expected : JSONType) {
printJSON(given, JSON.parseRaw, expected)
@@ -89,11 +89,11 @@ object Test extends App {
// The library should recurse into arrays to find objects (ticket #2207)
printJSON("[{\"a\" : \"team\"},{\"b\" : 52}]", JSONArray(List(JSONObject(Map("a" -> "team")), JSONObject(Map("b" -> 52.0)))))
-
+
// The library should differentiate between empty maps and lists (ticket #3284)
- printJSONFull("{}", Map())
+ printJSONFull("{}", Map())
printJSONFull("[]", List())
-
+
// Lists should be returned in the same order as specified
printJSON("[4,1,3,2,6,5,8,7]", JSONArray(List[Double](4,1,3,2,6,5,8,7)))
@@ -152,7 +152,7 @@ object Test extends App {
)
)
-
+
printJSONFull(sample1, sample1Obj)
println
@@ -188,7 +188,7 @@ object Test extends App {
// from http://json.org/example.html
val sample3 = """
{"web-app": {
- "servlet": [
+ "servlet": [
{
"servlet-name": "cofaxCDS",
"servlet-class": "org.cofax.cds.CDSServlet",
@@ -244,7 +244,7 @@ object Test extends App {
{
"servlet-name": "cofaxAdmin",
"servlet-class": "org.cofax.cds.AdminServlet"},
-
+
{
"servlet-name": "fileServlet",
"servlet-class": "org.cofax.cds.FileServlet"},
@@ -271,7 +271,7 @@ object Test extends App {
"cofaxAdmin": "/admin/*",
"fileServlet": "/static/*",
"cofaxTools": "/tools/*"},
-
+
"taglib": {
"taglib-uri": "cofax.tld",
"taglib-location": "/WEB-INF/tlds/cofax.tld"}
diff --git a/test/files/run/kmpSliceSearch.scala b/test/files/run/kmpSliceSearch.scala
index e72f78bfed..0f7e052d5f 100644
--- a/test/files/run/kmpSliceSearch.scala
+++ b/test/files/run/kmpSliceSearch.scala
@@ -12,7 +12,7 @@ object Test {
}
def main(args: Array[String]) {
val rng = new scala.util.Random(java.lang.Integer.parseInt("kmp",36))
-
+
// Make sure we agree with naive implementation
for (h <- Array(2,5,1000)) {
for (i <- 0 to 100) {
@@ -38,7 +38,7 @@ object Test {
}
}
}
-
+
// Check performance^Wcorrectness of common small test cases
val haystacks = List[Seq[Int]](
Array(1,2,3,4,5,6,7,8,9,10,11,12,13,14,15),
@@ -52,8 +52,8 @@ object Test {
List(1,1,1,1,1,2),
5 to 9
)
- (haystacks zip needles) foreach {
- case (hay, nee) =>
+ (haystacks zip needles) foreach {
+ case (hay, nee) =>
println(hay.indexOfSlice(nee,2) + " " + hay.lastIndexOfSlice(nee,13))
}
}
diff --git a/test/files/run/lazy-exprs.scala b/test/files/run/lazy-exprs.scala
index 204c4b564b..fc724bd10b 100644
--- a/test/files/run/lazy-exprs.scala
+++ b/test/files/run/lazy-exprs.scala
@@ -2,7 +2,7 @@ object TestExpressions {
def patmatchScrut {
lazy val z1: Option[String] = { println("forced <z1>"); Some("lazy z1") }
-
+
val res = z1 match {
case Some(msg) => msg
case None => "failed"
@@ -17,10 +17,10 @@ object TestExpressions {
def patmatchCase {
val t: Option[String] = Some("test")
val res = t match {
- case Some(msg) =>
+ case Some(msg) =>
lazy val z1 = { println("forced <z1>"); "lazy z1" }
z1
-
+
case None => "failed"
}
print("lazy val in case: ")
@@ -36,9 +36,9 @@ object TestExpressions {
print("lazy val in case: ")
val t: Option[String] = Some("lazy Z1")
t match {
- case Some(Z1) =>
+ case Some(Z1) =>
println("ok")
-
+
case None =>
println("failed")
}
@@ -60,13 +60,13 @@ object TestExpressions {
print("lazy val in pattern: ")
val t: Option[String] = Some("LazyField")
t match {
- case Some(LazyField) =>
+ case Some(LazyField) =>
println("ok")
-
+
case None =>
println("failed")
}
- }
+ }
lazy val (x, y) = ({print("x"); "x"}, {print("y"); "y"})
def testPatLazyVal {
diff --git a/test/files/run/lazy-locals.scala b/test/files/run/lazy-locals.scala
index ba555daf95..696aeeba96 100644
--- a/test/files/run/lazy-locals.scala
+++ b/test/files/run/lazy-locals.scala
@@ -163,18 +163,18 @@ object Test extends App {
// see #1589
object NestedLazyVals {
- lazy val x = {
+ lazy val x = {
lazy val y = { println("forcing y"); 42; }
println("forcing x")
- y
+ y
}
-
+
val x1 = 5 + { lazy val y = 10 ; y }
-
+
println(x)
println(x1)
}
-
+
trait TNestedLazyVals {
lazy val x = { lazy val y = 42; y }
}
diff --git a/test/files/run/lazy-override-run.scala b/test/files/run/lazy-override-run.scala
index 6016c3c8be..d197408775 100644
--- a/test/files/run/lazy-override-run.scala
+++ b/test/files/run/lazy-override-run.scala
@@ -20,7 +20,7 @@ object Test extends App {
val b = new B
print("b.x=")
- println(b.x)
+ println(b.x)
print("b.z=")
- println(b.z)
+ println(b.z)
}
diff --git a/test/files/run/lazy-traits.scala b/test/files/run/lazy-traits.scala
index 38207672db..f04c0b8b1f 100644
--- a/test/files/run/lazy-traits.scala
+++ b/test/files/run/lazy-traits.scala
@@ -1,5 +1,5 @@
trait A {
- lazy val z1 = {
+ lazy val z1 = {
println("<forced z1>")
"lazy z1"
}
@@ -7,7 +7,7 @@ trait A {
/** Simple class which mixes in one lazy val. */
class Cls extends AnyRef with A {
- override def toString =
+ override def toString =
"z1 = " + z1
}
@@ -18,7 +18,7 @@ class Cls2 extends AnyRef with A {
"lazy z2"
}
- override def toString =
+ override def toString =
"z1 = " + z1 + " z2 = " + z2
}
@@ -34,7 +34,7 @@ class ClsB extends Object with B {
println("<forced zc1>")
"lazy zc1"
}
- override def toString =
+ override def toString =
"z1 = " + z1 + " zb1 = " + zb1 + " zc1 = " + zc1
}
@@ -73,39 +73,39 @@ class OverflownLazyFields extends Object with A {
lazy val zc30 = { println("<forced zc30>"); "lazy zc30" }
lazy val zc31 = { println("<forced zc31>"); "lazy zc31" }
- override def toString =
- "\nzc00 = " + zc00 +
- "\nzc01 = " + zc01 +
- "\nzc02 = " + zc02 +
- "\nzc03 = " + zc03 +
- "\nzc04 = " + zc04 +
- "\nzc05 = " + zc05 +
- "\nzc06 = " + zc06 +
- "\nzc07 = " + zc07 +
- "\nzc08 = " + zc08 +
- "\nzc09 = " + zc09 +
- "\nzc10 = " + zc10 +
- "\nzc11 = " + zc11 +
- "\nzc12 = " + zc12 +
- "\nzc13 = " + zc13 +
- "\nzc14 = " + zc14 +
- "\nzc15 = " + zc15 +
- "\nzc16 = " + zc16 +
- "\nzc17 = " + zc17 +
- "\nzc18 = " + zc18 +
- "\nzc19 = " + zc19 +
- "\nzc20 = " + zc20 +
- "\nzc21 = " + zc21 +
- "\nzc22 = " + zc22 +
- "\nzc23 = " + zc23 +
- "\nzc24 = " + zc24 +
- "\nzc25 = " + zc25 +
- "\nzc26 = " + zc26 +
- "\nzc27 = " + zc27 +
- "\nzc28 = " + zc28 +
- "\nzc29 = " + zc29 +
- "\nzc30 = " + zc30 +
- "\nzc31 = " + zc31 +
+ override def toString =
+ "\nzc00 = " + zc00 +
+ "\nzc01 = " + zc01 +
+ "\nzc02 = " + zc02 +
+ "\nzc03 = " + zc03 +
+ "\nzc04 = " + zc04 +
+ "\nzc05 = " + zc05 +
+ "\nzc06 = " + zc06 +
+ "\nzc07 = " + zc07 +
+ "\nzc08 = " + zc08 +
+ "\nzc09 = " + zc09 +
+ "\nzc10 = " + zc10 +
+ "\nzc11 = " + zc11 +
+ "\nzc12 = " + zc12 +
+ "\nzc13 = " + zc13 +
+ "\nzc14 = " + zc14 +
+ "\nzc15 = " + zc15 +
+ "\nzc16 = " + zc16 +
+ "\nzc17 = " + zc17 +
+ "\nzc18 = " + zc18 +
+ "\nzc19 = " + zc19 +
+ "\nzc20 = " + zc20 +
+ "\nzc21 = " + zc21 +
+ "\nzc22 = " + zc22 +
+ "\nzc23 = " + zc23 +
+ "\nzc24 = " + zc24 +
+ "\nzc25 = " + zc25 +
+ "\nzc26 = " + zc26 +
+ "\nzc27 = " + zc27 +
+ "\nzc28 = " + zc28 +
+ "\nzc29 = " + zc29 +
+ "\nzc30 = " + zc30 +
+ "\nzc31 = " + zc31 +
"\nz1 = " + z1
}
diff --git a/test/files/run/lift-and-unlift.scala b/test/files/run/lift-and-unlift.scala
index 5a59f63ae4..b944c70155 100644
--- a/test/files/run/lift-and-unlift.scala
+++ b/test/files/run/lift-and-unlift.scala
@@ -5,21 +5,21 @@ object Test {
def evens2: PartialFunction[Int, Int] = {
case x if x % 2 == 0 => x
}
-
+
def main(args: Array[String]): Unit = {
val f1 = evens1 _
val f2 = evens2.lift
-
+
assert(1 to 10 forall (x => f1(x) == f2(x)))
-
+
val f3 = unlift(f1)
val f4 = unlift(f2)
-
+
assert(1 to 10 forall { x =>
if (!f3.isDefinedAt(x)) !f4.isDefinedAt(x)
else f3(x) == f4(x)
})
-
+
assert(f1 eq f3.lift)
// Hmm, why is this not true:
// assert(f2 eq f4.lift)
diff --git a/test/files/run/lists-run.scala b/test/files/run/lists-run.scala
index 13fca22982..ccfe5bc260 100644
--- a/test/files/run/lists-run.scala
+++ b/test/files/run/lists-run.scala
@@ -4,7 +4,7 @@
*/
object Test {
def main(args: Array[String]) {
- Test_multiset.run() // multiset operations: union, intersect, diff
+ Test_multiset.run() // multiset operations: union, intersect, diff
Test1.run() //count, exists, filter, ..
Test2.run() //#468
Test3.run() //#1691
@@ -54,7 +54,7 @@ object Test_multiset {
assert(List(3, 2) == (vs diff xs), "vs_diff_xs")
assert(isSubListOf(xs filterNot (vs contains), xs diff vs), "xs_subset_vs")
- // tests adapted from Thomas Jung
+ // tests adapted from Thomas Jung
assert({
def sort(zs: List[Int]) = zs sortWith ( _ > _ )
sort(xs intersect ys) == sort(ys intersect xs)
@@ -62,7 +62,7 @@ object Test_multiset {
assert({
def cardinality[A](zs: List[A], e: A): Int = zs count (e == _)
val intersection = xs intersect ys
- xs forall (e => cardinality(intersection, e) == (cardinality(xs, e)
+ xs forall (e => cardinality(intersection, e) == (cardinality(xs, e)
min cardinality(ys, e)))
}, "obey min cardinality")
assert({
@@ -133,7 +133,7 @@ object Test2 {
def run() {
val xs1 = List(1, 2, 3)
val xs2 = List(0)
-
+
val ys1 = xs1 ::: List(4)
assert(List(1, 2, 3, 4) == ys1, "check_:::")
diff --git a/test/files/run/manifests.scala b/test/files/run/manifests.scala
index ed6efab70d..1da06b8aee 100644
--- a/test/files/run/manifests.scala
+++ b/test/files/run/manifests.scala
@@ -4,15 +4,15 @@ object Test
val CO, IN, CONTRA = Value
}
import Variances.{ CO, IN, CONTRA }
-
+
object SubtypeRelationship extends Enumeration {
val NONE, SAME, SUB, SUPER = Value
}
import SubtypeRelationship.{ NONE, SAME, SUB, SUPER }
-
+
class VarianceTester[T, U, CC[_]](expected: Variances.Value)(
implicit ev1: Manifest[T], ev2: Manifest[U], ev3: Manifest[CC[T]], ev4: Manifest[CC[U]]) {
-
+
def elements = List(ev1 <:< ev2, ev2 <:< ev1)
def containers = List(ev3 <:< ev4, ev4 <:< ev3)
@@ -20,13 +20,13 @@ object Test
def isSame = typeCompare[T, U] == SAME
def isSub = typeCompare[T, U] == SUB
def isSuper = typeCompare[T, U] == SUPER
-
+
def showsCovariance = (elements == containers)
def showsContravariance = (elements == containers.reverse)
def showsInvariance = containers forall (_ == isSame)
def allContainerVariances = List(showsCovariance, showsInvariance, showsContravariance)
-
+
def showsExpectedVariance =
if (isUnrelated) allContainerVariances forall (_ == false)
else if (isSame) allContainerVariances forall (_ == true)
@@ -36,55 +36,55 @@ object Test
case CONTRA => showsContravariance && !showsCovariance && !showsInvariance
}
}
-
+
def showsCovariance[T, U, CC[_]](implicit ev1: Manifest[T], ev2: Manifest[U], ev3: Manifest[CC[T]], ev4: Manifest[CC[U]]) =
new VarianceTester[T, U, CC](CO) showsExpectedVariance
def showsInvariance[T, U, CC[_]](implicit ev1: Manifest[T], ev2: Manifest[U], ev3: Manifest[CC[T]], ev4: Manifest[CC[U]]) =
new VarianceTester[T, U, CC](IN) showsExpectedVariance
-
+
def showsContravariance[T, U, CC[_]](implicit ev1: Manifest[T], ev2: Manifest[U], ev3: Manifest[CC[T]], ev4: Manifest[CC[U]]) =
new VarianceTester[T, U, CC](CONTRA) showsExpectedVariance
-
+
def typeCompare[T, U](implicit ev1: Manifest[T], ev2: Manifest[U]) = (ev1 <:< ev2, ev2 <:< ev1) match {
case (true, true) => SAME
case (true, false) => SUB
case (false, true) => SUPER
case (false, false) => NONE
}
-
+
def assertAnyRef[T: Manifest] = List(
manifest[T] <:< manifest[Any],
manifest[T] <:< manifest[AnyRef],
!(manifest[T] <:< manifest[AnyVal])
) foreach (assert(_, "assertAnyRef"))
-
+
def assertAnyVal[T: Manifest] = List(
manifest[T] <:< manifest[Any],
!(manifest[T] <:< manifest[AnyRef]),
manifest[T] <:< manifest[AnyVal]
) foreach (assert(_, "assertAnyVal"))
-
+
def assertSameType[T: Manifest, U: Manifest] = assert(typeCompare[T, U] == SAME, "assertSameType")
def assertSuperType[T: Manifest, U: Manifest] = assert(typeCompare[T, U] == SUPER, "assertSuperType")
def assertSubType[T: Manifest, U: Manifest] = assert(typeCompare[T, U] == SUB, "assertSubType")
def assertNoRelationship[T: Manifest, U: Manifest] = assert(typeCompare[T, U] == NONE, "assertNoRelationship")
-
+
def testVariancesVia[T: Manifest, U: Manifest] = assert(
- typeCompare[T, U] == SUB &&
+ typeCompare[T, U] == SUB &&
showsCovariance[T, U, List] &&
showsInvariance[T, U, Set],
"testVariancesVia"
)
-
+
def runAllTests = {
assertAnyVal[AnyVal]
assertAnyVal[Unit]
- assertAnyVal[Int]
- assertAnyVal[Double]
+ assertAnyVal[Int]
+ assertAnyVal[Double]
assertAnyVal[Boolean]
assertAnyVal[Char]
-
+
assertAnyRef[AnyRef]
assertAnyRef[java.lang.Object]
assertAnyRef[java.lang.Integer]
@@ -94,7 +94,7 @@ object Test
assertAnyRef[String]
assertAnyRef[scala.List[String]]
assertAnyRef[scala.List[_]]
-
+
// variance doesn't work yet
// testVariancesVia[String, Any]
// testVariancesVia[String, AnyRef]
@@ -102,11 +102,11 @@ object Test
assertSubType[List[String], List[Any]]
assertSubType[List[String], List[AnyRef]]
assertNoRelationship[List[String], List[AnyVal]]
-
+
assertSubType[List[Int], List[Any]]
assertSubType[List[Int], List[AnyVal]]
assertNoRelationship[List[Int], List[AnyRef]]
-
+
// Nothing
assertSubType[Nothing, Any]
assertSubType[Nothing, AnyVal]
@@ -115,7 +115,7 @@ object Test
assertSubType[Nothing, List[String]]
assertSubType[Nothing, Null]
assertSameType[Nothing, Nothing]
-
+
// Null
assertSubType[Null, Any]
assertNoRelationship[Null, AnyVal]
@@ -124,7 +124,7 @@ object Test
assertSubType[Null, List[String]]
assertSameType[Null, Null]
assertSuperType[Null, Nothing]
-
+
// Any
assertSameType[Any, Any]
assertSuperType[Any, AnyVal]
@@ -133,7 +133,7 @@ object Test
assertSuperType[Any, List[String]]
assertSuperType[Any, Null]
assertSuperType[Any, Nothing]
-
+
// Misc unrelated types
assertNoRelationship[Unit, AnyRef]
assertNoRelationship[Unit, Int]
diff --git a/test/files/run/mapConserve.scala b/test/files/run/mapConserve.scala
index a285113b11..013095b1de 100644
--- a/test/files/run/mapConserve.scala
+++ b/test/files/run/mapConserve.scala
@@ -4,8 +4,8 @@ import scala.collection.mutable.ListBuffer
object Test {
val maxListLength = 7 // up to 16, but larger is slower
var testCount = 0
-
- def checkStackOverflow() = {
+
+ def checkStackOverflow() = {
var xs: List[String] = Nil
for (i <- 0 until 250000)
xs = "X" :: xs
@@ -47,7 +47,7 @@ object Test {
// Behaves like existing mapConserve with respect to eq
checkBehaviourUnchanged(data, data mapConserve lastHexDigit, data mapConserve lastHexDigit)
}
-
+
checkStackOverflow();
}
} \ No newline at end of file
diff --git a/test/files/run/mapValues.scala b/test/files/run/mapValues.scala
index d3266bd18f..bd1794bc51 100644
--- a/test/files/run/mapValues.scala
+++ b/test/files/run/mapValues.scala
@@ -1,7 +1,7 @@
object Test {
val m = Map(1 -> 1, 2 -> 2)
val mv = (m mapValues identity) - 1
-
+
def main(args: Array[String]): Unit = {
assert(mv.size == 1)
}
diff --git a/test/files/run/map_java_conversions.scala b/test/files/run/map_java_conversions.scala
index a41fae3695..7714b2cc74 100644
--- a/test/files/run/map_java_conversions.scala
+++ b/test/files/run/map_java_conversions.scala
@@ -4,20 +4,20 @@
object Test {
-
+
def main(args: Array[String]) {
import collection.JavaConversions._
-
+
test(new java.util.HashMap[String, String])
test(new java.util.Properties)
testConcMap
}
-
+
def testConcMap {
import collection.JavaConversions._
-
+
val concMap = new java.util.concurrent.ConcurrentHashMap[String, String]
-
+
test(concMap)
val cmap = asScalaConcurrentMap(concMap)
cmap.putIfAbsent("absentKey", "absentValue")
@@ -26,31 +26,31 @@ object Test {
assert(cmap.replace("absentKey", "newAbsentValue") == Some("absentValue"))
assert(cmap.replace("absentKey", "newAbsentValue", ".......") == true)
}
-
+
def test(m: collection.mutable.Map[String, String]) {
m.clear
assert(m.size == 0)
-
+
m.put("key", "value")
assert(m.size == 1)
-
+
assert(m.put("key", "anotherValue") == Some("value"))
assert(m.put("key2", "value2") == None)
assert(m.size == 2)
-
+
m += (("key3", "value3"))
assert(m.size == 3)
-
+
m -= "key2"
assert(m.size == 2)
assert(m.nonEmpty)
assert(m.remove("key") == Some("anotherValue"))
-
+
m.clear
for (i <- 0 until 10) m += (("key" + i, "value" + i))
for ((k, v) <- m) assert(k.startsWith("key"))
}
-
+
}
diff --git a/test/files/run/matchbytes.scala b/test/files/run/matchbytes.scala
index f2cea06eb3..7190886bab 100644
--- a/test/files/run/matchbytes.scala
+++ b/test/files/run/matchbytes.scala
@@ -4,4 +4,4 @@ object Test extends App{
case 1 => println(1);
case _ => println("????");
}
-}
+}
diff --git a/test/files/run/matchintasany.scala b/test/files/run/matchintasany.scala
index 03f6ca2a84..c6764b31b9 100644
--- a/test/files/run/matchintasany.scala
+++ b/test/files/run/matchintasany.scala
@@ -5,4 +5,4 @@ object Test extends App{
case 1L => println(1);
case _ => println("????");
}
-}
+}
diff --git a/test/files/run/matchnull.scala b/test/files/run/matchnull.scala
index 2cc8550d47..cfb3049239 100644
--- a/test/files/run/matchnull.scala
+++ b/test/files/run/matchnull.scala
@@ -3,7 +3,7 @@ object Test
def f1 = null match { case x: AnyRef => 1 case _ => -1 }
def f2(x: Any) = x match { case 52 => 1 ; case null => -1 ; case _ => 0 }
def f3(x: AnyRef) = x match { case x: String => 1 ; case List(_) => 0 ; case null => -1 ; case _ => -2 }
-
+
def main(args: Array[String]): Unit = {
println(f1)
println(f2(null))
diff --git a/test/files/run/misc.scala b/test/files/run/misc.scala
index 2ae76bd968..139d2d70f7 100644
--- a/test/files/run/misc.scala
+++ b/test/files/run/misc.scala
@@ -60,7 +60,7 @@ object Test {
Console.println;
val x = 13;
x;
- // !!! why are DefDef replaced by Block(Tree[0])? we should use Empty!
+ // !!! why are DefDef replaced by Block(Tree[0])? we should use Empty!
def f = 19;
f;
def f0() = 11;
diff --git a/test/files/run/missingparams.scala b/test/files/run/missingparams.scala
index fbc4d2a4f7..e9b1d27d68 100644
--- a/test/files/run/missingparams.scala
+++ b/test/files/run/missingparams.scala
@@ -6,8 +6,8 @@ final class Foo(val x: Int) {
// test that the closure elimination is not wrongly replacing
// 'that' by 'this'
- def intersect(that: Foo) =
- filter { dummy =>
+ def intersect(that: Foo) =
+ filter { dummy =>
// x // dummy
that.x > 0
}
diff --git a/test/files/run/mock.scala b/test/files/run/mock.scala
index e414e51e2d..8778e20ef5 100644
--- a/test/files/run/mock.scala
+++ b/test/files/run/mock.scala
@@ -5,11 +5,11 @@ import java.io.Closeable
object Test {
// It'd be really nice about now if functions had a common parent.
implicit def interfaceify(x: AnyRef): UniversalFn = UniversalFn(x)
-
+
def runner(x: Runnable) = x.run()
def caller[T](x: Callable[T]): T = x.call()
def closer(x: Closeable) = x.close()
-
+
def main(args: Array[String]): Unit = {
var counter = 0
val closure = () => {
@@ -21,7 +21,7 @@ object Test {
val int1 = closure.as[Runnable]
val int2 = closure.as[Callable[Int]]
val int3 = closure.as[Closeable]
-
+
runner(int1)
caller(int2)
closer(int3)
diff --git a/test/files/run/nodebuffer-array.scala b/test/files/run/nodebuffer-array.scala
index f9cfbc50df..4e1ffe1e5e 100644
--- a/test/files/run/nodebuffer-array.scala
+++ b/test/files/run/nodebuffer-array.scala
@@ -1,5 +1,5 @@
object Test {
-
+
def f(s: String) = {
<entry>
{
@@ -8,7 +8,7 @@ object Test {
}
</entry>
}
-
+
def main(args: Array[String]): Unit = {
println(f("a,b,c"))
}
diff --git a/test/files/run/null-and-intersect.scala b/test/files/run/null-and-intersect.scala
index 7266dabe6d..1437fa4b25 100644
--- a/test/files/run/null-and-intersect.scala
+++ b/test/files/run/null-and-intersect.scala
@@ -2,7 +2,7 @@ object Test {
trait Immortal
class Bippy extends Immutable with Immortal
class Boppy extends Immutable
-
+
def f[T](x: Traversable[T]) = x match {
case _: Map[_, _] => 3
case _: Seq[_] => 2
@@ -23,10 +23,10 @@ object Test {
println(f(Seq(1)))
println(f(Map(1 -> 2)))
println(f(null))
-
+
println(g(new Bippy))
println(g(null))
-
+
println(h(new Bippy))
println(h(new Boppy))
println(h(null))
diff --git a/test/files/run/null-hash.scala b/test/files/run/null-hash.scala
index 9b1f28b083..abf15e8166 100644
--- a/test/files/run/null-hash.scala
+++ b/test/files/run/null-hash.scala
@@ -2,7 +2,7 @@ object Test {
def f1 = List(5, 10, null: String).##
def f2(x: Any) = x.##
def f3 = ((55, "abc", null: List[Int])).##
-
+
def main(args: Array[String]): Unit = {
f1
f2(null)
diff --git a/test/files/run/number-parsing.scala b/test/files/run/number-parsing.scala
index ad1481063e..21551a3a07 100644
--- a/test/files/run/number-parsing.scala
+++ b/test/files/run/number-parsing.scala
@@ -2,12 +2,12 @@ object Test {
def numTests() = {
val MinusZero = Float.box(-0.0f)
val PlusZero = Float.box(0.0f)
-
+
assert(PlusZero match { case MinusZero => false ; case _ => true })
assert(MinusZero match { case PlusZero => false ; case _ => true })
assert((MinusZero: scala.Float) == (PlusZero: scala.Float))
assert(!(MinusZero equals PlusZero))
-
+
List(
-5f.max(2) ,
-5f max 2 ,
diff --git a/test/files/run/numbereq.scala b/test/files/run/numbereq.scala
index b07c83dc3e..77a217df36 100644
--- a/test/files/run/numbereq.scala
+++ b/test/files/run/numbereq.scala
@@ -13,25 +13,25 @@ object Test {
if (x >= Byte.MinValue && x <= Byte.MaxValue) List(new java.lang.Byte(x.toByte)) else Nil,
if (x >= Char.MinValue && x <= Char.MaxValue) List(new java.lang.Character(x.toChar)) else Nil
).flatten
-
+
base ::: extras
}
-
-
+
+
def main(args: Array[String]): Unit = {
val ints = (0 to 15).toList map (Short.MinValue >> _)
val ints2 = ints map (x => -x)
val ints3 = ints map (_ + 1)
val ints4 = ints2 map (_ - 1)
-
+
val setneg1 = ints map mkNumbers
val setneg2 = ints3 map mkNumbers
val setpos1 = ints2 map mkNumbers
val setpos2 = ints4 map mkNumbers
val zero = mkNumbers(0)
-
- val sets = setneg1 ++ setneg2 ++ List(zero) ++ setpos1 ++ setpos2
-
+
+ val sets = setneg1 ++ setneg2 ++ List(zero) ++ setpos1 ++ setpos2
+
for (set <- sets ; x <- set ; y <- set) {
// println("'%s' == '%s' (%s == %s) (%s == %s)".format(x, y, x.hashCode, y.hashCode, x.##, y.##))
assert(x == y, "%s/%s != %s/%s".format(x, x.getClass, y, y.getClass))
diff --git a/test/files/run/origins.scala b/test/files/run/origins.scala
index 4c98e7a66c..ab873bca89 100644
--- a/test/files/run/origins.scala
+++ b/test/files/run/origins.scala
@@ -14,7 +14,7 @@ object Test {
def f1() = 1 to 5 map boop
def f2() = 1 to 10 map boop
def f3() = 1 to 50 map boop
-
+
def main(args: Array[String]): Unit = {
f1() ; f2() ; f3()
}
diff --git a/test/files/run/packrat1.scala b/test/files/run/packrat1.scala
index 31a1ea55e5..b5a4687378 100644
--- a/test/files/run/packrat1.scala
+++ b/test/files/run/packrat1.scala
@@ -21,15 +21,15 @@ object Test extends App{
}
object grammars extends StandardTokenParsers with PackratParsers{
-
+
def extractResult(r : ParseResult[_]) = r match {
case Success(a,_) => a
case NoSuccess(a,_) => a
}
-
+
lexical.delimiters ++= List("+","-","*","/","(",")")
lexical.reserved ++= List("Hello","World")
-
+
/****
* term = term + fact | term - fact | fact
* fact = fact * num | fact / num | num
@@ -39,7 +39,7 @@ object grammars extends StandardTokenParsers with PackratParsers{
val term: PackratParser[Int] = (term~("+"~>fact) ^^ {case x~y => x+y}
|term~("-"~>fact) ^^ {case x~y => x-y}
|fact)
-
+
val fact: PackratParser[Int] = (fact~("*"~>numericLit) ^^ {case x~y => x*y.toInt}
|fact~("/"~>numericLit) ^^ {case x~y => x/y.toInt}
|"("~>term<~")"
diff --git a/test/files/run/packrat2.scala b/test/files/run/packrat2.scala
index b91a2eae46..f55021a6a8 100644
--- a/test/files/run/packrat2.scala
+++ b/test/files/run/packrat2.scala
@@ -22,15 +22,15 @@ object Test extends App{
}
object grammars2 extends StandardTokenParsers with PackratParsers{
-
+
def extractResult(r : ParseResult[_]) = r match{
case Success(a,_) => a
case NoSuccess(a,_) => a
}
-
+
lexical.delimiters ++= List("+","-","*","/","(",")")
lexical.reserved ++= List("Hello","World")
-
+
/*
* exp = sum | prod | num
* sum = exp ~ "+" ~ num
@@ -40,18 +40,18 @@ object grammars2 extends StandardTokenParsers with PackratParsers{
val exp : PackratParser[Int] = sum | prod | numericLit ^^{_.toInt} | "("~>exp<~")"
val sum : PackratParser[Int] = exp~("+"~>exp) ^^ {case x~y => x+y}
val prod: PackratParser[Int] = exp~("*"~>(numericLit ^^{_.toInt} | exp)) ^^ {case x~y => x*y}
-
-
+
+
/* lexical.reserved ++= List("a","b", "c")
val a : PackratParser[Any] = numericLit^^{x => primeFactors(x.toInt)}
val b : PackratParser[Any] = memo("b")
val c : PackratParser[Any] = memo("c")
- val AnBnCn : PackratParser[Any] =
+ val AnBnCn : PackratParser[Any] =
parseButDontEat(repMany1(a,b))~not(b)~>rep1(a)~repMany1(b,c)// ^^{case x~y => x:::y}
//val c : PackratParser[Any] = parseButDontEat(a)~a~a
//println(c((new PackratReader(new lexical.Scanner("45 24")))))
val r = new PackratReader(new lexical.Scanner("45 b c"))
println(AnBnCn(r))
println(r.getCache.size)
-*/
+*/
}
diff --git a/test/files/run/packrat3.scala b/test/files/run/packrat3.scala
index 8eab8ec6d0..216ef8f0af 100644
--- a/test/files/run/packrat3.scala
+++ b/test/files/run/packrat3.scala
@@ -24,28 +24,28 @@ object Test {
}
object grammars3 extends StandardTokenParsers with PackratParsers {
-
+
def extractResult(r: ParseResult[_]) = r match {
case Success(a,_) => a
case NoSuccess(a,_) => a
}
-
+
lexical.reserved ++= List("a","b", "c")
val a: PackratParser[Any] = memo("a")
val b: PackratParser[Any] = memo("b")
val c: PackratParser[Any] = memo("c")
- val AnBnCn: PackratParser[Any] =
+ val AnBnCn: PackratParser[Any] =
guard(repMany1(a,b) ~ not(b)) ~ rep1(a) ~ repMany1(b,c)// ^^{case x~y => x:::y}
- private def repMany[T](p: => Parser[T], q: => Parser[T]): Parser[List[T]] =
+ private def repMany[T](p: => Parser[T], q: => Parser[T]): Parser[List[T]] =
( p~repMany(p,q)~q ^^ {case x~xs~y => x::xs:::(y::Nil)}
| success(Nil)
)
- def repMany1[T](p: => Parser[T], q: => Parser[T]): Parser[List[T]] =
+ def repMany1[T](p: => Parser[T], q: => Parser[T]): Parser[List[T]] =
p~opt(repMany(p,q))~q ^^ {case x~Some(xs)~y => x::xs:::(y::Nil)}
-}
+}
diff --git a/test/files/run/parmap-ops.scala b/test/files/run/parmap-ops.scala
index 01972174f6..31828d9522 100644
--- a/test/files/run/parmap-ops.scala
+++ b/test/files/run/parmap-ops.scala
@@ -5,10 +5,10 @@ import collection._
object Test {
-
+
def main(args: Array[String]) {
val gm: GenMap[Int, Int] = GenMap(0 -> 0, 1 -> 1).par
-
+
// ops
assert(gm.isDefinedAt(1))
assert(gm.contains(1))
@@ -25,11 +25,11 @@ object Test {
} catch {
case e: NoSuchElementException => // ok
}
-
+
assert(gm.filterKeys(_ % 2 == 0)(0) == 0)
assert(gm.filterKeys(_ % 2 == 0).get(1) == None)
assert(gm.mapValues(_ + 1)(0) == 1)
-
+
// with defaults
val pm = parallel.mutable.ParMap(0 -> 0, 1 -> 1)
val dm = pm.withDefault(x => -x)
@@ -41,12 +41,12 @@ object Test {
assert(dm(3) == 3)
assert(pm(3) == 3)
assert(dm(4) == -4)
-
+
val imdm = parallel.immutable.ParMap(0 -> 0, 1 -> 1).withDefault(x => -x)
assert(imdm(0) == 0)
assert(imdm(1) == 1)
assert(imdm(2) == -2)
assert(imdm.updated(2, 2) == parallel.ParMap(0 -> 0, 1 -> 1, 2 -> 2))
}
-
+
}
diff --git a/test/files/run/patch-boundary.scala b/test/files/run/patch-boundary.scala
index ed1a0e9fc1..8381956859 100644
--- a/test/files/run/patch-boundary.scala
+++ b/test/files/run/patch-boundary.scala
@@ -1,8 +1,8 @@
object Test {
def f = collection.mutable.ArrayBuffer(1, 2, 3, 4, 5, 6, 7, 8)
def g = f.patch(4, List(1, 2), 10)
-
+
def main(args: Array[String]): Unit = {
- assert(g.size == 6)
+ assert(g.size == 6)
}
}
diff --git a/test/files/run/patmat-exprs.scala b/test/files/run/patmat-exprs.scala
index f502a14832..dfc78e2ca5 100644
--- a/test/files/run/patmat-exprs.scala
+++ b/test/files/run/patmat-exprs.scala
@@ -37,7 +37,7 @@ trait Pattern {
//
// type Numeric[T]
// import java.io.Serializable
- //
+ //
// implicit def compat27a[T](x: Iterable[T]) = new {
// def iterator: Iterator[T] = x.elements
// def sum: Int = 5
@@ -278,8 +278,8 @@ trait Pattern {
case Mul(Mul(y, Const(z)), Const(x)) => Mul(const(num.mul(x, z)), y)
case Const(x) if x == num.one => One[T]
- case Const(x) if x == num.zero => Zero[T]
-
+ case Const(x) if x == num.zero => Zero[T]
+
case Sub(x, Neg(y)) => Add(List(x, y))
case Sub(Neg(x), y) => Neg(Add(List(x, y)))
case Neg(Neg(x)) => x
diff --git a/test/files/run/patmat-seqs.scala b/test/files/run/patmat-seqs.scala
index b5c47b4b4b..e23711697c 100644
--- a/test/files/run/patmat-seqs.scala
+++ b/test/files/run/patmat-seqs.scala
@@ -7,14 +7,14 @@ object Test {
case Seq(_, _, _, _, _, x: String) => "ss6"
case _ => "d"
}
-
+
def f2(x: Any) = x match {
case Seq("a", "b", _*) => "s2"
case Seq(1, _*) => "s1"
case Seq(5, 6, 7, _*) => "s3"
case _ => "d"
}
-
+
def main(args: Array[String]): Unit = {
val xs1 = List(
List(1,2,3),
@@ -24,9 +24,9 @@ object Test {
Seq(1, 2, 3, 4, 5, "abcd"),
"abc"
) map f1
-
+
xs1 foreach println
-
+
val xs2 = List(
Seq(5, 6, 7),
Seq(5, 6, 7, 8, 9),
@@ -36,7 +36,7 @@ object Test {
Nil,
5
) map f2
-
+
xs2 foreach println
}
}
diff --git a/test/files/run/patmatnew.scala b/test/files/run/patmatnew.scala
index 9e91a48258..a6f8199457 100644
--- a/test/files/run/patmatnew.scala
+++ b/test/files/run/patmatnew.scala
@@ -251,7 +251,7 @@ object Test {
}
// (not regular) fancy guards / bug#644
- object TestSequence06 {
+ object TestSequence06 {
case class A(i: Any)
@@ -447,7 +447,7 @@ object Test {
object Get extends Sync
var ps: PartialFunction[Any, Any] = {
- case Get(y) if y > 4 => // y gets a wildcard type for some reason?! hack
+ case Get(y) if y > 4 => // y gets a wildcard type for some reason?! hack
}
}
def run() {
diff --git a/test/files/run/pc-conversions.scala b/test/files/run/pc-conversions.scala
index 6be0f99355..60ee59c3c4 100644
--- a/test/files/run/pc-conversions.scala
+++ b/test/files/run/pc-conversions.scala
@@ -5,11 +5,11 @@ import collection._
// test conversions between collections
object Test {
-
+
def main(args: Array[String]) {
testConversions
}
-
+
def testConversions {
// seq conversions
assertSeq(parallel.mutable.ParArray(1, 2, 3))
@@ -18,7 +18,7 @@ object Test {
assertSeq(parallel.immutable.ParRange(1, 50, 1, false))
assertSeq(parallel.immutable.ParHashMap(1 -> 2, 2 -> 4))
assertSeq(parallel.immutable.ParHashSet(1, 2, 3))
-
+
// par conversions
assertPar(Array(1, 2, 3))
assertPar(mutable.ArrayBuffer(1, 2, 3))
@@ -29,7 +29,7 @@ object Test {
assertPar(immutable.Range(1, 50, 1))
assertPar(immutable.HashMap(1 -> 1, 2 -> 2))
assertPar(immutable.HashSet(1, 2, 3))
-
+
// par.to* and to*.par tests
assertToPar(List(1 -> 1, 2 -> 2, 3 -> 3))
assertToPar(Stream(1 -> 1, 2 -> 2))
@@ -47,19 +47,19 @@ object Test {
assertToPar(parallel.mutable.ParHashSet(1 -> 2))
assertToPar(parallel.immutable.ParHashMap(1 -> 2))
assertToPar(parallel.immutable.ParHashSet(1 -> 3))
-
+
assertToParWoMap(immutable.Range(1, 10, 2))
-
+
// seq and par again conversions)
assertSeqPar(parallel.mutable.ParArray(1, 2, 3))
}
-
+
def assertSeqPar[T](pc: parallel.ParIterable[T]) = pc.seq.par == pc
-
+
def assertSeq[T](pc: parallel.ParIterable[T]) = assert(pc.seq == pc)
-
+
def assertPar[T, P <: Parallel](xs: GenIterable[T]) = assert(xs == xs.par)
-
+
def assertToPar[K, V](xs: GenTraversable[(K, V)]) {
xs match {
case _: Seq[_] =>
@@ -67,26 +67,26 @@ object Test {
assert(xs.par.toIterable == xs)
case _ =>
}
-
+
assert(xs.toSeq.par == xs.toSeq)
assert(xs.par.toSeq == xs.toSeq)
-
+
assert(xs.toSet.par == xs.toSet)
assert(xs.par.toSet == xs.toSet)
-
+
assert(xs.toMap.par == xs.toMap)
assert(xs.par.toMap == xs.toMap)
}
-
+
def assertToParWoMap[T](xs: GenSeq[T]) {
assert(xs.toIterable.par == xs.toIterable)
assert(xs.par.toIterable == xs.toIterable)
-
+
assert(xs.toSeq.par == xs.toSeq)
assert(xs.par.toSeq == xs.toSeq)
-
+
assert(xs.toSet.par == xs.toSet)
assert(xs.par.toSet == xs.toSet)
}
-
+
}
diff --git a/test/files/run/pf-catch.scala b/test/files/run/pf-catch.scala
index f0b8baeeb3..ba0781fe89 100644
--- a/test/files/run/pf-catch.scala
+++ b/test/files/run/pf-catch.scala
@@ -6,12 +6,12 @@ object Test {
case x: java.util.NoSuchElementException => shortName(x)
case x: java.lang.IllegalArgumentException => shortName(x)
}
-
+
def fn[T: Handler](body: => T): T = {
try body
catch implicitly[Handler[T]]
}
-
+
def f1 = {
implicit val myHandler = standardHandler
println(fn(Nil.head))
@@ -28,7 +28,7 @@ object Test {
def main(args: Array[String]): Unit = {
try f1
catch { case x => println(shortName(x) + " slipped by.") }
-
+
f2
}
}
diff --git a/test/files/run/primitive-sigs-2.scala b/test/files/run/primitive-sigs-2.scala
index b17305a033..b7152f7e3d 100644
--- a/test/files/run/primitive-sigs-2.scala
+++ b/test/files/run/primitive-sigs-2.scala
@@ -25,7 +25,7 @@ object Test {
val c1: Class[_] = classOf[T[_]]
val c2: Class[_] = classOf[C]
val c3: Class[_] = classOf[Arr]
-
+
val c1m = c1.getMethods.toList filter (_.getName == "f") map (_.getGenericReturnType.toString)
val c2m = c2.getMethods.toList filter (_.getName == "f") map (_.getGenericReturnType.toString)
val c3m = c3.getDeclaredMethods.toList map (_.toGenericString)
diff --git a/test/files/run/priorityQueue.scala b/test/files/run/priorityQueue.scala
index 327d8bf137..edc0e32b02 100644
--- a/test/files/run/priorityQueue.scala
+++ b/test/files/run/priorityQueue.scala
@@ -31,23 +31,23 @@ object Test {
// val pq2 = new PriorityQueue[String]
// val pq3 = new PriorityQueue[String]
// val pq4 = new PriorityQueue[String]
-
+
// val strings = (1 to 20).toList map (i => List.fill((Math.abs(nextInt % 20)) + 1)("x").mkString)
-
+
// pq1 ++= strings
// pq2 ++= strings.reverse
// for (s <- strings) pq3 += s
// for (s <- strings.reverse) pq4 += s
-
+
// val pqs = List(pq1, pq2, pq3, pq4, pq1.clone, pq2.clone)
-
+
// for (queue1 <- pqs ; queue2 <- pqs) {
// val l1: List[String] = queue1.dequeueAll[String, List[String]]
// val l2: List[String] = queue2.dequeueAll[String, List[String]]
// assert(l1 == l2)
// assert(queue1.max == queue2.max)
// }
-
+
// assertPriorityDestructive(pq1)
// }
@@ -83,7 +83,7 @@ object Test {
// }
// for (i <- 0 until 100) assert(intpq(i) == (99 - i))
// }
-
+
// def testTails {
// val pq = new PriorityQueue[Int]
// for (i <- 0 until 10) pq += i * 4321 % 200
@@ -108,13 +108,13 @@ object Test {
// prev = curr
// }
// }
-
+
// def testInits {
// val pq = new PriorityQueue[Long]
// for (i <- 0 until 20) pq += (i + 313) * 111 % 300
-
+
// assert(pq.size == 20)
-
+
// val initpq = pq.init
// assert(initpq.size == 19)
// assertPriorityDestructive(initpq)
@@ -123,19 +123,19 @@ object Test {
// def testFilters {
// val pq = new PriorityQueue[String]
// for (i <- 0 until 100) pq += "Some " + (i * 312 % 200)
-
+
// val filpq = pq.filter(_.indexOf('0') != -1)
// assertPriorityDestructive(filpq)
// }
// def testIntensiveEnqueueDequeue {
// val pq = new PriorityQueue[Int]
-
+
// testIntensive(1000, pq)
// pq.clear
// testIntensive(200, pq)
// }
-
+
// def testIntensive(sz: Int, pq: PriorityQueue[Int]) {
// val lst = new collection.mutable.ArrayBuffer[Int] ++ (0 until sz)
// val rand = new util.Random(7)
@@ -153,7 +153,7 @@ object Test {
// pq ++= (0 until 100)
// val droppq = pq.drop(50)
// assertPriority(droppq)
-
+
// pq.clear
// pq ++= droppq
// assertPriorityDestructive(droppq)
@@ -173,7 +173,7 @@ object Test {
// // assertPriority(pq)
// // pq.clear
-
+
// // pq ++= (1 to 100)
// // pq(5) = 200
// // assert(pq(0) == 200)
@@ -204,7 +204,7 @@ object Test {
// def testEquality {
// val pq1 = new PriorityQueue[Int]
// val pq2 = new PriorityQueue[Int]
-
+
// pq1 ++= (0 until 50)
// var i = 49
// while (i >= 0) {
@@ -213,7 +213,7 @@ object Test {
// }
// assert(pq1 == pq2)
// assertPriority(pq2)
-
+
// pq1 += 100
// assert(pq1 != pq2)
// pq2 += 100
@@ -230,7 +230,7 @@ object Test {
// val pq = new PriorityQueue[Int]
// pq ++= (0 until 100)
// assert(pq.size == 100)
-
+
// val (p1, p2) = pq.partition(_ < 50)
// assertPriorityDestructive(p1)
// assertPriorityDestructive(p2)
@@ -252,13 +252,13 @@ object Test {
// assert(pq.lastIndexWhere(_ == 9) == 0)
// assert(pq.lastIndexOf(8) == 1)
// assert(pq.lastIndexOf(7) == 2)
-
+
// pq += 5
// pq += 9
// assert(pq.lastIndexOf(9) == 1)
// assert(pq.lastIndexWhere(_ % 2 == 1) == 10)
// assert(pq.lastIndexOf(5) == 6)
-
+
// val lst = pq.reverseIterator.toList
// for (i <- 0 until 5) assert(lst(i) == i)
// assert(lst(5) == 5)
@@ -268,13 +268,13 @@ object Test {
// assert(lst(9) == 8)
// assert(lst(10) == 9)
// assert(lst(11) == 9)
-
+
// pq.clear
// assert(pq.reverseIterator.toList.isEmpty)
-
+
// pq ++= (50 to 75)
// assert(pq.lastIndexOf(70) == 5)
-
+
// pq += 55
// pq += 70
// assert(pq.lastIndexOf(70) == 6)
@@ -284,11 +284,11 @@ object Test {
// assert(pq.lastIndexWhere(_ > 54, 21) == 21)
// assert(pq.lastIndexWhere(_ > 69, 5) == 5)
// }
-
+
// def testReverse {
// val pq = new PriorityQueue[(Int, Int)]
// pq ++= (for (i <- 0 until 10) yield (i, i * i % 10))
-
+
// assert(pq.reverse.size == pq.reverseIterator.toList.size)
// assert((pq.reverse zip pq.reverseIterator.toList).forall(p => p._1 == p._2))
// assert(pq.reverse.sameElements(pq.reverseIterator.toSeq))
@@ -296,19 +296,19 @@ object Test {
// assert(pq.reverse(1)._1 == pq(8)._1)
// assert(pq.reverse(4)._1 == pq(5)._1)
// assert(pq.reverse(9)._1 == pq(0)._1)
-
+
// pq += ((7, 7))
// pq += ((7, 9))
// pq += ((7, 8))
// assert(pq.reverse.reverse == pq)
// assert(pq.reverse.lastIndexWhere(_._2 == 6) == 6)
// assertPriorityDestructive(pq.reverse.reverse)
-
+
// val iq = new PriorityQueue[Int]
// iq ++= (0 until 50)
// assert(iq.reverse == iq.reverseIterator.toSeq)
// assert(iq.reverse.reverse == iq)
-
+
// iq += 25
// iq += 40
// iq += 10
@@ -317,10 +317,10 @@ object Test {
// assert(iq.reverse.lastIndexWhere(_ == 10) == 11)
// assertPriorityDestructive(iq.reverse.reverse)
// }
-
+
// def testToList {
// val pq = new PriorityQueue[Int]
-
+
// pq += 1
// pq += 4
// pq += 0
@@ -330,16 +330,16 @@ object Test {
// assert(pq.toList == pq)
// assert(pq == List(5, 4, 3, 2, 1, 0))
// assert(pq.reverse == List(0, 1, 2, 3, 4, 5))
-
+
// pq.clear
// for (i <- -50 until 50) pq += i
// assert(pq.toList == pq)
// assert(pq.toList == (-50 until 50).reverse)
// }
-
+
// def testForeach {
// val pq = new PriorityQueue[Char]
-
+
// pq += 't'
// pq += 'o'
// pq += 'b'
@@ -351,7 +351,7 @@ object Test {
// assert(sbf.toString == sbi.toString)
// assert(sbf.toString == "ytob")
// }
-
+
}
diff --git a/test/files/run/private-inline.scala b/test/files/run/private-inline.scala
index 5181ac8ba3..a45300b026 100644
--- a/test/files/run/private-inline.scala
+++ b/test/files/run/private-inline.scala
@@ -2,7 +2,7 @@
final class A {
private var x1 = false
var x2 = false
-
+
// manipulates private var
@inline private def wrapper1[T](body: => T): T = {
val saved = x1
@@ -17,35 +17,35 @@ final class A {
try body
finally x2 = saved
}
-
+
// not inlined
def f1a() = wrapper1(5)
// inlined!
def f1b() = identity(wrapper1(5))
-
+
// not inlined
def f2a() = wrapper2(5)
// inlined!
- def f2b() = identity(wrapper2(5))
+ def f2b() = identity(wrapper2(5))
}
object Test {
def methodClasses = List("f1a", "f1b", "f2a", "f2b") map ("A$$anonfun$" + _ + "$1")
-
+
def main(args: Array[String]): Unit = {
val a = new A
import a._
println(f1a() + f1b() + f2a() + f2b())
-
+
// Don't know how else to test this: all these should have been
// inlined, so all should fail.
methodClasses foreach { clazz =>
-
+
val foundClass = (
try Class.forName(clazz)
catch { case _ => null }
)
-
+
assert(foundClass == null, foundClass)
}
}
diff --git a/test/files/run/programmatic-main.scala b/test/files/run/programmatic-main.scala
index 7fec0f3f98..7bc5c5dfcf 100644
--- a/test/files/run/programmatic-main.scala
+++ b/test/files/run/programmatic-main.scala
@@ -5,7 +5,7 @@ object Test {
val cwd = Option(System.getProperty("partest.cwd")) getOrElse "."
val basedir = Path(cwd).parent / "lib" path
val baseargs = Array("-usejavacp", "-bootclasspath", basedir + "/scala-library.jar", "-cp", basedir + "/scala-compiler.jar")
-
+
def main(args: Array[String]): Unit = {
Console.withErr(Console.out) {
Main process (baseargs ++ "-Xpluginsdir /does/not/exist/foo/quux -Xshow-phases".split(' '))
diff --git a/test/files/run/proxy.scala b/test/files/run/proxy.scala
index 8a6385dc85..ea222cb496 100644
--- a/test/files/run/proxy.scala
+++ b/test/files/run/proxy.scala
@@ -1,16 +1,16 @@
object Test extends App {
val p = new Proxy {
- def self = 2
+ def self = 2
}
println(p equals 1)
println(p equals 2)
println(p equals 3)
println(p equals null)
-
+
case class Bippy(a: String) extends Proxy {
def self = a
}
-
+
val label = Bippy("bippy!")
println(label == label)
println(label == "bippy!")
diff --git a/test/files/run/range.scala b/test/files/run/range.scala
index 2dc0bae330..f08b2105d3 100644
--- a/test/files/run/range.scala
+++ b/test/files/run/range.scala
@@ -6,7 +6,7 @@ object Test {
range.foreach(buffer += _);
assert(buffer.toList == range.iterator.toList, buffer.toList+"/"+range.iterator.toList)
}
-
+
def boundaryTests() = {
// #4321
assert((Int.MinValue to Int.MaxValue by Int.MaxValue).size == 3)
@@ -17,31 +17,31 @@ object Test {
)
assert(caught)
}
-
+
case class GR[T](val x: T)(implicit val num: Integral[T]) {
import num._
-
+
def negated = GR[T](-x)
-
+
def gr1 = NumericRange(x, x, x)
def gr2 = NumericRange.inclusive(x, x, x)
def gr3 = NumericRange(x, x * fromInt(10), x)
def gr4 = NumericRange.inclusive(x, x * fromInt(10), x)
def gr5 = gr3.toList ::: negated.gr3.toList
-
+
def check = {
assert(gr1.isEmpty && !gr2.isEmpty)
- assert(gr3.size == 9 && gr4.size == 10)
+ assert(gr3.size == 9 && gr4.size == 10)
assert(gr5.sum == num.zero, gr5.toString)
assert(!(gr3 contains (x * fromInt(10))))
assert((gr4 contains (x * fromInt(10))))
}
}
-
+
def main(args: Array[String]): Unit = {
implicit val imp1 = Numeric.BigDecimalAsIfIntegral
implicit val imp2 = Numeric.DoubleAsIfIntegral
-
+
val _grs = List[GR[_]](
GR(BigDecimal(5.0)),
GR(BigInt(5)),
@@ -51,21 +51,21 @@ object Test {
)
val grs = _grs ::: (_grs map (_.negated))
grs foreach (_.check)
-
+
assert(NumericRange(1, 10, 1) sameElements (1 until 10))
assert(NumericRange.inclusive(1, 10, 1) sameElements (1 to 10))
assert(NumericRange.inclusive(1, 100, 3) sameElements (1 to 100 by 3))
-
+
// #2518
assert((3L to 7 by 2) sameElements List(3L, 5L, 7L))
-
+
rangeForeach(1 to 10);
rangeForeach(1 until 10);
rangeForeach(10 to 1 by -1);
rangeForeach(10 until 1 by -1);
rangeForeach(10 to 1 by -3);
rangeForeach(10 until 1 by -3);
-
+
// living on the edges
boundaryTests()
}
diff --git a/test/files/run/records.scala b/test/files/run/records.scala
index c1dc7b67e8..96b0b4cb0f 100644
--- a/test/files/run/records.scala
+++ b/test/files/run/records.scala
@@ -16,10 +16,10 @@ object Test {
val y = new C {
def f = 2
def g = " world"
- }
-
+ }
+
val z: T = y
-
+
def main(args: Array[String]): Unit = {
assert(x.f+z.f == 3)
assert(x.g+z.g == "hello world")
diff --git a/test/files/run/repl-backticks.scala b/test/files/run/repl-backticks.scala
index 94e34d1438..11c58e18a1 100644
--- a/test/files/run/repl-backticks.scala
+++ b/test/files/run/repl-backticks.scala
@@ -1,18 +1,18 @@
-import scala.tools.nsc._
+import scala.tools.nsc._
object Test {
val testCode = <code>
import java.lang.Thread.`yield`
import scala.`package`.Throwable
-
- `yield`
+
+ `yield`
</code>.text
-
+
def main(args: Array[String]) = {
val settings = new Settings()
settings.classpath.value = System.getProperty("java.class.path")
val repl = new Interpreter(settings)
- repl.interpret(testCode)
+ repl.interpret(testCode)
}
}
diff --git a/test/files/run/repl-suppressed-warnings.scala b/test/files/run/repl-suppressed-warnings.scala
index a79131fb2f..a78b00f36e 100644
--- a/test/files/run/repl-suppressed-warnings.scala
+++ b/test/files/run/repl-suppressed-warnings.scala
@@ -20,7 +20,7 @@ object o {
}
case class DingDangDoobie(ding: Int, dang: Int, doobie: Double)
case class Dongoo
- @serializable case class Heyooooo
+ @serializable case class Heyooooo
@deprecated("I'm an ironic deprecation warning") def f0 = 5 // where's this disappearing?
def f1 = Double.Epsilon // and this?
diff --git a/test/files/run/run-bug4840.scala b/test/files/run/run-bug4840.scala
index dda280fd17..5f98bc9f4b 100644
--- a/test/files/run/run-bug4840.scala
+++ b/test/files/run/run-bug4840.scala
@@ -1,6 +1,6 @@
object Test {
def g(x: Boolean): Option[String] = if (x) Some("booya") else None
-
+
def f1() = {
for (x <- g(true)) yield {
g(false) match {
@@ -9,11 +9,11 @@ object Test {
}
}
}
-
+
def f2() = {
for (x <- g(true) ; y <- g(true) ; z <- g(true)) yield {
for (x <- g(true) ; y <- g(true) ; z <- g(true)) yield {
- g(true) map { _ =>
+ g(true) map { _ =>
(null: Any) match {
case Some(x: Int) => x
case _ => 5
@@ -21,7 +21,7 @@ object Test {
}
}
}
- }
+ }
def main(args: Array[String]): Unit = {
println(f1())
diff --git a/test/files/run/runtime-richChar.scala b/test/files/run/runtime-richChar.scala
index dceb70e74d..cf18a1d302 100644
--- a/test/files/run/runtime-richChar.scala
+++ b/test/files/run/runtime-richChar.scala
@@ -5,19 +5,19 @@ object Test extends App {
else
println(name + " failed: " + expected + " differs from " + got)
}
-
+
testSeq("'a' to 'c'", List('a', 'b', 'c'), 'a' to 'c')
testSeq("'a' until 'c'", List('a', 'b'), 'a' until 'c')
-
+
testSeq("'a' to 'b'", List('a', 'b'), 'a' to 'b')
testSeq("'a' until 'b'", List('a'), 'a' until 'b')
-
+
testSeq("'a' to 'a'", List('a'), 'a' to 'a')
testSeq("'a' until 'a'", List(), 'a' until 'a')
-
+
testSeq("'b' to 'a'", List(), 'b' to 'a')
testSeq("'b' until 'a'", List(), 'b' until 'a')
-
+
testSeq("'c' to 'a'", List(), 'c' to 'a')
testSeq("'c' until 'a'", List(), 'c' until 'a')
}
diff --git a/test/files/run/scan.scala b/test/files/run/scan.scala
index 47e0a7d976..f056c77ba1 100644
--- a/test/files/run/scan.scala
+++ b/test/files/run/scan.scala
@@ -6,17 +6,17 @@ object Test {
def main(args: Array[String]) {
val lst = List(1, 2, 3, 4, 5)
-
+
assert(lst.scanLeft(0)(_ + _) == List(0, 1, 3, 6, 10, 15))
assert(lst.scanRight(0)(_ + _) == List(15, 14, 12, 9, 5, 0))
-
+
val emp = List[Int]()
assert(emp.scanLeft(0)(_ + _) == List(0))
assert(emp.scanRight(0)(_ + _) == List(0))
-
+
val stream = Stream(1, 2, 3, 4, 5)
assert(stream.scanLeft(0)(_ + _) == Stream(0, 1, 3, 6, 10, 15))
-
+
assert(Stream.from(1).scanLeft(0)(_ + _).take(5) == Stream(0, 1, 3, 6, 10))
}
diff --git a/test/files/run/seqlike-kmp.scala b/test/files/run/seqlike-kmp.scala
index af39fda9af..514990cfa2 100644
--- a/test/files/run/seqlike-kmp.scala
+++ b/test/files/run/seqlike-kmp.scala
@@ -2,7 +2,7 @@ object Test {
val source = 0 to 99
val idxes = (-1 to 2) ++ (97 to 100)
def str(xs: Seq[Int]) = xs.mkString("(", ", ", ")")
-
+
def f(tgt: Seq[Int]) = {
println("indexOfSlice")
// the first index `>= from` such that...
@@ -17,11 +17,11 @@ object Test {
println(" %s with idx <= %d = %d".format(str(tgt), x, res))
}
}
-
+
def g(idx: Int, len: Int) = {
f(source.slice(idx, idx + len))
}
-
+
def main(args: Array[String]): Unit = {
g(97, 1)
g(97, 2)
diff --git a/test/files/run/sequenceComparisons.scala b/test/files/run/sequenceComparisons.scala
index c2f7ddc697..5d7958bc7e 100644
--- a/test/files/run/sequenceComparisons.scala
+++ b/test/files/run/sequenceComparisons.scala
@@ -2,12 +2,12 @@ import scala.collection.{ mutable, immutable }
import collection.{ Seq, Traversable }
object Test {
- // TODO:
+ // TODO:
//
// SeqProxy
// SeqForwarder
// the commented out ones in seqMakers
-
+
val seqMakers = List[List[Int] => Seq[Int]](
// scala.Array(_: _*),
mutable.ArrayBuffer(_: _*),
@@ -23,13 +23,13 @@ object Test {
immutable.Seq(_: _*),
mutable.Seq(_: _*),
immutable.Stack(_: _*),
- // mutable.Stack(_: _*),
+ // mutable.Stack(_: _*),
immutable.IndexedSeq(_: _*), // was Vector
//mutable.Vector(_: _*),
immutable.List(_: _*),
immutable.Stream(_: _*)
)
-
+
abstract class Data[T] {
val seq: Seq[T]
private def seqList = seq.toList
@@ -45,50 +45,50 @@ object Test {
}
lazy val eqeq = Method(_ == _, (List(seqList), List(Nil, seqList drop 1, seqList ::: seqList)), "%s == %s")
-
+
val startsWithInputs: Inputs
lazy val startsWith = Method(_ startsWith _, startsWithInputs, "%s startsWith %s")
-
+
val endsWithInputs: Inputs
lazy val endsWith = Method(_ endsWith _, endsWithInputs, "%s endsWith %s")
val indexOfSliceInputs: Inputs
private def subseqTest(s1: Seq[T], s2: Seq[T]) = (s1 indexOfSlice s2) != -1
lazy val indexOfSlice = Method(subseqTest _, indexOfSliceInputs, "(%s indexOfSlice %s) != -1")
-
+
val sameElementsInputs: Inputs
lazy val sameElements = Method(_ sameElements _, sameElementsInputs, "%s sameElements %s")
-
+
def methodList = List(eqeq, startsWith, endsWith, indexOfSlice, sameElements)
}
-
+
object test1 extends Data[Int] {
val seq = List(1,2,3,4,5)
-
+
val startsWithInputs = (
List(Nil, List(1), List(1,2), seq),
List(List(1,2,3,4,6), seq ::: List(5), List(0))
)
-
+
val endsWithInputs = (
List(Nil, List(5), List(4,5), seq),
List(0 :: seq, List(5,2,3,4,5), List(3,4), List(5,6))
)
-
+
val indexOfSliceInputs = (
List(Nil, List(1), List(3), List(5), List(1,2), List(2,3,4), List(4,5), seq),
List(List(1,2,3,5), List(6), List(5,4,3,2,1), List(2,1))
)
-
+
val sameElementsInputs = (
List(List(1,2,3,4,5)),
List(Nil, List(1), List(1,2), List(2,3,4), List(2,3,4,5), List(2,3,4,5,1), List(1,2,3,5,4), seq reverse)
)
}
-
+
val failures = new mutable.ListBuffer[String]
var testCount = 0
-
+
def assertOne(op1: Any, op2: Any, res: Boolean, str: String) {
testCount += 1
val resStr = str.format(op1, op2)
@@ -97,25 +97,25 @@ object Test {
failures += ("FAIL: " + resStr)
// assert(res, resStr)
}
-
+
def runSeqs() = {
for (s1f <- seqMakers ; s2f <- seqMakers ; testData <- List(test1)) {
import testData._
val scrut = s1f(seq)
-
+
for (Method(f, (trueList, falseList), descr) <- methodList) {
for (s <- trueList; rhs = s2f(s))
assertOne(scrut, rhs, f(scrut, rhs), descr)
-
+
for (s <- falseList; rhs = s2f(s))
assertOne(scrut, rhs, !f(scrut, rhs), "!(" + descr + ")")
}
}
}
-
+
def main(args: Array[String]) {
runSeqs()
-
+
assert(failures.isEmpty, failures mkString "\n")
}
}
diff --git a/test/files/run/serialize-stream.scala b/test/files/run/serialize-stream.scala
index 3ab9f2df34..e424d5b629 100644
--- a/test/files/run/serialize-stream.scala
+++ b/test/files/run/serialize-stream.scala
@@ -5,13 +5,13 @@ object Test {
val bos = new java.io.ByteArrayOutputStream()
val oos = new java.io.ObjectOutputStream(bos)
oos.writeObject(s)
-
+
val ois = new java.io.ObjectInputStream(new java.io.ByteArrayInputStream(bos.toByteArray))
val obj = ois.readObject()
println(obj)
println(obj.asInstanceOf[Seq[T]].toList)
}
-
+
def main(args: Array[String]) {
ser(Stream(1, 2, 3))
ser(Stream(1))
diff --git a/test/files/run/slice-strings.scala b/test/files/run/slice-strings.scala
index 129314387a..23085866f5 100644
--- a/test/files/run/slice-strings.scala
+++ b/test/files/run/slice-strings.scala
@@ -1,7 +1,7 @@
-object Test {
+object Test {
def cmp(x1: String) = {
val x2 = x1.toList
-
+
-10 to 10 foreach { i =>
assert(x1.take(i) == x2.take(i).mkString)
assert(x1.drop(i) == x2.drop(i).mkString)
@@ -12,7 +12,7 @@ object Test {
assert(x1.slice(idx1, idx2) == x2.slice(idx1, idx2).mkString)
}
}
-
+
def main(args: Array[String]): Unit = {
cmp("abcde")
}
diff --git a/test/files/run/streamWithFilter.scala b/test/files/run/streamWithFilter.scala
index cb919d4f55..7f8f9a09d2 100644
--- a/test/files/run/streamWithFilter.scala
+++ b/test/files/run/streamWithFilter.scala
@@ -4,7 +4,7 @@ object Test {
def isBuzz(x: Int) = x % 5 == 0
// next line will run forever if withFilter isn't doing its thing.
val fizzbuzzes = for (n <- nums ; if isFizz(n) ; if isBuzz(n)) yield n
-
+
def main(args: Array[String]): Unit = {
fizzbuzzes take 5 foreach println
}
diff --git a/test/files/run/streams.scala b/test/files/run/streams.scala
index edf7ae368e..51b4e5d76c 100644
--- a/test/files/run/streams.scala
+++ b/test/files/run/streams.scala
@@ -29,7 +29,7 @@ object Test extends App {
def powers(x: Int) = if ((x&(x-1)) == 0) Some(x) else None
println(s3.flatMap(powers).reverse.head)
- // large enough to generate StackOverflows (on most systems)
+ // large enough to generate StackOverflows (on most systems)
// unless the following methods are tail call optimized.
val size = 100000
diff --git a/test/files/run/stringbuilder.scala b/test/files/run/stringbuilder.scala
index cc3eb032dc..ef85fc02a6 100644
--- a/test/files/run/stringbuilder.scala
+++ b/test/files/run/stringbuilder.scala
@@ -1,21 +1,21 @@
object Test extends App {
val str = "ABCDEFGHIJKLMABCDEFGHIJKLM"
val surrogateStr = "an old Turkic letter: \uD803\uDC22"
-
- type SB = {
+
+ type SB = {
def indexOf(str: String): Int
def indexOf(str: String, fromIndex: Int): Int
def lastIndexOf(str: String): Int
def lastIndexOf(str: String, fromIndex: Int): Int
}
-
+
import scala.collection.mutable.{ StringBuilder => ScalaStringBuilder }
import java.lang.{ StringBuilder => JavaStringBuilder }
-
+
val sbScala = new ScalaStringBuilder() append str
val sbJava = new JavaStringBuilder() append str
val sbs: List[SB] = List[SB](sbScala, sbJava)
-
+
def sameAnswers(f: (SB) => Int) = assert(f(sbScala) == f(sbJava))
sameAnswers(_.indexOf(""))
@@ -31,10 +31,10 @@ object Test extends App {
sameAnswers(_.lastIndexOf("QZV"))
sameAnswers(_.lastIndexOf("GHI", 22))
sameAnswers(_.lastIndexOf("KLM", 22))
-
+
// testing that the "reverse" implementation avoids reversing surrogate pairs
val jsb = new JavaStringBuilder(surrogateStr) reverse
val ssb = new ScalaStringBuilder(surrogateStr) reverseContents ;
-
+
assert(jsb.toString == ssb.toString)
}
diff --git a/test/files/run/structural.scala b/test/files/run/structural.scala
index 97627b8da1..36af8c4bfc 100644
--- a/test/files/run/structural.scala
+++ b/test/files/run/structural.scala
@@ -1,18 +1,18 @@
object test1 {
-
+
val o1 = new Object { override def toString = "ohone" }
val o2 = new Object { override def toString = "ohtwo" }
-
+
val t1 = new Tata("tieone")
val t2 = new Tata("tietwo")
-
+
class Tata(name: String) {
override def toString = name
def tatMe = "oy"
}
-
+
class Titi extends Tata("titi")
-
+
object Rec {
val a = 1
val b = 2
@@ -41,7 +41,7 @@ object test1 {
val y: Tata = null
def z(t: Tata) = ()
}
-
+
type rt = Object {
val a: Int;
val c: String;
@@ -65,7 +65,7 @@ object test1 {
var v: Int
val y: Tata
}
-
+
def l (r: rt) {
println(" 1. " + r.c)
println(" 2. " + r.a + 1)
@@ -94,33 +94,33 @@ object test1 {
println("25. " + r.y)
println("26. " + r.e(null))
}
-
+
/*def ma[T](r: Object{def e(x: T): T; val x: T}) {
println("30. " + r.e(r.x)) // static error
}*/
-
+
def mb(r: Object { def e[T](x: T): T }) {
println("31. " + r.e[Int](4)) // while this is ok
}
-
+
def m1(r: Object { def z(x: Tata): Unit }) {
println("32. " + r.z(new Titi)) // while this is ok
}
-
+
def m2[T](r: Object { def e(x: Tata): T; val x: Tata }) {
println("33. " + r.e(r.x)) // and this too
}
-
+
class Rec3[T] {
def e(x: T): T = x
}
-
+
def m3[T](r: Rec3[T], x: T) {
println("33. " + r.e(x)) // and this too
}
-
+
Rec.g(11)
-
+
this.l(Rec)
this.mb(new Object{def e[T](x: T): T = x})
this.m1(Rec)
@@ -132,7 +132,7 @@ object test2 {
class C extends { def f() { println("1") } }
val x1 = new C
x1.f()
-
+
abstract class D extends { def f() }
val x2 = new D { def f() { println("2") } }
x2.f()
@@ -153,11 +153,11 @@ object test2 {
object test3 {
case class Exc extends Exception
-
+
object Rec {
def f = throw Exc()
}
-
+
def m(r: { def f: Nothing }) =
try {
r.f
@@ -166,31 +166,31 @@ object test3 {
case e: Exc => println("caught")
case e => println(e)
}
-
+
m(Rec)
-
+
}
object test4 {
class A
-
+
val aar = Array(new A, new A, new A)
val nar = Array(1, 2)
-
+
def f(p: {def size: Int}) = println(p.size)
//def g[T <: {def size: Int}](p: T) = println(p.size) // open issue
//def h[T <% {def size: Int}](p: T) = println(p.size) // open issue
-
+
f(aar)
f(nar)
-
+
//g(aar)
//g(nar)
-
+
//h(aar)
//h(nar)
-
+
}
object Test extends App {
diff --git a/test/files/run/sysprops.scala b/test/files/run/sysprops.scala
index bdad677221..4d98e2cdd0 100644
--- a/test/files/run/sysprops.scala
+++ b/test/files/run/sysprops.scala
@@ -3,16 +3,16 @@ import sys._
/** Basic sys.Prop test. */
object Test {
val key = "ding.dong.doobie"
-
+
def bool() = {
val prop = BooleanProp.valueIsTrue(key)
assert(prop.key == key)
-
+
prop.clear()
assert(!prop.value)
assert(!prop.isSet)
assert(prop.get != null)
-
+
prop set "dingus"
assert(prop.get == "dingus")
assert(!prop.value)
@@ -32,7 +32,7 @@ object Test {
prop.set("523")
assert(prop.value == 523)
prop.set("DingusInt")
-
+
try { println(prop.value) ; assert(false, "should not get here") }
catch { case _: Exception => () }
}
@@ -41,7 +41,7 @@ object Test {
prop.set("55.0")
assert(prop.value == 55.0)
}
-
+
def main(args: Array[String]): Unit = {
bool()
int()
diff --git a/test/files/run/t0017.scala b/test/files/run/t0017.scala
index 245cbb7e42..e976f453d8 100644
--- a/test/files/run/t0017.scala
+++ b/test/files/run/t0017.scala
@@ -7,7 +7,7 @@ def transpose[A](arr: Array[Array[A]]) = {
var my_arr = Array(Array(1,2),Array(3,4))
-for (i <- Array.range(0, my_arr(0).length)) yield
+for (i <- Array.range(0, my_arr(0).length)) yield
for (row <- my_arr) yield row(i)
val transposed = transpose(my_arr)
diff --git a/test/files/run/t0325.scala b/test/files/run/t0325.scala
index 236f1b101f..92331ab05f 100644
--- a/test/files/run/t0325.scala
+++ b/test/files/run/t0325.scala
@@ -7,7 +7,7 @@ case class RS(self: String) {
}
def split(separator: Char): Array[String] = self.split(escape(separator))
-
+
def split(separators: Array[Char]): Array[String] = {
val re = separators.foldLeft("[")(_+escape(_)) + "]"
self.split(re)
@@ -27,7 +27,7 @@ object Test {
case e@_ => println(which + " failed with " + e.getClass)
}
}
-
+
def main(args: Array[String]) {
val badChars = "?*{+([\\^.$"
@@ -46,8 +46,8 @@ object Test {
for ((c,str) <- badCases)
test(("a"+c+"b").split(str.toArray),"RichString split(\""+ str + "\")")
println
-
+
for ((c,str) <- badCases)
- test(RS("a"+c+"b").split(str.toArray),"RS split(\""+ str + "\")")
+ test(RS("a"+c+"b").split(str.toArray),"RS split(\""+ str + "\")")
}
}
diff --git a/test/files/run/t0421.scala b/test/files/run/t0421.scala
index 62be08c0fe..8d51013924 100644
--- a/test/files/run/t0421.scala
+++ b/test/files/run/t0421.scala
@@ -7,17 +7,17 @@ object Test extends App {
}
def scalprod(xs: Array[Double], ys: Array[Double]) = {
- var acc = 0.0
- for ((x, y) <- xs zip ys) acc = acc + x * y
+ var acc = 0.0
+ for ((x, y) <- xs zip ys) acc = acc + x * y
acc
}
def matmul(xss: Array[Array[Double]], yss: Array[Array[Double]]) = {
- val ysst = transpose(yss)
+ val ysst = transpose(yss)
val ysst1: Array[Array[Double]] = yss.transpose
assert(ysst.deep == ysst1.deep)
for (xs <- xss) yield
- for (yst <- ysst) yield
+ for (yst <- ysst) yield
scalprod(xs, yst)
}
@@ -25,6 +25,6 @@ object Test extends App {
println(transpose(a1).deep.mkString("[", ",", "]"))
println(matmul(Array(Array(2, 3)), Array(Array(5), Array(7))).deep.mkString("[", ",", "]"))
-
+
println(matmul(Array(Array(4)), Array(Array(6, 8))).deep.mkString("[", ",", "]"))
}
diff --git a/test/files/run/t0508.scala b/test/files/run/t0508.scala
index 2283c46c36..0f4325e629 100644
--- a/test/files/run/t0508.scala
+++ b/test/files/run/t0508.scala
@@ -9,5 +9,5 @@ object Test extends App {
}
}
- foo(Foo.unapply, Foo("this might be fun", 10))
+ foo(Foo.unapply, Foo("this might be fun", 10))
}
diff --git a/test/files/run/t0631.scala b/test/files/run/t0631.scala
index c401ed31cb..5bceab6193 100644
--- a/test/files/run/t0631.scala
+++ b/test/files/run/t0631.scala
@@ -1,5 +1,5 @@
object Test extends App {
- class Foo {
+ class Foo {
override def equals(that: Any) = {
println("Foo.equals called")
super.equals(that)
diff --git a/test/files/run/t0677.scala b/test/files/run/t0677.scala
index 131fcc24a6..6c8a3a7e99 100644
--- a/test/files/run/t0677.scala
+++ b/test/files/run/t0677.scala
@@ -1,5 +1,5 @@
object Test extends App {
- class X[T: ClassManifest] {
+ class X[T: ClassManifest] {
val a = Array.ofDim[T](3, 4)
}
val x = new X[String]
diff --git a/test/files/run/t0807.scala b/test/files/run/t0807.scala
index 1e2a26664a..1a1add6b3a 100644
--- a/test/files/run/t0807.scala
+++ b/test/files/run/t0807.scala
@@ -1,5 +1,5 @@
trait A
-trait B extends A { val x = println("early") }
+trait B extends A { val x = println("early") }
object Test extends App {
new B {}
}
diff --git a/test/files/run/t0883.scala b/test/files/run/t0883.scala
index c8ed06dbfe..adde95197b 100644
--- a/test/files/run/t0883.scala
+++ b/test/files/run/t0883.scala
@@ -1,14 +1,14 @@
object Foo { def apply(x: String) = new Foo(x) }
class Foo(name: String)
case object Bar extends Foo("Bar")
-case class Baz() extends Foo("Baz")
+case class Baz() extends Foo("Baz")
object Test extends App {
- Foo("Bar") match {
- case Bar => println("What?")
+ Foo("Bar") match {
+ case Bar => println("What?")
case _ => println("OK")
}
- Foo("Baz") match {
- case Baz() => println("What?")
+ Foo("Baz") match {
+ case Baz() => println("What?")
case _ => println("OK")
- }
+ }
}
diff --git a/test/files/run/t1005.scala b/test/files/run/t1005.scala
index 5ccd89dd85..60129bcc51 100644
--- a/test/files/run/t1005.scala
+++ b/test/files/run/t1005.scala
@@ -10,7 +10,7 @@ object Test
object FromPoly{
def main(args : Array[String]) = (new Bar[AnyRef](Array[AnyRef]("Halp!"))).bar
}
-
+
def main(args: Array[String]): Unit = {
println(FromMono main null mkString)
println(FromPoly main null mkString)
diff --git a/test/files/run/t1141.scala b/test/files/run/t1141.scala
index 9641343c7e..ee4f2e7fd2 100644
--- a/test/files/run/t1141.scala
+++ b/test/files/run/t1141.scala
@@ -2,6 +2,6 @@ object Test extends App {
val foo = new {
def apply(args : String*) = args foreach println
}
-
+
foo("var", "args")
}
diff --git a/test/files/run/t1167.scala b/test/files/run/t1167.scala
index 3dd0a30c00..c2ec4cff4e 100644
--- a/test/files/run/t1167.scala
+++ b/test/files/run/t1167.scala
@@ -10,17 +10,17 @@ trait Test1 {
/* getName
* Returns the binary name of the class if this class object represents a
- * reference type that is not an array type.
+ * reference type that is not an array type.
* getSimpleName
* Returns the simple name of the underlying class as given in the source
* code. Returns an empty string if the underlying class is anonymous.
*/
abstract class Foo {
override def toString = getClass.getSimpleName
-
+
abstract class Bar {
override def toString = getClass.getSimpleName
- }
+ }
}
object Test extends App {
diff --git a/test/files/run/t1220.scala b/test/files/run/t1220.scala
index 75e0ea07e8..0ba188d02d 100644
--- a/test/files/run/t1220.scala
+++ b/test/files/run/t1220.scala
@@ -1,7 +1,7 @@
object Test extends App {
class QSRichIterable[A](self: Iterable[A]) {
- def filterMap[R](f: PartialFunction[A,R]) =
+ def filterMap[R](f: PartialFunction[A,R]) =
self filter (f.isDefinedAt) map f
}
diff --git a/test/files/run/t1300.scala b/test/files/run/t1300.scala
index aa3580e33c..ce2f80eb4e 100644
--- a/test/files/run/t1300.scala
+++ b/test/files/run/t1300.scala
@@ -4,10 +4,10 @@ object Test extends App
// val a1 = x1.toArray[Any]
val a2 = Array('a','b','c','d').toArray[Any]
val a3 = Array("e","f","g","h").toArray[Any]
-
+
Array.copy(a3, 0, a1, 0, 4)
Array.copy(a2, 0, a3, 0, 4)
Array.copy(a2, 0, a1, 0, 4)
-
+
println(a1.mkString + a2.mkString + a3.mkString)
}
diff --git a/test/files/run/t1309.scala b/test/files/run/t1309.scala
index 84963549a2..b6a75fe6ae 100644
--- a/test/files/run/t1309.scala
+++ b/test/files/run/t1309.scala
@@ -1,6 +1,6 @@
object Test {
def f(ras: => IndexedSeq[Byte]): IndexedSeq[Byte] = ras
-
+
def main(args: Array[String]): Unit = {
f(new Array[Byte](0))
}
diff --git a/test/files/run/t1323.scala b/test/files/run/t1323.scala
index 94b51bd2a4..8209b85219 100644
--- a/test/files/run/t1323.scala
+++ b/test/files/run/t1323.scala
@@ -3,9 +3,9 @@ object Test extends App {
println(" 2:" + List(1,2,3,4).indexOfSlice(List(1,2))) // 0
println(" 3:" + List(1,2,3,4).indexOfSlice(List(2,3))) // 1
println(" 4:" + List(1,2,3,4).indexOfSlice(List(3,4))) // 2
- println(" 5:" + List(1,2,3,4).indexOfSlice(List(4,5))) // -1
+ println(" 5:" + List(1,2,3,4).indexOfSlice(List(4,5))) // -1
println(" 6:" + List(1,2,3,4).indexOfSlice(List(2,4))) // -1
- println(" 7:" + List(1,2,3,4).indexOfSlice(List(4,3))) // -1
+ println(" 7:" + List(1,2,3,4).indexOfSlice(List(4,3))) // -1
println(" 8:" + List(1,2,3,4).indexOfSlice(List(1,3))) // -1
println(" 9:" + List(1,2,3,4).indexOfSlice(List(1,3))) // -1
println("10:" + List(1,2,3,4).indexOfSlice(List(1,2,3,4))) // 0
diff --git a/test/files/run/t1333.scala b/test/files/run/t1333.scala
index 1696629cbb..514b4ffc8a 100644
--- a/test/files/run/t1333.scala
+++ b/test/files/run/t1333.scala
@@ -1,11 +1,11 @@
object Test {
case class A(x: Int)(y: Int)(z: String)
-
+
def f(x: Any) = x match {
case A(x) => x
case _ => -1
}
-
+
def main(args: Array[String]): Unit = {
println(f(A(10)(20)("abc")))
println(f(A(-10)(20)("abc")))
diff --git a/test/files/run/t1423.scala b/test/files/run/t1423.scala
index 073483aeee..44c6653287 100644
--- a/test/files/run/t1423.scala
+++ b/test/files/run/t1423.scala
@@ -5,4 +5,4 @@ object Test extends App{
case 1L => println(1);
case _ => println("????");
}
-}
+}
diff --git a/test/files/run/t1427.scala b/test/files/run/t1427.scala
index ab0a42c7b7..21bd71ffef 100644
--- a/test/files/run/t1427.scala
+++ b/test/files/run/t1427.scala
@@ -9,7 +9,7 @@ object Test {
def main(args: Array[String]): Unit = {
val x = new Bob[List]
val results = List(x, new Bob[Set], 55) map (x foo _)
-
+
assert(results == List(true, true, false))
}
}
diff --git a/test/files/run/t1500.scala b/test/files/run/t1500.scala
index ce6278cd05..c312a9a883 100644
--- a/test/files/run/t1500.scala
+++ b/test/files/run/t1500.scala
@@ -1,23 +1,23 @@
-import scala.tools.nsc._
+import scala.tools.nsc._
object Test {
-
+
/**
* Type inference overlooks constraints posed by type parameters in annotations on types.
*/
-
+
val testCode = <code>
-
+
class posingAs[A] extends TypeConstraint
-
+
def resolve[A,B](x: A @posingAs[B]): B = x.asInstanceOf[B]
-
+
val x = resolve(7: @posingAs[Any])
-
+
</code>.text
-
+
def main(args: Array[String]) = {
-
+
val settings = new Settings()
settings.classpath.value = System.getProperty("java.class.path")
val tool = new Interpreter(settings)
@@ -35,11 +35,11 @@ object Test {
}
}
-
+
global.addAnnotationChecker(checker)
-
+
tool.interpret(testCode)
-
+
}
}
diff --git a/test/files/run/t1501.scala b/test/files/run/t1501.scala
index f1eb8f287d..05e4da8c7a 100644
--- a/test/files/run/t1501.scala
+++ b/test/files/run/t1501.scala
@@ -1,15 +1,15 @@
-import scala.tools.nsc._
+import scala.tools.nsc._
object Test {
-
+
/**
* ...
*/
-
+
val testCode = <code>
-
+
class xyz[A] extends TypeConstraint
-
+
def loopWhile[T](cond: =>Boolean)(body: =>(Unit @xyz[T])): Unit @ xyz[T] = {{
if (cond) {{
body
@@ -24,9 +24,9 @@ object Test {
(): @xyz[Int]
}}
}}
-
+
</code>.text
-
+
def main(args: Array[String]) = {
val settings = new Settings()
settings.classpath.value = System.getProperty("java.class.path")
@@ -45,11 +45,11 @@ object Test {
}
}
-
+
global.addAnnotationChecker(checker)
-
+
tool.interpret(testCode)
-
+
}
}
diff --git a/test/files/run/t1537.scala b/test/files/run/t1537.scala
index 1dce501990..ddbfb29ac4 100644
--- a/test/files/run/t1537.scala
+++ b/test/files/run/t1537.scala
@@ -4,15 +4,15 @@ trait Syntax {
trait Evaluation {
val syntax: Syntax
-
+
def equalInTrait = this.syntax.Foo == this.syntax.Foo
}
object Test extends Evaluation with App {
- object syntax extends Syntax
+ object syntax extends Syntax
def equalInObject = this.syntax.Foo == this.syntax.Foo
-
+
println(equalInTrait)
println(equalInObject)
}
diff --git a/test/files/run/t1591.scala b/test/files/run/t1591.scala
index 6dd9605042..bd43f0b23d 100644
--- a/test/files/run/t1591.scala
+++ b/test/files/run/t1591.scala
@@ -1,8 +1,8 @@
abstract class A {
-
+
lazy val lazyBar = bar
-
- object bar {
+
+ object bar {
val foo = 12
}
diff --git a/test/files/run/t1718.scala b/test/files/run/t1718.scala
index d1b19c38cd..358bd1be5a 100644
--- a/test/files/run/t1718.scala
+++ b/test/files/run/t1718.scala
@@ -1,10 +1,10 @@
object Test extends App{
- def matchesNull[T](mightBeNull: Array[T]): Boolean = mightBeNull match {
+ def matchesNull[T](mightBeNull: Array[T]): Boolean = mightBeNull match {
case null => true
case x => false
}
val nullArray: Array[String] = null
- println(matchesNull(nullArray))
+ println(matchesNull(nullArray))
}
diff --git a/test/files/run/t1766.scala b/test/files/run/t1766.scala
index 638384d4f9..2afd883755 100644
--- a/test/files/run/t1766.scala
+++ b/test/files/run/t1766.scala
@@ -1,16 +1,16 @@
object Test extends App {
-
+
class C(s: String) {
-
+
def this(i: Int) = this("bar")
-
+
def f = {
val v: { def n: Int } = new { val n = 3 }
v.n
}
-
+
}
-
+
new C("foo").f
-
+
}
diff --git a/test/files/run/t1773.scala b/test/files/run/t1773.scala
index 7c95df62f8..c50b62512f 100644
--- a/test/files/run/t1773.scala
+++ b/test/files/run/t1773.scala
@@ -7,6 +7,6 @@ object Test extends App
<a>{""}</a>,
<a>{ if (true) "" else "I like turtles" }</a>
)
-
+
for (x1 <- xs; x2 <- xs) assert (x1 xml_== x2)
}
diff --git a/test/files/run/t1829.scala b/test/files/run/t1829.scala
index 8240527424..7c39d33ae9 100644
--- a/test/files/run/t1829.scala
+++ b/test/files/run/t1829.scala
@@ -1,6 +1,6 @@
object Test{
def main(args : Array[String]){
- import scala.collection.immutable._
+ import scala.collection.immutable._
assert(IntMap.empty == HashMap.empty);
assert(HashMap.empty == IntMap.empty);
assert(LongMap.empty == HashMap.empty);
diff --git a/test/files/run/t2029.scala b/test/files/run/t2029.scala
index 32b04f0b47..1cbe97a350 100644
--- a/test/files/run/t2029.scala
+++ b/test/files/run/t2029.scala
@@ -3,10 +3,10 @@ object Test{
import scala.collection.immutable.TreeSet;
val mainSet = TreeSet(1 to 5 :_*)
-
+
var compareCalled = false;
val smallerSet = TreeSet(2 to 4 :_*)(Ordering[Int].reverse)
-
+
println(mainSet.mkString(","))
println(smallerSet.mkString(","))
println(smallerSet.subsetOf(mainSet));
diff --git a/test/files/run/t2074_2.scala b/test/files/run/t2074_2.scala
index 4624170f89..1f59e0b8a1 100644
--- a/test/files/run/t2074_2.scala
+++ b/test/files/run/t2074_2.scala
@@ -12,7 +12,7 @@ object Test {
def iterator = underlying.iterator
}
val w = IndexedSeq(1, 2, 3).view
-
+
def main(args: Array[String]): Unit = {
println(v)
println(w)
diff --git a/test/files/run/t2087-and-2400.scala b/test/files/run/t2087-and-2400.scala
index 19a5df26e3..93cd633ffb 100644
--- a/test/files/run/t2087-and-2400.scala
+++ b/test/files/run/t2087-and-2400.scala
@@ -3,14 +3,14 @@ object Test
def negativeCharMaker = new (Short => Char) { def apply(x: Short) = x.toChar }
def main(args: Array[String]): Unit = {
// throws exception if -100 gets to Character.valueOf
- val x = negativeCharMaker(-100)
-
+ val x = negativeCharMaker(-100)
+
// chars are unsigned, they should never be equal to negative values
assert((-100).toShort != (-100).toChar)
assert((-100).toChar != (-100).toShort)
assert((-100).toChar != (-100).toByte)
assert((-100).toByte != (-100).toChar)
-
+
// BoxesRunTime must agree as well
assert(((-100).toShort: Any) != (-100).toChar)
assert(((-100).toChar: Any) != (-100).toShort)
diff --git a/test/files/run/t2124.scala b/test/files/run/t2124.scala
index e72deb09bc..a4fd654d76 100644
--- a/test/files/run/t2124.scala
+++ b/test/files/run/t2124.scala
@@ -9,7 +9,7 @@ object Test {
println(new RuleTransformer(new RewriteRule {
- override def transform(n: Node): NodeSeq = {
+ override def transform(n: Node): NodeSeq = {
val result = n match {
case <t>{_*}</t> => <q/>
diff --git a/test/files/run/t2125.scala b/test/files/run/t2125.scala
index 8314e4f019..a10ed9827b 100644
--- a/test/files/run/t2125.scala
+++ b/test/files/run/t2125.scala
@@ -5,11 +5,11 @@ import scala.xml.transform._
object Test {
val sampleXml = <xml:group><p><lost/><t><s><r></r></s></t></p></xml:group>
-
+
def main(args: scala.Array[String]) {
println(new RuleTransformer(new RewriteRule {
- override def transform(n: Node): NodeSeq = {
+ override def transform(n: Node): NodeSeq = {
val result = n match {
diff --git a/test/files/run/t2276.scala b/test/files/run/t2276.scala
index ed5714e9fa..f0404e5fab 100644
--- a/test/files/run/t2276.scala
+++ b/test/files/run/t2276.scala
@@ -2,7 +2,7 @@ import scala.xml._
import scala.xml.transform._
object Test extends App {
- val inputXml : Node =
+ val inputXml : Node =
<root>
<subnode>
<version>1</version>
diff --git a/test/files/run/t2308a.scala b/test/files/run/t2308a.scala
index fff158c772..abb568064a 100644
--- a/test/files/run/t2308a.scala
+++ b/test/files/run/t2308a.scala
@@ -1,7 +1,7 @@
object Test {
trait T[M[_]]
-
+
def f1 = classOf[T[X] forSome { type X[_] } ]
-
+
def main(args: Array[String]): Unit = println(f1)
}
diff --git a/test/files/run/t2354.scala b/test/files/run/t2354.scala
index f46db13a95..5419911ac3 100644
--- a/test/files/run/t2354.scala
+++ b/test/files/run/t2354.scala
@@ -8,7 +8,7 @@ object Test
val parser1 = ConstructingParser.fromSource(Source.fromString(xml_good),false)
val parser2 = ConstructingParser.fromSource(Source.fromString(xml_bad),false)
-
+
def main(args: Array[String]): Unit = {
parser1.document
parser2.document
diff --git a/test/files/run/t2417.scala b/test/files/run/t2417.scala
index 6200e33025..2d0bc2d405 100644
--- a/test/files/run/t2417.scala
+++ b/test/files/run/t2417.scala
@@ -1,6 +1,6 @@
// #2417
object Test {
-
+
def parallel(numThreads: Int)(block: => Unit) {
var failure: Throwable = null
val threads = Array.tabulate(numThreads)(i => new Thread {
@@ -16,7 +16,7 @@ object Test {
for (t <- threads) t.join
if (failure != null) println("FAILURE: " + failure)
}
-
+
def testSet(initialSize: Int, numThreads: Int, passes: Int) {
val orig = Set.empty ++ (1 to initialSize)
parallel(numThreads) {
@@ -32,7 +32,7 @@ object Test {
}
}
}
-
+
def testMap(initialSize: Int, numThreads: Int, passes: Int) {
val orig = Map.empty ++ ((1 to initialSize) map ((_,"v")))
parallel(numThreads) {
@@ -48,28 +48,28 @@ object Test {
}
}
}
-
+
def main(args: Array[String]) {
println("testing small Map that doesn't promote to HashMap...")
testMap(4, 2, 1000000)
println()
-
+
println("testing single-threaded HashMap use...")
testMap(5, 1, 1000000)
println()
-
+
println("testing HashMap.size from multiple threads...")
testMap(5, 2, 1000000)
println()
-
+
println("testing small Set that doesn't promote to HashSet...")
testSet(4, 2, 1000000)
println()
-
+
println("testing single-threaded HashSet use...")
testSet(5, 1, 1000000)
println()
-
+
println("testing HashSet.size from multiple threads...")
testSet(5, 2, 1000000)
println()
diff --git a/test/files/run/t2512.scala b/test/files/run/t2512.scala
index 8166839a9a..de20af5e72 100644
--- a/test/files/run/t2512.scala
+++ b/test/files/run/t2512.scala
@@ -3,11 +3,11 @@ import scala.tools.nsc.util.HashSet
object Test {
val runs = 10000
class Bop
-
+
def main(args: Array[String]): Unit = {
val set: HashSet[Bop] = HashSet("Bop", 16)
(1 to runs).toList foreach (_ => set addEntry new Bop)
-
+
assert(runs == set.size && set.size == set.iterator.length)
}
}
diff --git a/test/files/run/t2514.scala b/test/files/run/t2514.scala
index e23b441ecf..21c4afb472 100644
--- a/test/files/run/t2514.scala
+++ b/test/files/run/t2514.scala
@@ -1,7 +1,7 @@
object Test
{
implicit def x[A](a: A) = new { def xx = a }
-
+
def main(args: Array[String]): Unit = {
val r1 = 12 xx;
val r2 = 12.xx
@@ -9,7 +9,7 @@ object Test
val r4 = 12.xx + 12.xx
val r5 = 12.`xx` + 12.xx
val r6 = 12.3.`xx` + 12.xx
-
+
assert(r5 == 24)
}
} \ No newline at end of file
diff --git a/test/files/run/t2526.scala b/test/files/run/t2526.scala
index 53f3059135..d37185535f 100644
--- a/test/files/run/t2526.scala
+++ b/test/files/run/t2526.scala
@@ -4,18 +4,18 @@
*/
object Test {
import collection._
-
+
def main(args: Array[String]) {
val m = new mutable.HashMap[String, String]
-
+
/* Use non hash-based structure for verification */
val keys = List("a", "b", "c", "d", "e")
val valueSuffix = "value"
val values = keys.map(_ + valueSuffix)
val entries = keys.zip(values)
-
+
for (k <- keys) m(k) = k + valueSuffix
-
+
assertForeach(keys, m.keySet.iterator)
assertForeach(keys, m.keysIterator)
assertForeach(keys, m.keySet)
@@ -25,7 +25,7 @@ object Test {
assertForeach(entries, m)
}
-
+
/* Checks foreach of `actual` goes over all the elements in `expected` */
private def assertForeach[E](expected: Traversable[E], actual: Iterator[E]): Unit = {
val notYetFound = new mutable.ArrayBuffer[E]() ++= expected
@@ -35,12 +35,12 @@ object Test {
}
assert(notYetFound.size == 0, "mutable.HashMap.foreach should have iterated over: " + notYetFound)
}
-
- /*
+
+ /*
* Checks foreach of `actual` goes over all the elements in `expected`
* We duplicate the method above because there is no common inteface between Traversable and
* Iterator and we want to avoid converting between collections to ensure that we test what
- * we mean to test.
+ * we mean to test.
*/
private def assertForeach[E](expected: Traversable[E], actual: Traversable[E]): Unit = {
val notYetFound = new mutable.ArrayBuffer[E]() ++= expected
diff --git a/test/files/run/t2552.scala b/test/files/run/t2552.scala
index 0c6b4f005b..17dcac596b 100644
--- a/test/files/run/t2552.scala
+++ b/test/files/run/t2552.scala
@@ -2,11 +2,11 @@ object Test extends App {
def testTakeWhile = {
val numbers = Iterator.range(0, 50)
val zeroTo9 = numbers.takeWhile(x => { println("p(" + x + ")"); x < 10 } )
-
+
zeroTo9.foreach(println _)
-
+
val zeroTo1 = Iterator.range(0, 20).takeWhile(x => { println("p(" + x + ")"); x < 2 } )
-
+
println(zeroTo1.hasNext)
println(zeroTo1.hasNext)
println(zeroTo1.next)
@@ -15,16 +15,16 @@ object Test extends App {
println(zeroTo1.hasNext)
println(zeroTo1.hasNext)
}
-
+
def testFilter = {
val predicate = (x: Int) => { println("p(" + x + ")"); x % 2 == 0 }
-
+
val evens = Iterator.range(0, 10).filter(predicate)
-
+
println(evens.hasNext)
println(evens.hasNext)
println(evens.next)
-
+
evens.foreach(println _)
}
diff --git a/test/files/run/t2636.scala b/test/files/run/t2636.scala
index 8c49a733fd..3271f79ffc 100644
--- a/test/files/run/t2636.scala
+++ b/test/files/run/t2636.scala
@@ -3,28 +3,28 @@ object Test
type Foo = { def update(x: Int, value: String): Unit }
type Foo2 = { def update(x: Int, value: String): Int }
type Foo3 = { def update(x: Int, value: String): Array[Int] }
-
+
def alen() = {
type L1 = { def length: Int }
def len(p: L1) = p.length
val x: L1 = Array(1,2,3)
len(x)
}
-
+
type A1 = { def apply(x: Int): String }
def arrApply(a: A1, x: Int) = a(x)
-
+
def main(args: Array[String]): Unit = {
val arr = new Array[String](3)
val p1: Foo = arr
def a1 = p1(0) = "b"
val p2: Foo2 = new { def update(x: Int, value: String) = { p1(1) = "o" ; 1 } }
- def a2 = p2(0) = "c"
-
+ def a2 = p2(0) = "c"
+
val p3: Foo3 = new { def update(x: Int, value: String) = { p1(2) = "b" ; Array(1) } }
def a3 = p3(10) = "hi mom"
-
+
a1 ; a2 ; a3 ;
assert(arr.mkString == "bob")
diff --git a/test/files/run/t266.scala b/test/files/run/t266.scala
index 20a29dabbb..1fd6dab185 100644
--- a/test/files/run/t266.scala
+++ b/test/files/run/t266.scala
@@ -2,9 +2,9 @@
trait O {
self: Test.type =>
-
+
Nil foreach identity
-
+
def f = (1 to 10).toList map identity
}
diff --git a/test/files/run/t2721.scala b/test/files/run/t2721.scala
index 8bd03bc838..93af884a60 100644
--- a/test/files/run/t2721.scala
+++ b/test/files/run/t2721.scala
@@ -2,9 +2,9 @@ object Test
{
val xml1 = <root xmlns:ns="nsUri" ns:at="rootVal"><sub ns:at="subVal"/></root>
val xml2= scala.xml.XML.loadString("""<root xmlns:ns="nsUri" ns:at="rootVal"><sub ns:at="subVal"/></root>""")
-
+
def backslashSearch(x: xml.Elem) = "root:-"+(x \ "@{nsUri}at") +"-sub:-"+(x \ "sub" \ "@{nsUri}at") +"-"
-
+
def main(args: Array[String]): Unit = {
println(backslashSearch(xml1))
println(backslashSearch(xml2))
diff --git a/test/files/run/t2755.scala b/test/files/run/t2755.scala
index 8d10b56734..c279ecc24e 100644
--- a/test/files/run/t2755.scala
+++ b/test/files/run/t2755.scala
@@ -28,7 +28,7 @@ object Test {
case x: Array[_] => 6
case _ => 7
}
-
+
def main(args: Array[String]): Unit = {
println(f1(Array(1, 2, 3)))
@@ -38,7 +38,7 @@ object Test {
println(f1(new Array[Any](10))) // should match as Array[AnyRef]
println(f1(Array(1L)))
println(f1(null))
-
+
println(f2(Array(1, 2, 3)))
println(f2(Array(1.0, -2.0, 3.0, 1.0)))
println(f2(Array(1.0f, 2.0f, 3.0f, -3.0f)))
@@ -46,7 +46,7 @@ object Test {
println(f2(new Array[Any](10))) // should match as Array[AnyRef]
println(f2(Array(1L)))
println(f2(null))
-
+
println(f3(Array(1, 2, 3)))
println(f3(Array(1.0, -2.0, 3.0, 1.0)))
println(f3(Array(1.0f, 2.0f, 3.0f, -3.0f)))
diff --git a/test/files/run/t2800.scala b/test/files/run/t2800.scala
index 84d1de0507..cc6fb30bbc 100644
--- a/test/files/run/t2800.scala
+++ b/test/files/run/t2800.scala
@@ -3,20 +3,20 @@ object Test {
def f2 = (5: Any) match { case List(x @ _*) => x ; case _ => false }
def f3 = (Nil: Any) match { case List(x @ _*) => x ; case _ => false }
def f4 = (Array(1): Any) match { case List(x @ _*) => x ; case _ => false }
-
+
def f5 = ("": Any) match { case Array(x @ _*) => x ; case _ => false }
def f6 = (5: Any) match { case Array(x @ _*) => x ; case _ => false }
def f7 = (Nil: Any) match { case Array(x @ _*) => x ; case _ => false }
def f8 = (Array(1): Any) match { case Array(x @ _*) => x ; case _ => false }
-
+
def f9 = ("": Any) match { case x @ List(_*) => x ; case _ => false }
def f10 = ("": Any) match { case List(_*) => true ; case _ => false }
def f11 = (Nil: Any) match { case List(_*) => true ; case _ => false }
def f12 = ("": Any) match { case x @ Array(_*) => x ; case _ => false }
def f13 = ("": Any) match { case Array(_*) => true ; case _ => false }
def f14 = (Nil: Any) match { case Array(_*) => true ; case _ => false }
-
-
+
+
def main(args: Array[String]): Unit = {
println(f1)
println(f2)
diff --git a/test/files/run/t2849.scala b/test/files/run/t2849.scala
index cadf605ae0..0995f64010 100644
--- a/test/files/run/t2849.scala
+++ b/test/files/run/t2849.scala
@@ -16,9 +16,9 @@ object Test {
def ticketExample {
var big = 100000
-
+
var aSortedSet: SortedSet[Int] = TreeSet(big)
-
+
for (i <- 1 until N) {
aSortedSet = (aSortedSet - big) ++ (TreeSet(i, big - 1))
big -= 1
@@ -42,7 +42,7 @@ object Test {
}
}
}
-
+
}
diff --git a/test/files/run/t2867.scala b/test/files/run/t2867.scala
index 25e55eaecd..0d30f95f8d 100644
--- a/test/files/run/t2867.scala
+++ b/test/files/run/t2867.scala
@@ -1,6 +1,6 @@
object Test {
- case class A(l: List[_]*)
-
+ case class A(l: List[_]*)
+
def main(args: Array[String]): Unit = {
/** Kind of sneaking a slightly different test in here as well as
* testing 2867. How subversive.
@@ -9,7 +9,7 @@ object Test {
val xs2 = List(1.0, 2.0, 3.0)
val xs3 = List[Any](1.0f, 2.0f, 3.0f)
val xs4 = List[Byte](1, 2, 3)
-
+
assert(A(List(xs1, xs2)) == A(List(xs3, xs4)))
}
}
diff --git a/test/files/run/t2958.scala b/test/files/run/t2958.scala
index dcd24ecc36..b9563a1b77 100644
--- a/test/files/run/t2958.scala
+++ b/test/files/run/t2958.scala
@@ -2,14 +2,14 @@ object Test {
def f(args: Array[String]) = args match {
case Array("-p", prefix, from, to) =>
prefix + from + to
-
+
case Array(from, to) =>
from + to
case _ =>
"default"
}
-
+
def main(args: Array[String]) {
assert(f(Array("1", "2")) == "12")
}
diff --git a/test/files/run/t3026.scala b/test/files/run/t3026.scala
index 22dde9cc03..0231c7bcd1 100755
--- a/test/files/run/t3026.scala
+++ b/test/files/run/t3026.scala
@@ -3,6 +3,6 @@ object Test {
case object RED extends Colour
case object YELLOW extends Colour
val items = Array(RED, YELLOW)
-
+
def main(args: Array[String]): Unit = items foreach println
}
diff --git a/test/files/run/t3038.scala b/test/files/run/t3038.scala
index 7eb69f7fb5..986fc982e7 100644
--- a/test/files/run/t3038.scala
+++ b/test/files/run/t3038.scala
@@ -2,18 +2,18 @@ class A {
private lazy val a1 = "a1"
object B
private lazy val a2 = "a2"
-
+
@transient lazy val a3 = "a3"
@transient private lazy val a4 = "a4"
@transient lazy val a5 = "a5"
@transient private lazy val a6 = "a6"
-
+
final val a7 = "a7"
private final val a8 = "a8"
@transient final val a9 = "a9"
-
-
+
+
def run = {
@@ -27,13 +27,13 @@ class A {
println(a7)
println(a8)
println(a9)
- }
+ }
}
class C extends A {
private lazy val c1 = "c1"
lazy val c2 = "c2"
-
+
private lazy val c3 = "c3"
@transient lazy val c4 = "c4"
@@ -41,7 +41,7 @@ class C extends A {
@transient lazy val c6 = "c6"
@transient private lazy val c7 = "c7"
lazy val c8 = "c8"
-
+
final val c9 = "c9"
private final val c10 = "c10"
diff --git a/test/files/run/t3038c/A_1.scala b/test/files/run/t3038c/A_1.scala
index 91564e3021..14579fcf67 100644
--- a/test/files/run/t3038c/A_1.scala
+++ b/test/files/run/t3038c/A_1.scala
@@ -59,7 +59,7 @@ class A {
lazy val a57 = 58
lazy val a58 = 59
lazy val a59 = 60
- private lazy val a60 = 61
+ private lazy val a60 = 61
private lazy val a61 = 62
private lazy val a62 = 63
private lazy val a63 = 64
@@ -69,7 +69,7 @@ class A {
private lazy val a67 = 68
private lazy val a68 = 69
private lazy val a69 = 70
-
+
def run = {
println(List(a0, a1, a2, a3, a4, a5, a6, a7, a8, a9,
a10, a11, a12, a13, a14, a15, a16, a17, a18, a19,
diff --git a/test/files/run/t3038d.scala b/test/files/run/t3038d.scala
index a92e3532a8..6cd2d83776 100644
--- a/test/files/run/t3038d.scala
+++ b/test/files/run/t3038d.scala
@@ -22,13 +22,13 @@ class Bar extends Foo {
@transient protected var first: Any = null
def size = a
@transient var second: Any = null
-
+
def checkMember { first }
-
+
private def writeObject(out: java.io.ObjectOutputStream) {
serializeTo(out)
}
-
+
private def readObject(in: java.io.ObjectInputStream) {
first = null
init(in)
@@ -40,7 +40,7 @@ object Test {
val in = new java.io.ObjectInputStream(new java.io.ByteArrayInputStream(bytes))
in.readObject.asInstanceOf[A]
}
-
+
private def toBytes(o: AnyRef): Array[Byte] = {
val bos = new java.io.ByteArrayOutputStream
val out = new java.io.ObjectOutputStream(bos)
@@ -49,7 +49,7 @@ object Test {
bos.toByteArray
}
-
+
def main(args: Array[String]) {
val a1 = new Bar()
val serialized:Array[Byte] = toBytes(a1)
diff --git a/test/files/run/t3050.scala b/test/files/run/t3050.scala
index d1f3f13bec..ca9d91e191 100644
--- a/test/files/run/t3050.scala
+++ b/test/files/run/t3050.scala
@@ -1,9 +1,9 @@
object Test {
def main(args: Array[String]): Unit = {
- val x =
+ val x =
try { ("": Any) match { case List(_*) => true } }
catch { case _ => false }
-
+
assert(!x)
}
}
diff --git a/test/files/run/t3112.scala b/test/files/run/t3112.scala
index eb8eec6327..88677fa09e 100644
--- a/test/files/run/t3112.scala
+++ b/test/files/run/t3112.scala
@@ -7,5 +7,5 @@ object Test {
println((Vector() ++ (0 until 32)) takeRight 0) // works
println((Vector() ++ (0 until 33)) takeRight 0) // error
}
-
+
} \ No newline at end of file
diff --git a/test/files/run/t3150.scala b/test/files/run/t3150.scala
index 034703b5f7..8acdb50354 100644
--- a/test/files/run/t3150.scala
+++ b/test/files/run/t3150.scala
@@ -1,7 +1,7 @@
object Test {
case object Bob { override def equals(other: Any) = true }
def f(x: Any) = x match { case Bob => Bob }
-
+
def main(args: Array[String]): Unit = {
assert(f(Bob) eq Bob)
assert(f(0) eq Bob)
diff --git a/test/files/run/t3158.scala b/test/files/run/t3158.scala
index c824b62e96..2261b5cd81 100644
--- a/test/files/run/t3158.scala
+++ b/test/files/run/t3158.scala
@@ -1,6 +1,6 @@
object Test {
def main(args: Array[String]) {
- println(args.map(_ => foo _).deep)
+ println(args.map(_ => foo _).deep)
}
def foo(xs: String*) {
diff --git a/test/files/run/t3175.scala b/test/files/run/t3175.scala
index 78660d4085..aff2e67d0d 100644
--- a/test/files/run/t3175.scala
+++ b/test/files/run/t3175.scala
@@ -6,46 +6,46 @@ object Test {
def f1(x:{ def apply(x: Int): Long }) = x(0)
def f2(x:{ def apply(x: Int): Byte }) = x(0)
def f3(x:{ def apply(x: Int): String }) = x(0).length
-
+
def f4(x:{ def update(x: Int, y: Long): Unit }, y: Long) = x(0) = y
def f5(x:{ def update(x: Int, y: Byte): Unit }, y: Byte) = x(0) = y
def f6(x:{ def update(x: Int, y: String): Unit }, y: String) = x(0) = y
-
+
def f7(x: { def length: Any }) = x.length
-
+
def f8(x: { def apply(x: Int): Any }) = x(0)
def f9(x: { def apply(x: Int): Int }) = x(0)
def f10(x: { def apply(x: Int): Long }) = x(0)
-
+
// update has some interesting special cases
def f11(x:{ def update(x: Int, y: Long): Any }, y: Long) = x(0) = y
- def f12(x:{ def update(x: Int, y: String): AnyVal }, y: String) = x(0) = y
+ def f12(x:{ def update(x: Int, y: String): AnyVal }, y: String) = x(0) = y
def f13(x:{ def update(x: Int, y: String): AnyRef }, y: String) = x(0) = y
-
+
// doesn't work yet, see #3197
// def fclone(x:{ def clone(): AnyRef }) = x.clone()
-
+
def main(args: Array[String]): Unit = {
val longs = Array(5L)
val bytes = Array(5: Byte)
val strs = Array("abcde", "fghjij")
-
+
println(len(Array(1,2,3)) + len(Array(4.0,5.0f)) + len(Array("abc", 5)) + len("bop"))
println(f1(longs) + f2(bytes) + f3(strs))
-
+
f4(longs, 1)
f5(bytes, 1)
f6(strs, "a")
-
+
println(f1(longs) + f2(bytes) + f3(strs))
-
+
println(f7(Array(1,2,3)))
println(f7("def"))
-
+
println(f8(Array(5)))
println(f9(Array(5)))
println(f10(Array(5)))
-
+
f11(longs, 100L)
f12(strs, "jabooboo")
println(longs(0))
diff --git a/test/files/run/t3232.scala b/test/files/run/t3232.scala
index acb1a1e0e9..feff7e7089 100644
--- a/test/files/run/t3232.scala
+++ b/test/files/run/t3232.scala
@@ -4,14 +4,14 @@ object Test {
val r2 = 1 to Int.MaxValue
val r3 = Int.MinValue to -2
val r4 = Int.MinValue until -1
-
+
// some exceptional conditions
val e1 = () => (0 to Int.MaxValue).length
val e2 = () => (5 until 5).last
-
+
def main(args: Array[String]): Unit = {
List(r1, r2, r3, r4) foreach (x => assert(x.length == Int.MaxValue))
-
+
// exception required
List(e1, e2) foreach { f =>
try { f() ; assert(false) }
diff --git a/test/files/run/t3269.scala b/test/files/run/t3269.scala
index 17e42cdb0e..6fe727111c 100644
--- a/test/files/run/t3269.scala
+++ b/test/files/run/t3269.scala
@@ -4,6 +4,6 @@ object Test {
println(it.next)
it.hasNext
it.hasNext
- it.hasNext
+ it.hasNext
}
}
diff --git a/test/files/run/t3273.scala b/test/files/run/t3273.scala
index 379a8a29c1..a4dfc4b30c 100644
--- a/test/files/run/t3273.scala
+++ b/test/files/run/t3273.scala
@@ -1,7 +1,7 @@
object Test {
val num1: Stream[Int] = 1 #:: num1.map(_ + 1)
val num2: Stream[Int] = 1 #:: num2.iterator.map(_ + 1).toStream
-
+
def main(args: Array[String]): Unit = {
val x1 = (num1 take 10).toList
val x2 = (num2 take 10).toList
diff --git a/test/files/run/t3361.scala b/test/files/run/t3361.scala
index 892e36dbd9..7fbc6777f2 100644
--- a/test/files/run/t3361.scala
+++ b/test/files/run/t3361.scala
@@ -40,7 +40,7 @@ object Test extends App {
def insert_1 {
val ten = DoubleLinkedList(1 to 10: _*)
ten.append(DoubleLinkedList(11))
-
+
// Post-insert size test
require(11 == ten.size)
// Post-insert data test
diff --git a/test/files/run/t3395.scala b/test/files/run/t3395.scala
index b4990a1716..01cc431871 100644
--- a/test/files/run/t3395.scala
+++ b/test/files/run/t3395.scala
@@ -1,11 +1,11 @@
object Test {
def main(args: Array[String]): Unit = {
- Seq("") match {
+ Seq("") match {
case Seq("") => println("abc")
case Seq(_, _, x) => println(x)
}
-
- Seq(1, 2, "def") match {
+
+ Seq(1, 2, "def") match {
case Seq("") => println("abc")
case Seq(_, _, x) => println(x)
}
diff --git a/test/files/run/t3397.scala b/test/files/run/t3397.scala
index 2c8cbed3ab..243fe766de 100644
--- a/test/files/run/t3397.scala
+++ b/test/files/run/t3397.scala
@@ -1,7 +1,7 @@
object Test {
def main(args: Array[String]): Unit = {
val x = Seq(Set(1,2,3),Set(4,5,6),Set(7,8,9)).transpose
-
+
()
}
}
diff --git a/test/files/run/t3493.scala b/test/files/run/t3493.scala
index aafe7a3a4a..b0b7589cfd 100644
--- a/test/files/run/t3493.scala
+++ b/test/files/run/t3493.scala
@@ -3,7 +3,7 @@
object Test {
-
+
def main(args: Array[String]) {
import scala.collection.immutable._
val x = TreeSet("a", "b", "c", "d")
@@ -11,5 +11,5 @@ object Test {
assert(x2.toString == "TreeSet(a, b, c, d, e)")
assert(x2.toString == runtime.ScalaRunTime.stringOf(x2).trim)
}
-
+
}
diff --git a/test/files/run/t3496.scala b/test/files/run/t3496.scala
index e1aa032ab1..80a4e6bd86 100644
--- a/test/files/run/t3496.scala
+++ b/test/files/run/t3496.scala
@@ -4,12 +4,12 @@
// ticket #3496
object Test {
-
+
def main(args: Array[String]) {
val s = Stream.from(1)
s.take(5)
s.drop(5)
s.splitAt(5)
}
-
+
}
diff --git a/test/files/run/t3502.scala b/test/files/run/t3502.scala
index cc78e54c86..9492b2d4d4 100644
--- a/test/files/run/t3502.scala
+++ b/test/files/run/t3502.scala
@@ -5,7 +5,7 @@
// ticket #3502
object Test {
-
+
object GeneratePrimeFactorsLazy extends (Int => List[Int]) {
override def apply(n:Int) = {
val s = Stream.range(2, n / 2).filter(n % _ == 0)
@@ -13,12 +13,12 @@ object Test {
s.headOption.map(x => x :: apply(n / x)).getOrElse(List(n))
}
}
-
+
def main(args:Array[String]) {
// a prime number
//val num = 623456789
val num = 2796203
assert(GeneratePrimeFactorsLazy(num) == List(num))
}
-
+
}
diff --git a/test/files/run/t3509.scala b/test/files/run/t3509.scala
index 76f8d6016e..7ec150eb01 100644
--- a/test/files/run/t3509.scala
+++ b/test/files/run/t3509.scala
@@ -1,7 +1,7 @@
object Test {
- class Foo(final var i:Int)
-
+ class Foo(final var i:Int)
+
def main(args : Array[String]) : Unit = {
val foo = new Foo(0)
foo.i += 1
diff --git a/test/files/run/t3511.scala b/test/files/run/t3511.scala
index 30757b1a66..9b4d581462 100644
--- a/test/files/run/t3511.scala
+++ b/test/files/run/t3511.scala
@@ -6,31 +6,31 @@ import scala.collection.immutable._
// ticket #3511
object Test {
-
+
def main(args: Array[String]) {
assert(Stream.from(0).view.force.take(5) == List(0, 1, 2, 3, 4))
-
+
val s = Stream.from(0)
val smap = s.view.map(_ * 2).force.take(5)
assert(smap == List(0, 2, 4, 6, 8))
-
+
val sfilter = s.view.filter(_ % 2 == 0).force.take(5)
assert(sfilter == List(0, 2, 4, 6, 8))
-
+
val sflatmap = s.view.flatMap(n => List(n, n * 2)).force.take(6)
assert(sflatmap == List(0, 0, 1, 2, 2, 4))
-
+
val stakewhile = s.view.takeWhile(_ < 10).force
assert(stakewhile == List.range(0, 10))
-
+
val szip = s.view.zip(s.map(_ / 2)).force.take(5)
assert(szip == List((0, 0), (1, 0), (2, 1), (3, 1), (4, 2)))
-
+
val szipall = s.view.zipAll(List(0, 1, 2), 0, 0).force.take(5)
assert(szipall == List((0, 0), (1, 1), (2, 2), (3, 0), (4, 0)))
-
+
val spatch = s.view.patch(1, List(5, 5, 5), 5).force.take(5)
assert(spatch == List(0, 5, 5, 5, 6))
}
-
+
}
diff --git a/test/files/run/t3516.scala b/test/files/run/t3516.scala
index aa302ce85a..82a97f27de 100644
--- a/test/files/run/t3516.scala
+++ b/test/files/run/t3516.scala
@@ -1,7 +1,7 @@
object Test {
def mkIterator = (1 to 5).iterator map (x => { println(x) ; x })
def mkInfinite = Iterator continually { println(1) ; 1 }
-
+
def main(args: Array[String]): Unit = {
// Stream is strict in its head so we should see 1 from each of them.
val s1 = mkIterator.toStream
diff --git a/test/files/run/t3518.scala b/test/files/run/t3518.scala
index 033cc19548..36ca9daaa2 100644
--- a/test/files/run/t3518.scala
+++ b/test/files/run/t3518.scala
@@ -4,7 +4,7 @@ object Test {
val r3 = 10.0 to 1.0 by -0.5
val r4 = 1.0 until 1.0 by 1.0
val r5 = 1 to 100 by 2
-
+
def main(args: Array[String]): Unit = {
assert(r3 forall (r1 contains _))
assert(r1 forall (r3 contains _))
diff --git a/test/files/run/t3530.scala b/test/files/run/t3530.scala
index f6f7fb4229..3fedc66dbe 100644
--- a/test/files/run/t3530.scala
+++ b/test/files/run/t3530.scala
@@ -5,7 +5,7 @@ object Test {
case xs @ List(_*) => "list: " + xs.length
case _ => "not a list"
})
-
+
def f2[T](x: List[T]) = println(x match {
case List(_, _) => "two"
case List(_, _, _) => "three"
@@ -21,9 +21,9 @@ object Test {
f(Nil)
f(List(1,2,3,4,5))
f(null)
-
+
println
-
+
f2(List(1, 2))
f2(List('a', 'b', 'c'))
f2(List('a', 'b', 'c', 'd'))
diff --git a/test/files/run/t3540.scala b/test/files/run/t3540.scala
index 5ffacb5dff..4eb3de780b 100644
--- a/test/files/run/t3540.scala
+++ b/test/files/run/t3540.scala
@@ -2,6 +2,6 @@ object Test {
def main(args: Array[String]): Unit = {
assert(List.iterate(List(1,2,3), 4)(_.tail).last.isEmpty)
assert(Stream.iterate(Stream(1,2,3), 4)(_.tail).last.isEmpty)
- assert(Array.iterate(Array(1,2,3), 4)(_.tail).last.isEmpty)
+ assert(Array.iterate(Array(1,2,3), 4)(_.tail).last.isEmpty)
}
}
diff --git a/test/files/run/t3563.scala b/test/files/run/t3563.scala
index 8abbb60803..2a80ef412a 100644
--- a/test/files/run/t3563.scala
+++ b/test/files/run/t3563.scala
@@ -5,17 +5,17 @@
// ticket #3563
object Test {
-
+
def main(args: Array[String]) {
var sum = 0
val setseq = Set(1, 2, 3, 4).toSeq
setseq.map( n => { sum += n; n * n }).head
assert(sum == 10)
-
+
sum = 0
val mapseq = Map(1 -> 1, 2 -> 2, 3 -> 3, 4 -> 4).toSeq
mapseq.map( n => { sum += n._1; (n._1 + n._1, n._2 * n._2) }).head
assert(sum == 10)
}
-
+
}
diff --git a/test/files/run/t3580.scala b/test/files/run/t3580.scala
index 50ff6c4551..ac9f81ab9e 100644
--- a/test/files/run/t3580.scala
+++ b/test/files/run/t3580.scala
@@ -4,14 +4,14 @@
object Test {
-
+
class Empty extends Traversable[Nothing] {
def foreach[U](f: Nothing => U) {}
}
-
+
def main(args: Array[String]) {
val t = new Empty
t.toStream
}
-
+
}
diff --git a/test/files/run/t3603.scala b/test/files/run/t3603.scala
index a89cb7080a..a0821a2a45 100644
--- a/test/files/run/t3603.scala
+++ b/test/files/run/t3603.scala
@@ -2,17 +2,17 @@
object Test {
-
+
def main(args: Array[String]) {
import collection.immutable._
-
+
val intmap = IntMap(1 -> 1, 2 -> 2)
val intres = intmap.map { case (a, b) => (a, b.toString) }
assert(intres.isInstanceOf[IntMap[_]])
-
+
val longmap = LongMap(1L -> 1, 2L -> 2)
val longres = longmap.map { case (a, b) => (a, b.toString) }
assert(longres.isInstanceOf[LongMap[_]])
}
-
+
}
diff --git a/test/files/run/t3613.scala b/test/files/run/t3613.scala
index 3763093d30..c3b249571b 100644
--- a/test/files/run/t3613.scala
+++ b/test/files/run/t3613.scala
@@ -1,7 +1,7 @@
class Boopy {
private val s = new Schnuck
def observer : PartialFunction[ Any, Unit ] = s.observer
-
+
private class Schnuck extends javax.swing.AbstractListModel {
model =>
val observer : PartialFunction[ Any, Unit ] = {
@@ -10,13 +10,13 @@ class Boopy {
def getSize = 0
def getElementAt( idx: Int ) : AnyRef = "egal"
}
-
+
}
object Test {
def main(args: Array[String]): Unit = {
val x = new Boopy
val o = x.observer
- o( "Boopy" ) // --> throws runtime error
+ o( "Boopy" ) // --> throws runtime error
}
}
diff --git a/test/files/run/t3619.scala b/test/files/run/t3619.scala
index 3f4c56ea53..46324b4d69 100644
--- a/test/files/run/t3619.scala
+++ b/test/files/run/t3619.scala
@@ -17,7 +17,7 @@ object Test extends App {
}
}
*/
-
+
new Meh
}
diff --git a/test/files/run/t363.scala b/test/files/run/t363.scala
index c747be2ec9..5f3f30a098 100644
--- a/test/files/run/t363.scala
+++ b/test/files/run/t363.scala
@@ -3,7 +3,7 @@ object Test {
println("I love the smell of (Array[String])Unit in the morning.")
}
}
-
+
class Test {
def kurtz() = "We must kill them. We must incinerate them."
}
diff --git a/test/files/run/t3647.scala b/test/files/run/t3647.scala
index a970e887f6..434a13f414 100644
--- a/test/files/run/t3647.scala
+++ b/test/files/run/t3647.scala
@@ -13,10 +13,10 @@ object Test {
"line4"
).iterator)
assert(ps.filter(_ == '\n').size == 3)
-
+
val ps1 = PagedSeq.fromLines(List("Ok").iterator)
assert(ps1.filter(_ == '\n').size == 0)
-
+
val eps = PagedSeq.fromLines(List().iterator)
assert(eps.filter(_ == '\n').size == 0)
}
diff --git a/test/files/run/t3714.scala b/test/files/run/t3714.scala
index 2d600f97f1..c344b40f1f 100644
--- a/test/files/run/t3714.scala
+++ b/test/files/run/t3714.scala
@@ -21,7 +21,7 @@ object Test {
case BreakImpl(x) => x
case _ => -1
}
-
+
def main(args: Array[String]) {
val break = BreakImpl(22)
// assert(f1(break) == 22)
diff --git a/test/files/run/t3719.scala b/test/files/run/t3719.scala
index 01dc205545..4649f11bb1 100644
--- a/test/files/run/t3719.scala
+++ b/test/files/run/t3719.scala
@@ -1,7 +1,7 @@
object Days extends Enumeration {
type Day = DayValue
val Mon, Tue, Wed, Thu, Fri, Sat, Sun = new DayValue // DayValue
-
+
protected class DayValue extends Val {
def isWeekday: Boolean =
this match {
@@ -21,7 +21,7 @@ object Test extends App {
val d: Day = Mon
d.toString
}
-
+
def nameOfTue(): String = {
import Days._
val d: Day = Tue
diff --git a/test/files/run/t3822.scala b/test/files/run/t3822.scala
index c35804035e..eaf0a145d3 100644
--- a/test/files/run/t3822.scala
+++ b/test/files/run/t3822.scala
@@ -1,17 +1,17 @@
import scala.collection.{ mutable, immutable, generic }
import immutable.ListSet
-object Test {
+object Test {
def main(args: Array[String]): Unit = {
val xs = ListSet(-100000 to 100001: _*)
-
+
assert(xs.size == 200002)
assert(xs.sum == 100001)
-
+
val ys = ListSet[Int]()
val ys1 = (1 to 12).grouped(3).foldLeft(ys)(_ ++ _)
val ys2 = (1 to 12).foldLeft(ys)(_ + _)
-
+
assert(ys1 == ys2)
}
}
diff --git a/test/files/run/t3829.scala b/test/files/run/t3829.scala
index 780a6a95b7..e3d8c56882 100644
--- a/test/files/run/t3829.scala
+++ b/test/files/run/t3829.scala
@@ -1,11 +1,11 @@
// ticket #3829
object Test {
import collection.{ mutable, immutable }
-
+
def main(args: Array[String]) {
val map = immutable.Map(1 -> 2, 3 -> 4)
assert(map.get(0) == None)
-
+
// Since r24255 defaultMap.get(x) returns None rather than
// using the default, so these mostly use apply.
val defmap = map.withDefaultValue(-1)
@@ -19,10 +19,10 @@ object Test {
assert((defmap - 1)(0) == -1)
assert((defmap - 1)(1) == -1)
assert((defmap - 1)(3) == 4)
-
+
val mutmap = mutable.Map(1 -> 2, 2 -> 3)
assert(mutmap.get(0) == None)
-
+
val defmutmap = mutmap.withDefaultValue(-1)
assert(defmutmap(0) == -1)
assert(defmutmap(3) == -1)
@@ -36,5 +36,5 @@ object Test {
assert(defmutmap(1) == 2)
assert(mutmap(1) == 2)
}
-
+
}
diff --git a/test/files/run/t3855.scala b/test/files/run/t3855.scala
index 32dfb1e23d..e55714201f 100644
--- a/test/files/run/t3855.scala
+++ b/test/files/run/t3855.scala
@@ -1,7 +1,7 @@
object Test {
def byval[A](a: => A) = a
def closure[A](f: () => A) = f()
-
+
def f1(s: String) = {
var n = try { s.toInt } catch { case _ => 1 }
byval(n)
diff --git a/test/files/run/t3877.scala b/test/files/run/t3877.scala
index 5710e982a0..ce1e9283a7 100644
--- a/test/files/run/t3877.scala
+++ b/test/files/run/t3877.scala
@@ -11,7 +11,7 @@ object Test {
println("test1: " + d)
}
}
-
+
def test2 {
var d = 2
var i = 0
@@ -25,7 +25,7 @@ object Test {
return
}
}
-
+
def test3 {
var d = 2
var i = 0
@@ -34,9 +34,9 @@ object Test {
d = b
i += 1
println("test3: " + d)
- } while (d < LIMIT && i < LIMIT)
+ } while (d < LIMIT && i < LIMIT)
}
-
+
def test4 {
var d = 2
var i = 0
@@ -47,9 +47,9 @@ object Test {
println("test4: " + d)
if (d >= LIMIT || i >= LIMIT)
return
- } while (true)
+ } while (true)
}
-
+
def test5 {
var d = 2
var i = 0
@@ -58,7 +58,7 @@ object Test {
d = b
i += 1
println("test5.1: " + d)
-
+
var e = 2
var j = 0
while (e < LIMIT && j < LIMIT) {
@@ -69,7 +69,7 @@ object Test {
}
}
}
-
+
def main(args: Array[String]) {
test1
diff --git a/test/files/run/t3887.scala b/test/files/run/t3887.scala
index 16ce983efc..81fa7a917e 100644
--- a/test/files/run/t3887.scala
+++ b/test/files/run/t3887.scala
@@ -13,4 +13,4 @@ object Test {
val option1: (Int, String) = (1, "abc")
-}
+}
diff --git a/test/files/run/t3888.scala b/test/files/run/t3888.scala
index ecdf87e925..e0f1453b1d 100644
--- a/test/files/run/t3888.scala
+++ b/test/files/run/t3888.scala
@@ -3,13 +3,13 @@ object Test {
val T1 = new P
private[this] val T2 = T1
- def m1 =
+ def m1 =
(1, 2) match {
case T1 => true
case _ => false
}
- def m2 =
+ def m2 =
(1, 2) match {
case T2 => true
case _ => false
diff --git a/test/files/run/t3897/J_2.java b/test/files/run/t3897/J_2.java
index a4c9a98fb1..178412dc92 100644
--- a/test/files/run/t3897/J_2.java
+++ b/test/files/run/t3897/J_2.java
@@ -7,7 +7,7 @@ public class J_2 {
String name = fields[i].getName();
if (name.length() >= 7 && name.substring(0, 7).equals("bitmap$")) { }
else System.out.println("(" + name + "," + fields[i].getGenericType() + ")");
- }
+ }
}
public void f2(Class<?> clazz) {
Method[] methods = clazz.getDeclaredMethods();
@@ -15,7 +15,7 @@ public class J_2 {
String name = methods[i].getName();
if (name.length() >= 7 && name.substring(0, 7).equals("bitmap$")) { }
else System.out.println("(" + name + "," + methods[i].getGenericReturnType() + ")");
- }
+ }
}
public void javaRun() {
diff --git a/test/files/run/t3897/a_2.scala b/test/files/run/t3897/a_2.scala
index 7a161fcbe4..4d9e59ef05 100644
--- a/test/files/run/t3897/a_2.scala
+++ b/test/files/run/t3897/a_2.scala
@@ -1,12 +1,12 @@
object Test {
def f1(clazz: Class[_]) = (
- clazz.getDeclaredFields.toList
+ clazz.getDeclaredFields.toList
. filterNot (_.getName contains "bitmap$")
. map (f => (f.getName, f.getGenericType))
. foreach (println)
)
def f2(clazz: Class[_]) = (
- clazz.getDeclaredMethods.toList
+ clazz.getDeclaredMethods.toList
. filterNot (_.getName contains "bitmap$")
. map (f => (f.getName, f.getGenericReturnType))
. foreach (println)
@@ -17,7 +17,7 @@ object Test {
f2(classOf[One])
f1(classOf[Two])
f2(classOf[Two])
-
+
new J_2().javaRun
}
}
diff --git a/test/files/run/t3932.scala b/test/files/run/t3932.scala
index f577ef8315..51fc16d6ea 100644
--- a/test/files/run/t3932.scala
+++ b/test/files/run/t3932.scala
@@ -23,10 +23,10 @@ object Test {
def main(args: Array[String]): Unit = {
println(O1.g1)
println(O1.g2)
-
+
println(O2.g1)
println(O2.g2)
-
+
val o3 = new O3()
println(o3.g1)
println(o3.g2)
diff --git a/test/files/run/t3964.scala b/test/files/run/t3964.scala
index df1eb716e8..80ba361a20 100644
--- a/test/files/run/t3964.scala
+++ b/test/files/run/t3964.scala
@@ -1,13 +1,13 @@
object Test {
- class Base
+ class Base
object Bob extends Base
class Foo { def bippy = 42 }
class Oof { def bippy = -21 }
-
+
// I am more specific than you
implicit def f1(x: Bob.type): Foo = new Foo
implicit def f2(x: Base): Oof = new Oof
-
+
def main(args: Array[String]): Unit = {
// this would of course print an unambiguous 42
println(Bob.bippy)
diff --git a/test/files/run/t3970.scala b/test/files/run/t3970.scala
index 35b5ce6e1b..f8c763bc85 100644
--- a/test/files/run/t3970.scala
+++ b/test/files/run/t3970.scala
@@ -9,11 +9,11 @@ object Test {
def main(args: Array[String]) {
val dl = DoubleLinkedList[Int]()
dl.remove()
-
+
val dl2 = DoubleLinkedList[Int](1, 2, 3)
dl2.next.remove()
assert(dl2 == DoubleLinkedList(1, 3))
-
+
val dl3 = DoubleLinkedList[Int](1, 2, 3)
assert(dl3.drop(1) == DoubleLinkedList(2, 3))
assert(dl3.drop(1).prev == null)
diff --git a/test/files/run/t3980.scala b/test/files/run/t3980.scala
index c140176ce4..4e693eba9b 100644
--- a/test/files/run/t3980.scala
+++ b/test/files/run/t3980.scala
@@ -2,7 +2,7 @@ object A {
def run1 {
lazy val x: Unit = {(); println("once")}
x
- x
+ x
}
def run2 {
lazy val y: Int = 2
diff --git a/test/files/run/t3984.scala b/test/files/run/t3984.scala
index 0747b0ee25..9a2e00a2a8 100644
--- a/test/files/run/t3984.scala
+++ b/test/files/run/t3984.scala
@@ -36,7 +36,7 @@ object MapBug {
im = im + ((ih,ih))
mm = mm + ((ih,ih))
}
- assert(im == mm)
+ assert(im == mm)
val x = IH(6,4)
im = im - x
mm = mm - x
diff --git a/test/files/run/t4013.scala b/test/files/run/t4013.scala
index 7060559317..da7fbc5b3f 100644
--- a/test/files/run/t4013.scala
+++ b/test/files/run/t4013.scala
@@ -5,12 +5,12 @@ trait Base[B] {
}
-class Suba[@specialized B](override val data: Array[B]) extends Base[B] {
+class Suba[@specialized B](override val data: Array[B]) extends Base[B] {
assert(data != null)
}
-class Subopt[@specialized B](override val data: Option[B]) extends Base[B] {
+class Subopt[@specialized B](override val data: Option[B]) extends Base[B] {
assert(data != null)
}
diff --git a/test/files/run/t4013b.scala b/test/files/run/t4013b.scala
index 1262e261f5..f17eaea3d3 100644
--- a/test/files/run/t4013b.scala
+++ b/test/files/run/t4013b.scala
@@ -8,7 +8,7 @@ trait Base[B] {
class M[@specialized(Int) A]
-class Sub3[@specialized(Int) B](override val data: M[B]) extends Base[B] {
+class Sub3[@specialized(Int) B](override val data: M[B]) extends Base[B] {
assert(data != null)
}
diff --git a/test/files/run/t4024.scala b/test/files/run/t4024.scala
index 4ab383ebc3..ef768beb99 100644
--- a/test/files/run/t4024.scala
+++ b/test/files/run/t4024.scala
@@ -1,9 +1,9 @@
object Test extends App {
- val x = "abc"
+ val x = "abc"
val m = x.getClass.getMethod("toString")
-
+
assert(m.invoke(x, (Nil: List[AnyRef]): _*) == "abc")
}
diff --git a/test/files/run/t4054.scala b/test/files/run/t4054.scala
index 83a58ef97c..8f1f685854 100644
--- a/test/files/run/t4054.scala
+++ b/test/files/run/t4054.scala
@@ -9,7 +9,7 @@
object Test {
def main(args: Array[String]) {
val it = Iterator.from(1).map(n => n * n).scanLeft(0)(_+_)
-
+
assert(it.next == 0)
assert(it.next == 1)
assert(it.next == 5)
diff --git a/test/files/run/t4062.scala b/test/files/run/t4062.scala
index f5478e7593..6a5aea5b47 100644
--- a/test/files/run/t4062.scala
+++ b/test/files/run/t4062.scala
@@ -1,7 +1,7 @@
class A(val f : String)
class B(f: String) extends A(f) {
- def foo(x: String) = x match {
+ def foo(x: String) = x match {
case `f` => true
case _ => false
}
diff --git a/test/files/run/t4072.scala b/test/files/run/t4072.scala
index 371b8ccd5f..872072a4ce 100644
--- a/test/files/run/t4072.scala
+++ b/test/files/run/t4072.scala
@@ -2,11 +2,11 @@ import scala.tools.nsc._
object Test {
class DryRun {
- val compiler = new Global(new Settings()) {
+ val compiler = new Global(new Settings()) {
lazy val test1 = new AnyRef
}
}
-
+
def main(args: Array[String]) {
new DryRun().compiler.test1
}
diff --git a/test/files/run/t408.scala b/test/files/run/t408.scala
index 9e51e881ed..4d3dcbcb84 100644
--- a/test/files/run/t408.scala
+++ b/test/files/run/t408.scala
@@ -2,7 +2,7 @@ object Test
{
val a = scala.collection.immutable.Set.empty ++ (0 to 100000)
val b = scala.collection.immutable.Set.empty ++ (0 to 100000)
-
+
def main(args: Array[String]): Unit = {
a -- b
a -- b
diff --git a/test/files/run/t4110.scala b/test/files/run/t4110.scala
index a42646ce52..4bd377b73e 100644
--- a/test/files/run/t4110.scala
+++ b/test/files/run/t4110.scala
@@ -3,7 +3,7 @@ object Test extends App {
trait A
trait B
-
+
inferredType(new A with B)
val name = new A with B
diff --git a/test/files/run/t4119/J.java b/test/files/run/t4119/J.java
index ee65d33e22..42508993ea 100644
--- a/test/files/run/t4119/J.java
+++ b/test/files/run/t4119/J.java
@@ -1,6 +1,6 @@
package foo.bar;
-public abstract class J {
+public abstract class J {
protected void foo(J j) {
return;
}
diff --git a/test/files/run/t4119/S.scala b/test/files/run/t4119/S.scala
index d6ae5f1b87..e5e3db5da3 100644
--- a/test/files/run/t4119/S.scala
+++ b/test/files/run/t4119/S.scala
@@ -1,6 +1,6 @@
class S extends foo.bar.J {
sss =>
-
+
val fn = () => {
foo(S.this)
}
diff --git a/test/files/run/t4122.scala b/test/files/run/t4122.scala
index 5ff570c009..7ead2b7742 100644
--- a/test/files/run/t4122.scala
+++ b/test/files/run/t4122.scala
@@ -4,7 +4,7 @@ object Test {
val sw3 = Seq('a', 'b')
val sw4 = "ab".toList
val all = List(sw, sw2, sw3, sw4)
-
+
def main(args: Array[String]): Unit = {
for (s1 <- all ; s2 <- all) {
assert(s1 == s2, s1 + " != " + s2)
diff --git a/test/files/run/t4148.scala b/test/files/run/t4148.scala
index a7d181268d..0739403594 100644
--- a/test/files/run/t4148.scala
+++ b/test/files/run/t4148.scala
@@ -2,7 +2,7 @@ object Test {
val x1 = try { "aaa".asInstanceOf[Int] } catch { case _ => "cce1" }
val x2 = try { (5: Any).asInstanceOf[Int] } catch { case _ => "cce2" }
val x3 = try { (new java.lang.Short(100.toShort).asInstanceOf[Int]) } catch { case _ => "cce3" }
-
+
def main(args: Array[String]): Unit = {
List(x1, x2, x3) foreach println
}
diff --git a/test/files/run/t4238/J_1.java b/test/files/run/t4238/J_1.java
index 47a9c21000..21a4b182ad 100644
--- a/test/files/run/t4238/J_1.java
+++ b/test/files/run/t4238/J_1.java
@@ -3,14 +3,14 @@ import scala.*;
class J_1 {
scala.collection.mutable.HashMap<String, String> map =
new scala.collection.mutable.HashMap<String, String>();
-
+
Function1<Tuple2<String, String>, Integer> f =
new scala.runtime.AbstractFunction1<Tuple2<String, String>, Integer>() {
public Integer apply(Tuple2<String, String> s) {
return s._1().length();
}
};
-
+
scala.collection.Seq<Integer> counts =
map.groupBy(f).keys().toList();
}
diff --git a/test/files/run/t4288.scala b/test/files/run/t4288.scala
index 4e7b366f60..eafd2808f1 100644
--- a/test/files/run/t4288.scala
+++ b/test/files/run/t4288.scala
@@ -6,7 +6,7 @@ object Test {
def f5 = (1 to 9).toArray.slice(-5, -1)
def f6 = (1 to 9).toStream.slice(-5, -1)
def f7 = (1 to 9).slice(-5, -1)
-
+
def main(args: Array[String]): Unit = {
List[Traversable[Int]](f1, f2, f3, f4, f5, f6, f7) foreach (x => assert(x.isEmpty, x))
}
diff --git a/test/files/run/t4294.scala b/test/files/run/t4294.scala
index 50c83ac819..fafaf1d8ef 100644
--- a/test/files/run/t4294.scala
+++ b/test/files/run/t4294.scala
@@ -1,7 +1,7 @@
object Test {
def main(args: Array[String]) {
(Stream.from(1).collect{case x if x > 5000000 => x}: Stream[Int])
-
+
assert((Stream from 1 take 10 collect { case x if x <= 3 => x*x }).sum == 14)
}
}
diff --git a/test/files/run/t4317/S_3.scala b/test/files/run/t4317/S_3.scala
index ce8e2330e3..dd04ea31ef 100644
--- a/test/files/run/t4317/S_3.scala
+++ b/test/files/run/t4317/S_3.scala
@@ -1,4 +1,4 @@
-object Test {
+object Test {
def main(args: Array[String]): Unit = {
val j = new J_2()
println(j.bar1())
diff --git a/test/files/run/t4387.scala b/test/files/run/t4387.scala
index f51c9b0572..68cbe97d08 100644
--- a/test/files/run/t4387.scala
+++ b/test/files/run/t4387.scala
@@ -1,11 +1,11 @@
object Test {
import xml.XML.loadString
def mkElem(arg: String) = <foo a="1" b="2" c="3" d="4" e={arg} />
-
+
val x1 = mkElem("5")
val x2 = mkElem("50")
- def main(args: Array[String]): Unit = {
+ def main(args: Array[String]): Unit = {
assert(x1 == loadString("" + x1))
assert(x2 != loadString("" + x1))
}
diff --git a/test/files/run/t4396.scala b/test/files/run/t4396.scala
index d67eaa378e..ca143165b7 100644
--- a/test/files/run/t4396.scala
+++ b/test/files/run/t4396.scala
@@ -1,4 +1,4 @@
-// #43896
+// #43896
trait M extends DelayedInit {
def delayedInit(body : => Unit) {
println("hallo")
diff --git a/test/files/run/t4426.scala b/test/files/run/t4426.scala
index 1cbd42da25..95759444d6 100644
--- a/test/files/run/t4426.scala
+++ b/test/files/run/t4426.scala
@@ -5,7 +5,7 @@ object Test {
val settings = new Settings()
settings.classpath.value = System.getProperty("java.class.path")
- object cc extends Global(settings) {
+ object cc extends Global(settings) {
object dummy
override def computePluginPhases() = {
@@ -16,9 +16,9 @@ object Test {
new cc.Run
()
}
-
+
def main(args: Array[String]): Unit = {
-
+
}
}
diff --git a/test/files/run/t4461.scala b/test/files/run/t4461.scala
index d1f80a6012..99da122f6b 100644
--- a/test/files/run/t4461.scala
+++ b/test/files/run/t4461.scala
@@ -9,7 +9,7 @@ object Test {
buf.subscribe(new Subscriber[Message[Int], ObservableBuffer[Int]] {
def notify(pub: ObservableBuffer[Int], event: Message[Int]) = println(event)
})
-
+
buf += 1 // works
buf ++= Array(2) // works
buf ++= ArrayBuffer(3, 4) // works
diff --git a/test/files/run/t4532.check b/test/files/run/t4532.check
index 018bbf2fa3..47a9809248 100644
--- a/test/files/run/t4532.check
+++ b/test/files/run/t4532.check
@@ -1,7 +1,7 @@
Type in expressions to have them evaluated.
Type :help for more information.
-scala>
+scala>
scala> object Bippy { class Dingus ; object Bop }
defined module Bippy
@@ -10,6 +10,6 @@ scala> :javap Bippy.Dingus
Compiled from "<console>"public class Bippy$Dingus extends java.lang.Object implements scala.ScalaObject{ public Bippy$Dingus();}
scala> :javap Bippy.Bop
Compiled from "<console>"public final class Bippy$Bop$ extends java.lang.Object implements scala.ScalaObject{ public static final Bippy$Bop$ MODULE$; public static {}; public Bippy$Bop$();}
-scala>
+scala>
-scala>
+scala>
diff --git a/test/files/run/t4532.scala b/test/files/run/t4532.scala
index 2e100f2cc7..0dabd2dca4 100644
--- a/test/files/run/t4532.scala
+++ b/test/files/run/t4532.scala
@@ -2,13 +2,13 @@ import scala.tools.partest.ReplTest
import scala.tools.util.Javap
object Test extends ReplTest {
-
+
// ugh, windows
def expectedOutput =
"""Type in expressions to have them evaluated.
Type :help for more information.
-scala>
+scala>
scala> object Bippy { class Dingus ; object Bop }
defined module Bippy
@@ -17,12 +17,12 @@ scala> :javap Bippy.Dingus
Compiled from "<console>"public class Bippy$Dingus extends java.lang.Object implements scala.ScalaObject{ public Bippy$Dingus();}
scala> :javap Bippy.Bop
Compiled from "<console>"public final class Bippy$Bop$ extends java.lang.Object implements scala.ScalaObject{ public static final Bippy$Bop$ MODULE$; public static {}; public Bippy$Bop$();}
-scala>
+scala>
-scala>
+scala>
"""
- override def eval() =
+ override def eval() =
if (Javap.isAvailable()) super.eval()
else expectedOutput.lines
diff --git a/test/files/run/t4535.scala b/test/files/run/t4535.scala
index 91c13a28cd..eba79431c9 100644
--- a/test/files/run/t4535.scala
+++ b/test/files/run/t4535.scala
@@ -5,26 +5,26 @@ import collection._
// #4535
object Test {
-
+
def main(args: Array[String]) {
val as = new mutable.ArrayStack[Int]
as push 1
as push 2
as push 3
println(as.reverse)
-
+
as push 4
as push 5
as push 6
println(as.reverse)
-
+
println(as map { x => x })
-
+
for (i <- 0 until 100) {
as push i
assert(as == as.map(x => x))
assert(as == as.reverse.reverse)
}
}
-
+
}
diff --git a/test/files/run/t4560.scala b/test/files/run/t4560.scala
index f809e67898..1392077e46 100644
--- a/test/files/run/t4560.scala
+++ b/test/files/run/t4560.scala
@@ -35,5 +35,5 @@ object Test extends A with B {
}
}
-object Test2 extends A2 with B2
+object Test2 extends A2 with B2
diff --git a/test/files/run/t4570.scala b/test/files/run/t4570.scala
index 5e1a20c52d..5408caf6db 100644
--- a/test/files/run/t4570.scala
+++ b/test/files/run/t4570.scala
@@ -1,8 +1,8 @@
object Test extends Enumeration {
val foo = Value
def bar = withName("foo")
-
+
def main(args: Array[String]): Unit = {
- values foreach println
+ values foreach println
}
}
diff --git a/test/files/run/t4608.scala b/test/files/run/t4608.scala
index a25d2fea05..3601adc275 100644
--- a/test/files/run/t4608.scala
+++ b/test/files/run/t4608.scala
@@ -3,9 +3,9 @@
// #4608
object Test {
-
+
def main(args: Array[String]) {
((1 to 100) sliding 10).toList.par.map{_.map{i => i * i}}.flatten
}
-
+
}
diff --git a/test/files/run/t4617.scala b/test/files/run/t4617.scala
index 2fea5e29ec..3a877c1915 100644
--- a/test/files/run/t4617.scala
+++ b/test/files/run/t4617.scala
@@ -3,7 +3,7 @@ object Test {
def f2 = {
lazy val d = 4D
lazy val f = 4f
-
+
def bar = "Str " + (d + f)
bar
}
diff --git a/test/files/run/t4656.scala b/test/files/run/t4656.scala
index 4f3d189c8f..ab3e3cf53d 100644
--- a/test/files/run/t4656.scala
+++ b/test/files/run/t4656.scala
@@ -6,7 +6,7 @@ object Test {
buf prependToList List(4, 5, 6)
l
}
-
+
def main(args: Array[String]): Unit = {
println(f)
}
diff --git a/test/files/run/t4671.check b/test/files/run/t4671.check
index 797c0d8905..4699818cd4 100644
--- a/test/files/run/t4671.check
+++ b/test/files/run/t4671.check
@@ -10,7 +10,7 @@ s: scala.io.BufferedSource = non-empty iterator
scala> println(s.getLines.mkString("\n"))
import scala.tools.partest.ReplTest
-object Test extends ReplTest {
+object Test extends ReplTest {
// My god...it's full of quines
def code = """
object o { val file = sys.props("partest.cwd") + "/t4671.scala" }
@@ -30,7 +30,7 @@ s: scala.io.BufferedSource = non-empty iterator
scala> println(s.mkString(""))
import scala.tools.partest.ReplTest
-object Test extends ReplTest {
+object Test extends ReplTest {
// My god...it's full of quines
def code = """
object o { val file = sys.props("partest.cwd") + "/t4671.scala" }
diff --git a/test/files/run/t4671.scala b/test/files/run/t4671.scala
index 6170104c33..aba0138aad 100644
--- a/test/files/run/t4671.scala
+++ b/test/files/run/t4671.scala
@@ -1,6 +1,6 @@
import scala.tools.partest.ReplTest
-object Test extends ReplTest {
+object Test extends ReplTest {
// My god...it's full of quines
def code = """
object o { val file = sys.props("partest.cwd") + "/t4671.scala" }
diff --git a/test/files/run/t4680.scala b/test/files/run/t4680.scala
index d5c8d0e7af..88611df7ae 100644
--- a/test/files/run/t4680.scala
+++ b/test/files/run/t4680.scala
@@ -43,13 +43,13 @@ class E() extends D() {
object Test {
def p(msg: String) = println("\n\n// " + msg)
-
+
def main(args: Array[String]) {
p("new C { }")
new C { }
p("new C { 5 }")
new C { 5 }
-
+
p("new D()")
new D()
p("new D() { }")
diff --git a/test/files/run/t4697.scala b/test/files/run/t4697.scala
index 95592172e0..728d095ff8 100644
--- a/test/files/run/t4697.scala
+++ b/test/files/run/t4697.scala
@@ -1,7 +1,7 @@
object Test {
var st = Stream(0)
for (i <- 1 to 10000) st = i +: st
-
+
def main(args: Array[String]): Unit = {
println(st.take(10000).sum)
}
diff --git a/test/files/run/t4752.scala b/test/files/run/t4752.scala
index 3d5c166a7a..2a9fc5361f 100644
--- a/test/files/run/t4752.scala
+++ b/test/files/run/t4752.scala
@@ -2,8 +2,8 @@ object Test {
object Bippy {
case object Dingus
}
-
- def main(args: Array[String]): Unit = {
+
+ def main(args: Array[String]): Unit = {
assert(None.## == "None".##, None)
assert(Test.Bippy.Dingus.## == "Dingus".##, Test.Bippy.Dingus)
}
diff --git a/test/files/run/t4753.scala b/test/files/run/t4753.scala
index cfb252cbe5..98f3e92678 100644
--- a/test/files/run/t4753.scala
+++ b/test/files/run/t4753.scala
@@ -1,4 +1,4 @@
-trait A {
+trait A {
val actualType: Class[_]
}
trait B extends A {
diff --git a/test/files/run/t4761.scala b/test/files/run/t4761.scala
index 205798b00e..82818379f5 100644
--- a/test/files/run/t4761.scala
+++ b/test/files/run/t4761.scala
@@ -7,7 +7,7 @@ object Test {
val gs = for (x <- (1 to 5)) yield { if (x % 2 == 0) List(1).seq else List(1).par }
println(gs.flatten)
println(gs.transpose)
-
+
val s = Stream(Vector(1).par, Vector(2).par)
println(s.flatten.toList)
println(s.transpose.map(_.toList).toList)
diff --git a/test/files/run/t4894.scala b/test/files/run/t4894.scala
index 2b70da141d..aa3b4340af 100644
--- a/test/files/run/t4894.scala
+++ b/test/files/run/t4894.scala
@@ -4,24 +4,24 @@
object Test {
-
+
def main(args: Array[String]) {
import collection._
val hs = mutable.HashSet[Int]()
hs ++= 1 to 10
hs --= 1 to 10
-
+
val phs = parallel.mutable.ParHashSet[Int]()
phs ++= 1 to 10
for (i <- 1 to 10) assert(phs(i))
phs --= 1 to 10
assert(phs.isEmpty)
-
+
val phm = parallel.mutable.ParHashMap[Int, Int]()
phm ++= ((1 to 10) zip (1 to 10))
for (i <- 1 to 10) assert(phm(i) == i)
phm --= 1 to 10
assert(phm.isEmpty)
}
-
+
}
diff --git a/test/files/run/t4895.scala b/test/files/run/t4895.scala
index 14f6761209..c6e6cc18b4 100644
--- a/test/files/run/t4895.scala
+++ b/test/files/run/t4895.scala
@@ -3,18 +3,18 @@
object Test {
-
+
def checkPar(sz: Int) {
import collection._
val hs = mutable.HashSet[Int]() ++ (1 to sz)
assert(hs.par.map(_ + 1).seq.toSeq.sorted == (2 to (sz + 1)))
}
-
+
def main(args: Array[String]) {
for (i <- 0 until 100) checkPar(i)
for (i <- 100 until 1000 by 50) checkPar(i)
for (i <- 1000 until 10000 by 500) checkPar(i)
for (i <- 10000 until 100000 by 5000) checkPar(i)
}
-
+
}
diff --git a/test/files/run/t576.scala b/test/files/run/t576.scala
index 2fc929f325..dc09d8dc98 100644
--- a/test/files/run/t576.scala
+++ b/test/files/run/t576.scala
@@ -12,7 +12,7 @@ object Dingus {
object Test {
val x1 = new A
val x2 = new A
-
+
val x3 = new { self =>
override def equals(other : Any) = other match {
case that: self.type => true
@@ -35,11 +35,11 @@ object Test {
assert(x1 != x2)
assert(x1 != ())
assert(x2 != x1)
-
+
assert(x3 == x3)
assert(x3 != x2)
assert(x2 != x3)
-
+
List(x1, x2, x3, x4, Dingus) map x4.f foreach println
}
} \ No newline at end of file
diff --git a/test/files/run/t603.scala b/test/files/run/t603.scala
index 361cef1f41..b8825c933b 100644
--- a/test/files/run/t603.scala
+++ b/test/files/run/t603.scala
@@ -22,7 +22,7 @@ object forceDelay {
object Test {
import forceDelay._
-
+
def main(args: Array[String]) = {
val s: Susp[Int] = delay { Console.println("evaluating..."); 3 }
Console.println("s = " + s)
diff --git a/test/files/run/t744.scala b/test/files/run/t744.scala
index 4895e9baa0..d5e9f6df34 100644
--- a/test/files/run/t744.scala
+++ b/test/files/run/t744.scala
@@ -5,7 +5,7 @@ trait Linked {
}
}
object Test {
- class Test extends Linked {
+ class Test extends Linked {
trait FileImpl extends super.FileImpl {
// val x: int = 1
}
diff --git a/test/files/run/t874.scala b/test/files/run/t874.scala
index d83014651b..41d124f728 100644
--- a/test/files/run/t874.scala
+++ b/test/files/run/t874.scala
@@ -5,7 +5,7 @@ object Test {
}
U("xyz")(2)
}
- class Mix extends Base {
+ class Mix extends Base {
case class U[A](x1: A)(x2: Int) {
Console.println("U created with "+x1+" and "+x2)
}
diff --git a/test/files/run/t920.scala b/test/files/run/t920.scala
index 6a7f122d55..1e12e6ba87 100644
--- a/test/files/run/t920.scala
+++ b/test/files/run/t920.scala
@@ -7,7 +7,7 @@ object Test {
trait Foo extends Test.Foo0 {
def foo : B.this.type = B.this;
}
- class baz extends Baz with Foo {
+ class baz extends Baz with Foo {
override def toString = "baz"
}
Console.println(new baz);
diff --git a/test/files/run/tailcalls.scala b/test/files/run/tailcalls.scala
index 77b123f5ce..04a1a8ba19 100644
--- a/test/files/run/tailcalls.scala
+++ b/test/files/run/tailcalls.scala
@@ -194,10 +194,10 @@ object FancyTailCalls {
}
object PolyObject extends App {
- def tramp[A](x: Int): Int =
+ def tramp[A](x: Int): Int =
if (x > 0)
tramp[A](x - 1)
- else
+ else
0
}
@@ -233,7 +233,7 @@ class NonTailCall {
if (n == 0) 0
else f2(n - 1)
}
-
+
}
//############################################################################
@@ -273,7 +273,7 @@ object Test {
}
println
}
-
+
def check_overflow(name: String, closure: => Int) {
print("test " + name)
try {
@@ -367,7 +367,7 @@ object Test {
check_success("TailCall.g3", TailCall.g3(max, max, Nil), 0)
check_success("TailCall.h1", TailCall.h1(max, max ), 0)
println
-
+
val NonTailCall = new NonTailCall
check_success("NonTailCall.f1", NonTailCall.f1(2), 0)
check_overflow("NonTailCall.f2", NonTailCall.f2(max))
@@ -382,17 +382,17 @@ object Test {
}
// testing explicit tailcalls.
-
+
import scala.util.control.TailCalls._
def isEven(xs: List[Int]): TailRec[Boolean] =
if (xs.isEmpty) done(true) else tailcall(isOdd(xs.tail))
def isOdd(xs: List[Int]): TailRec[Boolean] =
- if (xs.isEmpty) done(false) else tailcall(isEven(xs.tail))
+ if (xs.isEmpty) done(false) else tailcall(isEven(xs.tail))
assert(isEven((1 to 100000).toList).result)
-
+
}
//############################################################################
diff --git a/test/files/run/takeAndDrop.scala b/test/files/run/takeAndDrop.scala
index 8d2dff0bfa..6e87838e11 100644
--- a/test/files/run/takeAndDrop.scala
+++ b/test/files/run/takeAndDrop.scala
@@ -1,9 +1,9 @@
-object Test {
+object Test {
def main(args: Array[String]): Unit = {
val range = 1 to 10
val target = (3 to 8).toList
val confirm = (xs: Seq[Int]) => assert(xs.toList == target, xs)
-
+
confirm(range drop 2 dropRight 2)
confirm(range drop 1 dropRight 1 drop 1 dropRight 1)
confirm(range take 8 drop 2)
diff --git a/test/files/run/tcpoly_monads.scala b/test/files/run/tcpoly_monads.scala
index e437010481..cffbcc963b 100644
--- a/test/files/run/tcpoly_monads.scala
+++ b/test/files/run/tcpoly_monads.scala
@@ -4,15 +4,15 @@ trait Monads {
* (>>=) :: m a -> (a -> m b) -> m b
* return :: a -> m a
*
- * MonadTC encodes the above Haskell type class,
+ * MonadTC encodes the above Haskell type class,
* an instance of MonadTC corresponds to a method dictionary.
* (see http://lampwww.epfl.ch/~odersky/talks/wg2.8-boston06.pdf)
*
* Note that the identity (`this') of the method dictionary does not really correspond
- * to the instance of m[x] (`self') that is `wrapped': e.g., unit does not use `self' (which
+ * to the instance of m[x] (`self') that is `wrapped': e.g., unit does not use `self' (which
* corresponds to the argument of the implicit conversion that encodes an instance of this type class)
*/
- trait MonadTC[m[x], a] {
+ trait MonadTC[m[x], a] {
def unit[a](orig: a): m[a]
// >>='s first argument comes from the implicit definition constructing this "method dictionary"
@@ -27,7 +27,7 @@ trait Monads {
*/
trait OptionMonad extends Monads {
// this implicit method encodes the Monad type class instance for Option
- implicit def OptionInstOfMonad[a](self: Option[a]): MonadTC[Option, a]
+ implicit def OptionInstOfMonad[a](self: Option[a]): MonadTC[Option, a]
= new MonadTC[Option, a] {
def unit[a](orig: a) = Some(orig)
def >>=[b](fun: a => Option[b]): Option[b] = self match {
diff --git a/test/files/run/tcpoly_parseridioms.scala b/test/files/run/tcpoly_parseridioms.scala
index 741be05af1..634240e44d 100644
--- a/test/files/run/tcpoly_parseridioms.scala
+++ b/test/files/run/tcpoly_parseridioms.scala
@@ -1,10 +1,10 @@
trait Parsers {
type Input = List[Char]
-
+
sealed class ParseResult[+t](val next: Input)
- case class Success[+t](override val next: Input, result: t) extends ParseResult[t](next)
+ case class Success[+t](override val next: Input, result: t) extends ParseResult[t](next)
case class Failure(override val next: Input, msg: String) extends ParseResult[Nothing](next)
-
+
abstract class Parser[+t] {
def apply(in: Input): ParseResult[t]
}
@@ -16,7 +16,7 @@ trait Parsers {
case Success(next2, y) => Success(next2, Pair(x,y))
case Failure(_, msg) => Failure(in, msg)
}
- case Failure(_, msg) => Failure(in, msg)
+ case Failure(_, msg) => Failure(in, msg)
}
}
@@ -38,20 +38,20 @@ trait Parsers {
case Failure(n, msg) => Failure(n, msg)
}
}
-
+
def accept[T](c: Char, r: T): Parser[T] = new Parser[T] {
def apply(in: Input) = in match {
case c2 :: n if c2 == c => Success(n, r)
case n => Failure(n, "expected "+c+" at the head of "+n)
}
}
-
- def apply_++[s, tt](fun: Parser[s => tt], arg: Parser[s]): Parser[tt] = lift[Pair[s=>tt, s], tt]({case Pair(f, a) => f(a)})(sq(fun, arg))
-
+
+ def apply_++[s, tt](fun: Parser[s => tt], arg: Parser[s]): Parser[tt] = lift[Pair[s=>tt, s], tt]({case Pair(f, a) => f(a)})(sq(fun, arg))
+
def success[u](v: u): Parser[u] = new Parser[u] {
def apply(in: Input) = Success(in, v)
}
-
+
}
trait Idioms {
@@ -61,21 +61,21 @@ trait Idioms {
def pureMethod[a](name: String, x: a): idi[a] = pure(x) // hack for Mirrors: allow passing of method names
}
- class IdiomaticTarget[idi[x], idiom <: Idiom[idi], s](i: idiom, tgt: s) {
+ class IdiomaticTarget[idi[x], idiom <: Idiom[idi], s](i: idiom, tgt: s) {
def dot [t](fun: s => t, name: String) = new IdiomaticApp2[idi, idiom, t](i, i.liftedApply(i.pureMethod(name, fun))(i.pure(tgt)))
} // TODO: `.` --> java.lang.ClassFormatError: Illegal method name "." in class Idioms$Id$
- class IdiomaticFunction[idi[x], idiom <: Idiom[idi], s, t](i: idiom, fun: s => t) {
+ class IdiomaticFunction[idi[x], idiom <: Idiom[idi], s, t](i: idiom, fun: s => t) {
def <| (a: idi[s]) = new IdiomaticApp[idi, idiom, t](i, i.liftedApply(i.pure(fun))(a))
}
class IdiomaticApp[idi[x], idiom <: Idiom[idi], x](i: idiom, a: idi[x]) {
// where x <: s=>t -- TODO can this be expressed without generalised constraints?
def <> [s, t](b: idi[s]) = new IdiomaticApp[idi, idiom, t](i, i.liftedApply(a.asInstanceOf[idi[s=>t]])(b))
-
+
def |> : idi[x] = a
}
-
+
class IdiomaticApp2[idi[x], idiom <: Idiom[idi], x](i: idiom, a: idi[x]) extends IdiomaticApp[idi, idiom, x](i, a) {
def <| [s, t](b: idi[s]) = <>[s,t](b)
}
@@ -86,22 +86,22 @@ trait ParserIdioms extends Parsers with Idioms {
def liftedApply[s, t](fun: Parser[s => t])(arg: Parser[s]): Parser[t] = apply_++(fun, arg)
def pure[a](x: a): Parser[a] = success(x)
}
-
- implicit def parserIdiomFun[s, t](fun: s=>t): IdiomaticFunction[Parser, ParserIdiom.type, s, t] =
+
+ implicit def parserIdiomFun[s, t](fun: s=>t): IdiomaticFunction[Parser, ParserIdiom.type, s, t] =
new IdiomaticFunction[Parser, ParserIdiom.type, s, t](ParserIdiom, fun)
- implicit def parserIdiomTgt[s](tgt: s): IdiomaticTarget[Parser, ParserIdiom.type, s] =
+ implicit def parserIdiomTgt[s](tgt: s): IdiomaticTarget[Parser, ParserIdiom.type, s] =
new IdiomaticTarget[Parser, ParserIdiom.type, s](ParserIdiom, tgt)
-
+
trait Expr
case class Plus(a: Int, b: Int) extends Expr
-
+
def num = or(accept('0', 0), or(accept('1', 1),accept('2', 2)))
-
- // TODO: how can parserIdiom(curry2(_)) be omitted?
+
+ // TODO: how can parserIdiom(curry2(_)) be omitted?
def expr: Parser[Expr] = parserIdiomFun(curry2(Plus)) <| num <> num |>
-
+
implicit def curry2[s,t,u](fun: (s, t)=>u)(a: s)(b: t) = fun(a, b)
- implicit def curry3[r,s,t,u](fun: (r,s, t)=>u)(a: r)(b: s)(c: t) = fun(a, b, c)
+ implicit def curry3[r,s,t,u](fun: (r,s, t)=>u)(a: r)(b: s)(c: t) = fun(a, b, c)
}
object Test extends ParserIdioms with App {
diff --git a/test/files/run/transform.scala b/test/files/run/transform.scala
index 250df95df0..5cc1c49d6f 100644
--- a/test/files/run/transform.scala
+++ b/test/files/run/transform.scala
@@ -1,6 +1,6 @@
object Test {
val x = 1 to 10 toBuffer
-
+
def main(args: Array[String]): Unit = {
x transform (_ * 2)
assert(x.sum == (1 to 10).sum * 2)
diff --git a/test/files/run/transpose.scala b/test/files/run/transpose.scala
index 2761a24ff5..3bea74b365 100644
--- a/test/files/run/transpose.scala
+++ b/test/files/run/transpose.scala
@@ -1,8 +1,8 @@
object Test {
- def wrap[T >: Null](body: => T) =
+ def wrap[T >: Null](body: => T) =
try body
catch { case _: IllegalArgumentException => null }
-
+
def main(args: Array[String]): Unit = {
assert(wrap(Nil.transpose) == Nil)
assert(wrap(List(List(1, 2), List(1)).transpose) == null)
diff --git a/test/files/run/treePrint.scala b/test/files/run/treePrint.scala
index 452aaf390d..745c2150c2 100644
--- a/test/files/run/treePrint.scala
+++ b/test/files/run/treePrint.scala
@@ -4,7 +4,7 @@ object Test {
import scala.tools.nsc._
import interpreter._
import java.io.{ OutputStream, BufferedReader, StringReader, PrintWriter, Writer, OutputStreamWriter}
-
+
val code = """
def foo = {
var q: Boolean = false
@@ -22,11 +22,11 @@ object Test {
else 20
}
else 30
-
+
(x == 5) || !q || true
}
- """
-
+ """
+
class NullOutputStream extends OutputStream { def write(b: Int) { } }
def main(args: Array[String]) {
diff --git a/test/files/run/triple-quoted-expr.scala b/test/files/run/triple-quoted-expr.scala
index 6d91ac5888..0b30946de2 100644
--- a/test/files/run/triple-quoted-expr.scala
+++ b/test/files/run/triple-quoted-expr.scala
@@ -1,18 +1,18 @@
class A {
def f1 = {
val x = 5
-
+
"""
hi"""
}
def f2 = {
val x = 5
-
+
"""hi"""
- }
+ }
def f3 = {
val x = 5
-
+
"\nhi"
}
}
diff --git a/test/files/run/try-2.scala b/test/files/run/try-2.scala
index 909a68bbd2..677f0b48eb 100644
--- a/test/files/run/try-2.scala
+++ b/test/files/run/try-2.scala
@@ -7,7 +7,7 @@
object Test {
- def tryAllUnit: Unit =
+ def tryAllUnit: Unit =
try {
throw new Error();
}
@@ -15,28 +15,28 @@ object Test {
case _ => Console.println("exception happened\n");
}
- def tryUnitAll: Unit =
+ def tryUnitAll: Unit =
try {
Console.println("Nothin");
} catch {
case _ => error("Bad, bad, lama!");
}
- def tryAllAll: Unit =
+ def tryAllAll: Unit =
try {
throw new Error();
} catch {
case _ => error("Bad, bad, lama!");
}
- def tryUnitUnit: Unit =
+ def tryUnitUnit: Unit =
try {
Console.println("Nothin");
} catch {
case _ => Console.println("Nothin");
}
- def tryIntUnit: Unit =
+ def tryIntUnit: Unit =
try {
10;
} catch {
@@ -55,7 +55,7 @@ object Test {
execute(tryAllUnit);
execute(tryUnitAll);
execute(tryAllAll);
- execute(tryUnitUnit);
+ execute(tryUnitUnit);
execute(tryIntUnit);
}
}
diff --git a/test/files/run/try.scala b/test/files/run/try.scala
index 5545bcbec1..ad3d606246 100644
--- a/test/files/run/try.scala
+++ b/test/files/run/try.scala
@@ -17,8 +17,8 @@ object Test extends AnyRef with App {
Console.println(
(try { x } catch {
case _: Error => 1;
- })
- +
+ })
+ +
(try { x } catch {
case _: Error => 1;
})
@@ -116,7 +116,7 @@ object Test extends AnyRef with App {
}
*/
-
+
try1;
try2;
try3;
diff --git a/test/files/run/tuple-match.scala b/test/files/run/tuple-match.scala
index fcaefbff5b..57ba9cf6e1 100644
--- a/test/files/run/tuple-match.scala
+++ b/test/files/run/tuple-match.scala
@@ -1,7 +1,7 @@
object Test {
val FOUR = (-1, -2, -3, "bingo donkey vegas")
val THREE = (-1, -2, -3)
-
+
def f(x: Any) = x match {
case FOUR => "FOUR"
case (_, _, 3, _) => "4, #3"
@@ -13,7 +13,7 @@ object Test {
case (_, 2) => "2, #2"
case _ => "default"
}
-
+
def main(args: Array[String]): Unit = {
println(f((1, 2, 3, 4)))
println(f((1, 2, 30, 4)))
diff --git a/test/files/run/tuple-zipped.scala b/test/files/run/tuple-zipped.scala
index 8f482dc3bf..a9851346bc 100644
--- a/test/files/run/tuple-zipped.scala
+++ b/test/files/run/tuple-zipped.scala
@@ -8,32 +8,32 @@ object Test {
val as1 = 1 to 100 toArray
val as2 = as1.view
val as3 = as1 take 10
-
+
def xss1 = List[Seq[Int]](xs1, xs2, xs3, ss1, ss2, ss3, as1, as2, as3)
def xss2 = List[Seq[Int]](xs1, xs2, xs3, ss3, as1, as2, as3) // no infinities
def xss3 = List[Seq[Int]](xs2, xs3, ss3, as1) // representative sampling
-
+
def main(args: Array[String]): Unit = {
for (cc1 <- xss1 ; cc2 <- xss2) {
val sum1 = (cc1, cc2).zip map { case (x, y) => x + y } sum
val sum2 = (cc1, cc2).zipped map (_ + _) sum
-
+
assert(sum1 == sum2)
}
-
+
for (cc1 <- xss1 ; cc2 <- xss2 ; cc3 <- xss3) {
val sum1 = (cc1, cc2, cc3).zip map { case (x, y, z) => x + y + z } sum
val sum2 = (cc1, cc2, cc3).zipped map (_ + _ + _) sum
-
+
assert(sum1 == sum2)
}
-
+
assert((ss1, ss1).zipped exists ((x, y) => true))
assert((ss1, ss1, ss1).zipped exists ((x, y, z) => true))
-
+
assert(!(ss1, ss2, 1 to 3).zipped.exists(_ + _ + _ > 100000))
assert((1 to 3, ss1, ss2).zipped.forall(_ + _ + _ > 0))
assert((ss1, 1 to 3, ss2).zipped.map(_ + _ + _).size == 3)
}
}
-
+
diff --git a/test/files/run/typealias_overriding.scala b/test/files/run/typealias_overriding.scala
index 4b6a0037ec..8a2d1312ab 100644
--- a/test/files/run/typealias_overriding.scala
+++ b/test/files/run/typealias_overriding.scala
@@ -1,21 +1,21 @@
// this bug (http://scala-webapps.epfl.ch/bugtracking/bugs/displayItem.do?id=1065)
-// was caused by Uncurry not normalizing all the types
+// was caused by Uncurry not normalizing all the types
// (more specifically the argument/return types of an anonymous Function)
object Test extends App {
trait AddRemove {
type TNode <: NodeImpl;
trait NodeImpl;
-
+
object removing {
type TNode = AddRemove.this.TNode;
def printNode(node: TNode, f: TNode => String) = Console.println(f(node))
}
}
-
+
class Linked extends AddRemove {
type TNode = Node // can also directly write `class Node extends super.NodeImpl' -- doesn't change the bug
class Node extends super.NodeImpl { override def toString = "LinkedNode" }
-
+
removing.printNode(new Node, (x: removing.TNode) => x.toString) // make inference explicit, doesn't affect the bug
}
diff --git a/test/files/run/unapply.scala b/test/files/run/unapply.scala
index 0c5a70e768..90dd4fae73 100644
--- a/test/files/run/unapply.scala
+++ b/test/files/run/unapply.scala
@@ -22,7 +22,7 @@ object Faa {
def unapply(x: Any): Option[String] = if(x.isInstanceOf[Bar]) Some(x.asInstanceOf[Bar].name) else None
}
object FaaPrecise {
- def unapply(x: Bar): Option[String] = Some(x.name)
+ def unapply(x: Bar): Option[String] = Some(x.name)
}
object FaaPreciseSome {
def unapply(x: Bar) = Some(x.name) // return type Some[String]
@@ -108,14 +108,14 @@ object Test1256 {
class Sync {
def unapply(scrut: Any): Boolean = false
}
-
+
class Buffer {
val Get = new Sync
val jp: PartialFunction[Any, Any] = {
case Get() =>
}
}
-
+
def run() {
assert(!(new Buffer).jp.isDefinedAt(42))
}
diff --git a/test/files/run/unittest_collection.scala b/test/files/run/unittest_collection.scala
index 822e2b0c98..3639b496b3 100644
--- a/test/files/run/unittest_collection.scala
+++ b/test/files/run/unittest_collection.scala
@@ -12,7 +12,7 @@ object Test {
}
def test(x: Buffer[String]) {
- // testing method +=
+ // testing method +=
x += "one"
assert(x(0) == "one", "retrieving 'one'")
assert(x.length == 1, "length A")
@@ -25,10 +25,10 @@ object Test {
assert(x.length == 1, "length C")
- try { x(1); sys.error("no exception for removed element") }
+ try { x(1); sys.error("no exception for removed element") }
catch { case i:IndexOutOfBoundsException => }
- try { x.remove(1); sys.error("no exception for removed element") }
+ try { x.remove(1); sys.error("no exception for removed element") }
catch { case i:IndexOutOfBoundsException => }
x += "two2"
diff --git a/test/files/run/unittest_iterator.scala b/test/files/run/unittest_iterator.scala
index 21dc64c3c5..89ccdb9d58 100644
--- a/test/files/run/unittest_iterator.scala
+++ b/test/files/run/unittest_iterator.scala
@@ -1,5 +1,5 @@
// Some iterator grouped/sliding unit tests
-object Test {
+object Test {
def it = (1 to 10).iterator
def assertThat[T](expectedLength: Int, expectedLast: Seq[T])(it: Iterator[Seq[T]]) {
val xs = it.toList
@@ -7,15 +7,15 @@ object Test {
assert(xs.size == expectedLength, fail("expected length " + expectedLength))
assert(xs.last == expectedLast, fail("expected last " + expectedLast))
}
-
+
def main(args: Array[String]): Unit = {
val itSum = it.toStream.sum
for (i <- it) {
// sum of the groups == sum of the original
val thisSum = ((it grouped i) map (_.sum)).toStream.sum
- assert(thisSum == itSum, thisSum + " != " + itSum)
+ assert(thisSum == itSum, thisSum + " != " + itSum)
}
-
+
// grouped
assertThat(4, List(10)) { it grouped 3 }
assertThat(3, List(7, 8, 9)) { it grouped 3 withPartial false }
@@ -32,11 +32,11 @@ object Test {
assertThat(1, (1 to 8).toList) { it.sliding(8, 8) withPartial false }
assertThat(2, List(9, 10, -1, -1, -1)) { it.sliding(5, 8) withPadding -1 }
assertThat(1, (1 to 5).toList) { it.sliding(5, 8) withPartial false }
-
+
// larger step than window
assertThat(5, List(9)) { it.sliding(1, 2) }
assertThat(3, List(9, 10)) { it.sliding(2, 4) }
-
+
// make sure it throws past the end
val thrown = try {
val it = List(1,2,3).sliding(2)
diff --git a/test/files/run/vector1.scala b/test/files/run/vector1.scala
index e8785e2b16..b37cfe82e8 100644
--- a/test/files/run/vector1.scala
+++ b/test/files/run/vector1.scala
@@ -9,7 +9,7 @@ import scala.collection.mutable.Builder
object Test {
-
+
def vector(label: String, n: Int): Vector[String] = {
val a = new VectorBuilder[String]
for (i <- 0 until n)
@@ -67,7 +67,7 @@ object Test {
def test1() = {
println("===== test1 =====")
-
+
val N = 150000
val a = vector("a", N)
val b = vectorForward("b", N)
@@ -81,22 +81,22 @@ object Test {
println("===== test2 =====")
var a: Vector[String] = Vector.empty
-
+
val rand = new java.util.Random
-
+
val N = 150000
var min = N/2//rand.nextInt(N)
var max = min
-
+
val chunkLimit = 11
-
+
def nextChunkSize = 3 //rand.nextInt(chunkLimit)
-
+
def seqBack() = for (i <- 0 until Math.min(nextChunkSize, N-max)) { a = a :+ ("a"+max); max += 1 }
def seqFront() = for (i <- 0 until Math.min(nextChunkSize, min)) { min -= 1; a = ("a"+min) +: a }
-
+
try {
-
+
while (min > 0 || max < N) {
seqFront()
seqBack()
@@ -107,7 +107,7 @@ object Test {
//a.debug
throw ex
}
-
+
assertVector(a, "a", 0, N)
}
@@ -122,14 +122,14 @@ object Test {
val pos = scala.util.Random.shuffle(scala.collection.mutable.WrappedArray.make[Int](Array.tabulate[Int](N)(i => i)))
var b = a
-
+
{
var i = 0
while (i < N) {
b = b.updated(pos(i), "b"+(pos(i)))
i += 1
}
-
+
assertVector(b, "b", 0, N)
}
diff --git a/test/files/run/view-headoption.scala b/test/files/run/view-headoption.scala
index 659c7e6b82..629b974c19 100644
--- a/test/files/run/view-headoption.scala
+++ b/test/files/run/view-headoption.scala
@@ -2,13 +2,13 @@ object Test {
val failer = () => { println("fail") ; None }
val succeeder = () => { println("success") ; Some(5) }
val fs = List(failer, succeeder, failer, failer, succeeder, failer, failer, failer, succeeder)
-
+
def f0 = fs.view flatMap (f => f())
def f1 = f0.headOption
def f2 = f0.head
def f3 = f0.lastOption
def f4 = f0.last
-
+
def main(args: Array[String]): Unit = {
println("f1: " + f1)
println("f2: " + f2)
diff --git a/test/files/run/view-iterator-stream.scala b/test/files/run/view-iterator-stream.scala
index 5ac299a34d..f91407f92c 100644
--- a/test/files/run/view-iterator-stream.scala
+++ b/test/files/run/view-iterator-stream.scala
@@ -18,7 +18,7 @@ object Test {
}
def and(g: Perturber): Perturber =
new Perturber(this.labels ++ g.labels, f andThen g.f)
-
+
override def toString = labels mkString " -> "
}
object Perturber {
@@ -39,14 +39,14 @@ object Test {
"slice(%d, %d)".format(from, until),
_.toTraversable.slice(from, until)
)
-
+
val fns = List[Perturber](toV, toI, toS, toIS)
def tds(n: Int): Perturber = p(drop(n), take(n / 2), slice(1, n / 4))
def dts(n: Int): Perturber = p(take(n), drop(n / 2), slice(1, n / 4))
def sdt(n: Int): Perturber = p(slice(n, n * 2), drop(n / 2), take(n / 4))
def std(n: Int): Perturber = p(slice(n, n * 2), take(n / 2), drop(n / 4))
-
+
val transforms = (fns.permutations map (xs => p(xs take 3: _*))).toList.distinct
def mkOps(n: Int) = List[Perturber](tds(n), dts(n), sdt(n), std(n))
def runOps(n: Int) = {
@@ -60,7 +60,7 @@ object Test {
}
()
}
-
+
def main(args: Array[String]): Unit = {
runOps(20)
}
diff --git a/test/files/run/viewtest.scala b/test/files/run/viewtest.scala
index 581958e9a6..bb2c28d68a 100755
--- a/test/files/run/viewtest.scala
+++ b/test/files/run/viewtest.scala
@@ -25,8 +25,8 @@ object Test extends App {
2.8 regression: CCE when zipping list projection with stream
Reported by: szeiger Owned by: odersky
Priority: normal Component: Standard Library
-Keywords: collections, zip Cc:
-Fixed in version:
+Keywords: collections, zip Cc:
+Fixed in version:
Description
Welcome to Scala version 2.8.0.r18784-b20090925021043 (Java HotSpot(TM) Client VM, Java 1.6.0_11).
diff --git a/test/files/run/virtpatmat_apply.scala b/test/files/run/virtpatmat_apply.scala
index b8776f4afb..34cb80e449 100644
--- a/test/files/run/virtpatmat_apply.scala
+++ b/test/files/run/virtpatmat_apply.scala
@@ -1,5 +1,5 @@
object Test extends App {
- List(1, 2, 3) match {
+ List(1, 2, 3) match {
case Nil => println("FAIL")
case x :: y :: xs if xs.length == 2 => println("FAIL")
case x :: y :: xs if xs.length == 1 => println("OK "+ y)
diff --git a/test/files/run/virtpatmat_casting.scala b/test/files/run/virtpatmat_casting.scala
index 7c5e1c7117..d970abae90 100644
--- a/test/files/run/virtpatmat_casting.scala
+++ b/test/files/run/virtpatmat_casting.scala
@@ -1,7 +1,7 @@
object Test extends App {
- println(List(1,2,3) match {
- case Nil => List(0)
-// since the :: extractor's argument must be a ::, there has to be a cast before its unapply is invoked
+ println(List(1,2,3) match {
+ case Nil => List(0)
+// since the :: extractor's argument must be a ::, there has to be a cast before its unapply is invoked
case x :: y :: z :: a :: xs => xs ++ List(x)
case x :: y :: z :: xs => xs ++ List(x)
})
diff --git a/test/files/run/virtpatmat_literal.scala b/test/files/run/virtpatmat_literal.scala
index 460811eba9..cb72b1d2a5 100644
--- a/test/files/run/virtpatmat_literal.scala
+++ b/test/files/run/virtpatmat_literal.scala
@@ -1,21 +1,21 @@
object Test extends App {
- 1 match {
- case 2 => println("FAILED")
- case 1 => println("OK")
- case 1 => println("FAILED")
+ 1 match {
+ case 2 => println("FAILED")
+ case 1 => println("OK")
+ case 1 => println("FAILED")
}
val one = 1
- 1 match {
- case 2 => println("FAILED")
- case `one` => println("OK")
- case 1 => println("FAILED")
+ 1 match {
+ case 2 => println("FAILED")
+ case `one` => println("OK")
+ case 1 => println("FAILED")
}
- 1 match {
- case 2 => println("FAILED")
- case Test.one => println("OK")
- case 1 => println("FAILED")
+ 1 match {
+ case 2 => println("FAILED")
+ case Test.one => println("OK")
+ case 1 => println("FAILED")
}
} \ No newline at end of file
diff --git a/test/files/run/virtpatmat_partial.scala b/test/files/run/virtpatmat_partial.scala
index d30944efb4..c408b31983 100644
--- a/test/files/run/virtpatmat_partial.scala
+++ b/test/files/run/virtpatmat_partial.scala
@@ -36,7 +36,7 @@ object Test extends App {
// else
// o9
// })
- //
+ //
// def isDefinedAt(x_1: (String, Option[Int])): Boolean = MatchingStrategy.OptionMatchingStrategy.isSuccess[(String, Option[Int]), (String, Int)](x_1)(
// (x1: (String, Option[Int])) => {
// val o9: Option[(String, Int)] = ({
diff --git a/test/files/run/virtpatmat_typed.scala b/test/files/run/virtpatmat_typed.scala
index cdd6d3c749..a9863cc48a 100644
--- a/test/files/run/virtpatmat_typed.scala
+++ b/test/files/run/virtpatmat_typed.scala
@@ -1,7 +1,7 @@
object Test extends App {
- ("foo": Any) match {
- case x: Int => println("FAILED")
- case x: String => println("OK "+ x)
- case x: String => println("FAILED")
+ ("foo": Any) match {
+ case x: Int => println("FAILED")
+ case x: String => println("OK "+ x)
+ case x: String => println("FAILED")
}
} \ No newline at end of file
diff --git a/test/files/run/virtpatmat_unapply.scala b/test/files/run/virtpatmat_unapply.scala
index a6e71f3963..6d7b4dbe68 100644
--- a/test/files/run/virtpatmat_unapply.scala
+++ b/test/files/run/virtpatmat_unapply.scala
@@ -6,12 +6,12 @@ object IntList {
}
object Test extends App {
- IntList(1, IntList(2, NilIL)) match {
+ IntList(1, IntList(2, NilIL)) match {
case IntList(a1, IntList(a2, IntList(a3, y))) => println(a1 + a2 + a3)
case IntList(x, y) => println(x)
}
- IntList(1, IntList(2, IntList(3, NilIL))) match {
+ IntList(1, IntList(2, IntList(3, NilIL))) match {
case IntList(a1, IntList(a2, IntList(a3, y))) => println(a1 + a2 + a3)
case IntList(x, y) => println(x)
}
@@ -20,12 +20,12 @@ object Test extends App {
// ((x1: IntList) => IntList.unapply(x1).flatMap(((x4: (Int, IntList)) => IntList.unapply(x4._2).flatMap(((x5: (Int, IntList)) => IntList.unapply(x5._2).flatMap(((x6: (Int, IntList)) => implicitly[Predef.MatchingStrategy[Option]].success(Predef.println(x4._1.+(x5._1).+(x6._1))))))))).orElse(IntList.unapply(x1).flatMap(((x7: (Int, IntList)) => implicitly[scala.Predef.MatchingStrategy[Option]].success(Predef.println(x7._1))))).orElse(implicitly[scala.Predef.MatchingStrategy[Option]].fail))(IntList.apply(1, IntList.apply(2, IntList.apply(3, null))))
/*
- ((x1: IntList) =>
- IntList.this.unapply(x1).flatMap[Int](((x4: (Int, IntList)) =>
- IntList.this.unapply(x4._2).flatMap[Int](((x5: (Int, IntList)) =>
- IntList.this.unapply(x5._2).flatMap[Int](((x6: (Int, IntList)) =>
+ ((x1: IntList) =>
+ IntList.this.unapply(x1).flatMap[Int](((x4: (Int, IntList)) =>
+ IntList.this.unapply(x4._2).flatMap[Int](((x5: (Int, IntList)) =>
+ IntList.this.unapply(x5._2).flatMap[Int](((x6: (Int, IntList)) =>
Predef.this.implicitly[scala.Predef.MatchingStrategy[Option]](scala.this.Predef.OptionMatching).success[Int](x6._1))))))).orElse[Int](
- IntList.this.unapply(x1).flatMap[Int](((x7: (Int, IntList)) =>
+ IntList.this.unapply(x1).flatMap[Int](((x7: (Int, IntList)) =>
Predef.this.implicitly[scala.Predef.MatchingStrategy[Option]](scala.this.Predef.OptionMatching).success[Int](x7._1)))).orElse[Int](
Predef.this.implicitly[scala.Predef.MatchingStrategy[Option]](scala.this.Predef.OptionMatching).fail)
).apply(IntList.apply(1, null))
diff --git a/test/files/run/xml-loop-bug.scala b/test/files/run/xml-loop-bug.scala
index 3894779f7c..378ae9bc2b 100644
--- a/test/files/run/xml-loop-bug.scala
+++ b/test/files/run/xml-loop-bug.scala
@@ -1,6 +1,6 @@
object Test {
def main(args: Array[String]): Unit = {
scala.tools.nsc.io.NullPrintStream.setOutAndErr()
- scala.xml.parsing.ConstructingParser.fromSource(scala.io.Source.fromString("<!DOCTYPE xmeml SYSTEM> <xmeml> <sequence> </sequence> </xmeml> "), true).document.docElem
+ scala.xml.parsing.ConstructingParser.fromSource(scala.io.Source.fromString("<!DOCTYPE xmeml SYSTEM> <xmeml> <sequence> </sequence> </xmeml> "), true).document.docElem
}
}
diff --git a/test/files/scalacheck/CheckEither.scala b/test/files/scalacheck/CheckEither.scala
index 0651b90b2e..a7e50877a7 100644
--- a/test/files/scalacheck/CheckEither.scala
+++ b/test/files/scalacheck/CheckEither.scala
@@ -9,7 +9,7 @@ import org.scalacheck.ConsoleReporter.testStatsEx
import Function.tupled
object CheckEither extends Properties("Either") {
- implicit def arbitraryEither[X, Y](implicit xa: Arbitrary[X], ya: Arbitrary[Y]): Arbitrary[Either[X, Y]] =
+ implicit def arbitraryEither[X, Y](implicit xa: Arbitrary[X], ya: Arbitrary[Y]): Arbitrary[Either[X, Y]] =
Arbitrary[Either[X, Y]](oneOf(arbitrary[X].map(Left(_)), arbitrary[Y].map(Right(_))))
val prop_either1 = forAll((n: Int) => Left(n).fold(x => x, b => error("fail")) == n)
@@ -20,7 +20,7 @@ object CheckEither extends Properties("Either") {
case Left(a) => e.swap.right.get == a
case Right(b) => e.swap.left.get == b
})
-
+
val prop_isLeftRight = forAll((e: Either[Int, Int]) => e.isLeft != e.isRight)
object CheckLeftProjection {
@@ -36,7 +36,7 @@ object CheckEither extends Properties("Either") {
val prop_exists = forAll((e: Either[Int, Int]) =>
e.left.exists(_ % 2 == 0) == (e.isLeft && e.left.get % 2 == 0))
-
+
val prop_flatMapLeftIdentity = forAll((e: Either[Int, Int], n: Int, s: String) => {
def f(x: Int) = if(x % 2 == 0) Left(s) else Right(s)
Left(n).left.flatMap(f(_)) == f(n)})
@@ -116,7 +116,7 @@ object CheckEither extends Properties("Either") {
}
val prop_Either_left = forAll((n: Int) => Left(n).left.get == n)
-
+
val prop_Either_right = forAll((n: Int) => Right(n).right.get == n)
val prop_Either_joinLeft = forAll((e: Either[Either[Int, Int], Int]) => e match {
@@ -129,12 +129,12 @@ object CheckEither extends Properties("Either") {
case Right(ee) => e.joinRight == ee
})
- val prop_Either_reduce = forAll((e: Either[Int, Int]) =>
+ val prop_Either_reduce = forAll((e: Either[Int, Int]) =>
e.merge == (e match {
case Left(a) => a
case Right(a) => a
}))
-
+
/** Hard to believe I'm "fixing" a test to reflect B before A ... */
val prop_Either_cond = forAll((c: Boolean, a: Int, b: Int) =>
Either.cond(c, a, b) == (if(c) Right(a) else Left(b)))
@@ -169,19 +169,19 @@ object CheckEither extends Properties("Either") {
("Right.prop_seq", CheckRightProjection.prop_seq),
("Right.prop_option", CheckRightProjection.prop_option),
("prop_Either_left", prop_Either_left),
- ("prop_Either_right", prop_Either_right),
+ ("prop_Either_right", prop_Either_right),
("prop_Either_joinLeft", prop_Either_joinLeft),
- ("prop_Either_joinRight", prop_Either_joinRight),
- ("prop_Either_reduce", prop_Either_reduce),
+ ("prop_Either_joinRight", prop_Either_joinRight),
+ ("prop_Either_reduce", prop_Either_reduce),
("prop_Either_cond", prop_Either_cond)
)
-
+
for ((label, prop) <- tests) {
property(label) = prop
}
-
+
import org.scalacheck.{ Test => STest }
-
+
def runTests() = {
STest.checkProperties(STest.Params(testCallback = ConsoleReporter(0)), this)
}
diff --git a/test/files/scalacheck/HashTrieSplit.scala b/test/files/scalacheck/HashTrieSplit.scala
index e959a3d535..908c878f54 100644
--- a/test/files/scalacheck/HashTrieSplit.scala
+++ b/test/files/scalacheck/HashTrieSplit.scala
@@ -14,7 +14,7 @@ object Test {
def main(args: Array[String]) {
doesSplitOk
}
-
+
def doesSplitOk = {
val sz = 2000
var ht = new parallel.immutable.ParHashMap[Int, Int]
diff --git a/test/files/scalacheck/Unrolled.scala b/test/files/scalacheck/Unrolled.scala
index 34604b8667..8067a44501 100644
--- a/test/files/scalacheck/Unrolled.scala
+++ b/test/files/scalacheck/Unrolled.scala
@@ -5,7 +5,7 @@ import Gen._
import collection.mutable.UnrolledBuffer
object Test extends Properties("UnrolledBuffer") {
-
+
property("concat size") = forAll { (l1: List[Int], l2: List[Int]) =>
val u1 = new UnrolledBuffer[Int]
u1 ++= l1
@@ -15,12 +15,12 @@ object Test extends Properties("UnrolledBuffer") {
u1 concat u2
totalsz == u1.size
}
-
+
property("adding") = forAll { (l: List[Int]) =>
val u = new UnrolledBuffer[Int]
u ++= l
u == l
}
-
+
}
diff --git a/test/files/scalacheck/array.scala b/test/files/scalacheck/array.scala
index 03c0217180..f262bc6320 100644
--- a/test/files/scalacheck/array.scala
+++ b/test/files/scalacheck/array.scala
@@ -11,7 +11,7 @@ object Test extends Properties("Array") {
*/
implicit def arbArray[T](implicit a: Arbitrary[T], m: Manifest[T]): Arbitrary[Array[T]] =
Arbitrary(containerOf[List,T](arbitrary[T]) map (_.toArray))
-
+
val arrGen: Gen[Array[_]] = oneOf(
arbitrary[Array[Int]],
arbitrary[Array[Array[Int]]],
@@ -20,7 +20,7 @@ object Test extends Properties("Array") {
arbitrary[Array[Boolean]],
arbitrary[Array[AnyVal]]
)
-
+
// inspired by #1857 and #2352
property("eq/ne") = forAll(arrGen, arrGen) { (c1, c2) =>
(c1 eq c2) || (c1 ne c2)
@@ -32,6 +32,6 @@ object Test extends Properties("Array") {
val arr = Array.ofDim[String](i1, i2, i3)
val flattened = arr flatMap (x => x) flatMap (x => x)
flattened.length == i1 * i2 * i3
- }
+ }
}
diff --git a/test/files/scalacheck/list.scala b/test/files/scalacheck/list.scala
index 5f6de95237..4e1cf1fc80 100644
--- a/test/files/scalacheck/list.scala
+++ b/test/files/scalacheck/list.scala
@@ -12,7 +12,7 @@ object Test extends Properties("List") {
property("startsWith/take") = forAll { (xs: List[Int], count: Int) => xs startsWith (xs take count) }
property("endsWith/takeRight") = forAll { (xs: List[Int], count: Int) => xs endsWith (xs takeRight count) }
property("fill") = forAll(choose(1, 100)) { count =>
- forAll { (x: Int) =>
+ forAll { (x: Int) =>
val xs = List.fill(count)(x)
(xs.length == count) && (xs.distinct == List(x))
}
diff --git a/test/files/scalacheck/parallel-collections/IntOperators.scala b/test/files/scalacheck/parallel-collections/IntOperators.scala
index 4a74b91da8..5c997962ba 100644
--- a/test/files/scalacheck/parallel-collections/IntOperators.scala
+++ b/test/files/scalacheck/parallel-collections/IntOperators.scala
@@ -106,7 +106,7 @@ trait IntSeqOperators extends IntOperators with SeqOperators[Int] {
List(4, 5, 6, 7, 8, 9, 10),
List(4, 5, 6, 7, 8, 9, 0),
List(-4, -3, -2, -1)
- )
+ )
}
diff --git a/test/files/scalacheck/parallel-collections/PairOperators.scala b/test/files/scalacheck/parallel-collections/PairOperators.scala
index fe851114be..4711e21c34 100644
--- a/test/files/scalacheck/parallel-collections/PairOperators.scala
+++ b/test/files/scalacheck/parallel-collections/PairOperators.scala
@@ -7,76 +7,76 @@ import scala.collection.parallel._
trait PairOperators[K, V] extends Operators[(K, V)] {
def koperators: Operators[K]
def voperators: Operators[V]
-
+
private def zipPredicates(kps: List[K => Boolean], vps: List[V => Boolean]): List[((K, V)) => Boolean] = for {
(kp, vp) <- koperators.countPredicates zip voperators.countPredicates
} yield new Function1[(K, V), Boolean] {
def apply(kv: (K, V)) = kp(kv._1) && vp(kv._2)
}
-
+
/* operators */
-
+
def reduceOperators = for {
(kop, vop) <- koperators.reduceOperators zip voperators.reduceOperators
} yield new Function2[(K, V), (K, V), (K, V)] {
def apply(kv1: (K, V), kv2: (K, V)) = (kop(kv1._1, kv2._1), vop(kv1._2, kv2._2))
}
-
+
def countPredicates = zipPredicates(koperators.countPredicates, voperators.countPredicates)
-
+
def forallPredicates = zipPredicates(koperators.forallPredicates, voperators.forallPredicates)
-
+
def existsPredicates = zipPredicates(koperators.existsPredicates, voperators.existsPredicates)
-
+
def findPredicates = zipPredicates(koperators.findPredicates, voperators.findPredicates)
-
+
def mapFunctions = for {
(km, vm) <- koperators.mapFunctions zip voperators.mapFunctions
} yield new Function1[(K, V), (K, V)] {
def apply(kv: (K, V)) = (km(kv._1), vm(kv._2))
}
-
+
def partialMapFunctions = for {
(kpm, vpm) <- koperators.partialMapFunctions zip voperators.partialMapFunctions
} yield new PartialFunction[(K, V), (K, V)] {
def isDefinedAt(kv: (K, V)) = kpm.isDefinedAt(kv._1) && vpm.isDefinedAt(kv._2)
def apply(kv: (K, V)) = (kpm(kv._1), vpm(kv._2))
}
-
+
def flatMapFunctions = for {
(kfm, vfm) <- koperators.flatMapFunctions zip voperators.flatMapFunctions
} yield new Function1[(K, V), Traversable[(K, V)]] {
def apply(kv: (K, V)) = kfm(kv._1).toIterable zip vfm(kv._2).toIterable
}
-
+
def filterPredicates = zipPredicates(koperators.filterPredicates, voperators.filterPredicates)
-
+
def filterNotPredicates = filterPredicates
-
+
def partitionPredicates = filterPredicates
-
+
def takeWhilePredicates = zipPredicates(koperators.takeWhilePredicates, voperators.takeWhilePredicates)
-
+
def dropWhilePredicates = takeWhilePredicates
-
+
def spanPredicates = takeWhilePredicates
-
+
def foldArguments = for {
((kinit, kop), (vinit, vop)) <- koperators.foldArguments zip voperators.foldArguments
} yield ((kinit, vinit), new Function2[(K, V), (K, V), (K, V)] {
def apply(kv1: (K, V), kv2: (K, V)) = (kop(kv1._1, kv2._1), vop(kv1._2, kv2._2))
})
-
+
def addAllTraversables = for {
(kt, vt) <- koperators.addAllTraversables zip voperators.addAllTraversables
} yield kt.toIterable zip vt.toIterable
-
+
def newArray(sz: Int) = new Array[(K, V)](sz)
-
+
def groupByFunctions = (koperators.groupByFunctions zip voperators.groupByFunctions) map {
opt => { (p: (K, V)) => (opt._1(p._1), opt._2(p._2)) }
}
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/PairValues.scala b/test/files/scalacheck/parallel-collections/PairValues.scala
index 864dad2425..5007c4598b 100644
--- a/test/files/scalacheck/parallel-collections/PairValues.scala
+++ b/test/files/scalacheck/parallel-collections/PairValues.scala
@@ -17,7 +17,7 @@ import org.scalacheck.Arbitrary._
trait PairValues[K, V] {
def kvalues: Seq[Gen[K]]
def vvalues: Seq[Gen[V]]
-
+
def values = for {
kg <- kvalues
vg <- vvalues
diff --git a/test/files/scalacheck/parallel-collections/ParallelArrayCheck.scala b/test/files/scalacheck/parallel-collections/ParallelArrayCheck.scala
index 255c04498e..a01c8c7dbe 100644
--- a/test/files/scalacheck/parallel-collections/ParallelArrayCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelArrayCheck.scala
@@ -17,11 +17,11 @@ import scala.collection.parallel.ops._
abstract class ParallelArrayCheck[T](tp: String) extends ParallelSeqCheck[T]("ParArray[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParArray[T]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = true
def ofSize(vals: Seq[Gen[T]], sz: Int) = {
@@ -30,7 +30,7 @@ abstract class ParallelArrayCheck[T](tp: String) extends ParallelSeqCheck[T]("Pa
for (i <- 0 until sz) a += sample(gen)
a
}
-
+
def fromSeq(a: Seq[T]) = {
val pa = new ParArray[T](a.size)
var i = 0
@@ -40,20 +40,20 @@ abstract class ParallelArrayCheck[T](tp: String) extends ParallelSeqCheck[T]("Pa
}
pa
}
-
+
property("array mappings must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((f, ind) <- mapFunctions.zipWithIndex)
yield ("op index: " + ind) |: t.map(f) == coll.map(f)
results.reduceLeft(_ && _)
}
-
+
}
object IntParallelArrayCheck extends ParallelArrayCheck[Int]("Int") with IntSeqOperators with IntValues {
override def instances(vals: Seq[Gen[Int]]) = oneOf(super.instances(vals), sized { sz =>
(0 until sz).toArray.toSeq
- }, sized { sz =>
+ }, sized { sz =>
(-sz until 0).toArray.toSeq
})
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelArrayTest.scala b/test/files/scalacheck/parallel-collections/ParallelArrayTest.scala
index db2b1ea01e..680f6e1d28 100644
--- a/test/files/scalacheck/parallel-collections/ParallelArrayTest.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelArrayTest.scala
@@ -15,7 +15,7 @@
// /**
// * this currently passes, but do we want it to?
-// * does it have meaning to have an empty parallel array?
+// * does it have meaning to have an empty parallel array?
// */
// new ParallelArray(0)
// ()
diff --git a/test/files/scalacheck/parallel-collections/ParallelArrayViewCheck.scala b/test/files/scalacheck/parallel-collections/ParallelArrayViewCheck.scala
index 9805e2644f..d2a8fa7c22 100644
--- a/test/files/scalacheck/parallel-collections/ParallelArrayViewCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelArrayViewCheck.scala
@@ -24,18 +24,18 @@
// extends ParallelSeqCheck[T]("ParallelSeqView[" + tp + ", ParallelArray[" + tp + "]]") {
// // ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// // ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
// type CollType = ParallelSeqView[T, ParallelArray[T], ArraySeq[T]]
-
+
// def isCheckingViews = true
-
+
// def instances(vals: Seq[Gen[T]]): Gen[Seq[T]] = sized { sz =>
// val a = new ArrayBuffer[T](sz)
// val gen = vals(rnd.nextInt(vals.size))
// for (i <- 0 until sz) a += sample(gen)
// a
// }
-
+
// def fromSeq(a: Seq[T]) = {
// val pa = new ParallelArray[T](a.size)
// var i = 0
@@ -45,13 +45,13 @@
// }
// pa.view
// }
-
+
// property("forces must be equal") = forAll(collectionPairs) { case (s, coll) =>
// val smodif = (s ++ s).reverse.take(s.length).reverse.zip(s).drop(s.length / 2)
// val cmodif = (coll ++ s).reverse.take(s.length).reverse.zip(s).drop(s.length / 2).force
// smodif == cmodif
// }
-
+
// }
@@ -68,18 +68,18 @@
// extends ParallelSeqCheck[T]("ParallelSeqView[" + tp + "], ParallelArray[" + tp + "].++.patch.reverse.take.reverse") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
// type CollType = collection.parallel.ParallelSeq[T]
-
+
// def isCheckingViews = true
-
+
// def instances(vals: Seq[Gen[T]]): Gen[Seq[T]] = sized { sz =>
// val a = new ArrayBuffer[T](sz)
// val gen = vals(rnd.nextInt(vals.size))
// for (i <- 0 until sz) a += sample(gen)
// a
// }
-
+
// def fromSeq(a: Seq[T]) = {
// val pa = new ParallelArray[T](a.size)
// var i = 0
@@ -91,7 +91,7 @@
// val original = modified.take(modified.length / 2).reverse
// original
// }
-
+
// }
diff --git a/test/files/scalacheck/parallel-collections/ParallelHashMapCheck.scala b/test/files/scalacheck/parallel-collections/ParallelHashMapCheck.scala
index 9299a201a1..0152b1b435 100644
--- a/test/files/scalacheck/parallel-collections/ParallelHashMapCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelHashMapCheck.scala
@@ -17,20 +17,20 @@ import scala.collection.parallel.ops._
abstract class ParallelHashMapCheck[K, V](tp: String) extends ParallelMapCheck[K, V]("mutable.ParHashMap[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParHashMap[K, V]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = false
- def ofSize(vals: Seq[Gen[(K, V)]], sz: Int) = {
+ def ofSize(vals: Seq[Gen[(K, V)]], sz: Int) = {
val hm = new mutable.HashMap[K, V]
val gen = vals(rnd.nextInt(vals.size))
for (i <- 0 until sz) hm += sample(gen)
hm
}
-
+
def fromTraversable(t: Traversable[(K, V)]) = {
val phm = new ParHashMap[K, V]
var i = 0
@@ -40,7 +40,7 @@ abstract class ParallelHashMapCheck[K, V](tp: String) extends ParallelMapCheck[K
}
phm
}
-
+
}
@@ -51,22 +51,22 @@ with PairValues[Int, Int]
def intvalues = new IntValues {}
def kvalues = intvalues.values
def vvalues = intvalues.values
-
+
val intoperators = new IntOperators {}
def voperators = intoperators
def koperators = intoperators
-
+
override def printDataStructureDebugInfo(ds: AnyRef) = ds match {
case pm: ParHashMap[k, v] =>
println("Mutable parallel hash map\n" + pm.hashTableContents.debugInformation)
case _ =>
println("could not match data structure type: " + ds.getClass)
}
-
+
override def checkDataStructureInvariants(orig: Traversable[(Int, Int)], ds: AnyRef) = ds match {
// case pm: ParHashMap[k, v] if 1 == 0 => // disabled this to make tests faster
// val invs = pm.brokenInvariants
-
+
// val containsall = (for ((k, v) <- orig) yield {
// if (pm.asInstanceOf[ParHashMap[Int, Int]].get(k) == Some(v)) true
// else {
@@ -74,8 +74,8 @@ with PairValues[Int, Int]
// false
// }
// }).foldLeft(true)(_ && _)
-
-
+
+
// if (invs.isEmpty) containsall
// else {
// println("Invariants broken:\n" + invs.mkString("\n"))
@@ -83,7 +83,7 @@ with PairValues[Int, Int]
// }
case _ => true
}
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelHashSetCheck.scala b/test/files/scalacheck/parallel-collections/ParallelHashSetCheck.scala
index 8b41908a26..a0a6d1ae5e 100644
--- a/test/files/scalacheck/parallel-collections/ParallelHashSetCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelHashSetCheck.scala
@@ -17,20 +17,20 @@ import scala.collection.parallel.ops._
abstract class ParallelHashSetCheck[T](tp: String) extends ParallelSetCheck[T]("mutable.ParHashSet[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParHashSet[T]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = false
- def ofSize(vals: Seq[Gen[T]], sz: Int) = {
+ def ofSize(vals: Seq[Gen[T]], sz: Int) = {
val hm = new mutable.HashSet[T]
val gen = vals(rnd.nextInt(vals.size))
for (i <- 0 until sz) hm += sample(gen)
hm
}
-
+
def fromTraversable(t: Traversable[T]) = {
val phm = new ParHashSet[T]
var i = 0
@@ -40,7 +40,7 @@ abstract class ParallelHashSetCheck[T](tp: String) extends ParallelSetCheck[T]("
}
phm
}
-
+
}
@@ -54,12 +54,12 @@ with IntValues
case _ =>
println("could not match data structure type: " + ds.getClass)
}
-
+
override def checkDataStructureInvariants(orig: Traversable[Int], ds: AnyRef) = ds match {
// case pm: ParHashSet[t] if 1 == 0 =>
// // for an example of how not to write code proceed below
// val invs = pm.brokenInvariants
-
+
// val containsall = (for (elem <- orig) yield {
// if (pm.asInstanceOf[ParHashSet[Int]](elem) == true) true
// else {
@@ -69,8 +69,8 @@ with IntValues
// false
// }
// }).foldLeft(true)(_ && _)
-
-
+
+
// if (invs.isEmpty) {
// if (!containsall) println(pm.debugInformation)
// containsall
@@ -80,7 +80,7 @@ with IntValues
// }
case _ => true
}
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelHashTrieCheck.scala b/test/files/scalacheck/parallel-collections/ParallelHashTrieCheck.scala
index bbec52dc92..3a2893f48a 100644
--- a/test/files/scalacheck/parallel-collections/ParallelHashTrieCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelHashTrieCheck.scala
@@ -17,20 +17,20 @@ import scala.collection.parallel.ops._
abstract class ParallelHashMapCheck[K, V](tp: String) extends ParallelMapCheck[K, V]("immutable.ParHashMap[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParHashMap[K, V]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = false
-
+
def ofSize(vals: Seq[Gen[(K, V)]], sz: Int) = {
var hm = new immutable.HashMap[K, V]
val gen = vals(rnd.nextInt(vals.size))
for (i <- 0 until sz) hm += sample(gen)
hm
}
-
+
def fromTraversable(t: Traversable[(K, V)]) = {
var phm = new ParHashMap[K, V]
var i = 0
@@ -40,7 +40,7 @@ abstract class ParallelHashMapCheck[K, V](tp: String) extends ParallelMapCheck[K
}
phm
}
-
+
}
@@ -51,11 +51,11 @@ with PairValues[Int, Int]
def intvalues = new IntValues {}
def kvalues = intvalues.values
def vvalues = intvalues.values
-
+
val intoperators = new IntOperators {}
def voperators = intoperators
def koperators = intoperators
-
+
override def printDataStructureDebugInfo(ds: AnyRef) = ds match {
case pm: ParHashMap[k, v] =>
pm.printDebugInfo
@@ -69,20 +69,20 @@ with PairValues[Int, Int]
abstract class ParallelHashSetCheck[T](tp: String) extends ParallelSetCheck[T]("immutable.ParHashSet[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParHashSet[T]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = false
-
+
def ofSize(vals: Seq[Gen[T]], sz: Int) = {
var hm = new immutable.HashSet[T]
val gen = vals(rnd.nextInt(vals.size))
for (i <- 0 until sz) hm += sample(gen)
hm
}
-
+
def fromTraversable(t: Traversable[T]) = {
var phm = new ParHashSet[T]
var i = 0
@@ -92,14 +92,14 @@ abstract class ParallelHashSetCheck[T](tp: String) extends ParallelSetCheck[T]("
}
phm
}
-
+
override def printDataStructureDebugInfo(ds: AnyRef) = ds match {
case pm: ParHashSet[t] =>
println("Parallel hash set")
case _ =>
println("could not match data structure type: " + ds.getClass)
}
-
+
}
@@ -110,7 +110,7 @@ with IntValues
def intvalues = new IntValues {}
def kvalues = intvalues.values
def vvalues = intvalues.values
-
+
override def printDataStructureDebugInfo(ds: AnyRef) = ds match {
case pm: ParHashMap[k, v] =>
pm.printDebugInfo
diff --git a/test/files/scalacheck/parallel-collections/ParallelIterableCheck.scala b/test/files/scalacheck/parallel-collections/ParallelIterableCheck.scala
index ac3493e56c..fbacb9f45c 100644
--- a/test/files/scalacheck/parallel-collections/ParallelIterableCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelIterableCheck.scala
@@ -16,14 +16,14 @@ import scala.collection.parallel._
abstract class ParallelIterableCheck[T](collName: String) extends Properties(collName) with Operators[T] {
type CollType <: ParIterable[T]
-
+
def values: Seq[Gen[T]]
def ofSize(vals: Seq[Gen[T]], sz: Int): Iterable[T]
def fromTraversable(t: Traversable[T]): CollType
def isCheckingViews: Boolean
def hasStrictOrder: Boolean
-
-
+
+
def instances(vals: Seq[Gen[T]]): Gen[Iterable[T]] = oneOf(
sized(
sz =>
@@ -31,46 +31,46 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
),
for (sz <- choose(1000, 2000)) yield ofSize(vals, sz),
for (sz <- choose(4000, 4001)) yield ofSize(vals, sz),
- for (sz <- choose(10000, 10001)) yield ofSize(vals, sz)
+ for (sz <- choose(10000, 10001)) yield ofSize(vals, sz)
)
-
+
// used to check if constructed collection is valid
def checkDataStructureInvariants(orig: Traversable[T], cf: AnyRef) = {
// can be overriden in subclasses
true
}
-
+
def printDataStructureDebugInfo(cf: AnyRef) {
// can be overridden in subclasses
}
-
+
val rnd = new scala.util.Random
-
+
def sample(gen: Gen[T]): T = {
var s = gen.sample
while (s == None) s = gen.sample
s.get
}
-
+
def sampleValue: T = sample(values(rnd.nextInt(values.length)))
-
+
def collectionPairs = for (inst <- instances(values)) yield (inst, fromTraversable(inst))
-
+
def collectionPairsWithLengths = for (inst <- instances(values); s <- choose(0, inst.size))
yield (inst, fromTraversable(inst), s)
-
+
def collectionPairsWith2Indices = for (
inst <- instances(values);
f <- choose(0, inst.size);
s <- choose(0, inst.size))
yield (inst, fromTraversable(inst), f, s)
-
- def collectionTriplets = for (inst <- instances(values);
+
+ def collectionTriplets = for (inst <- instances(values);
updStart <- choose(0, inst.size); howMany <- choose(0, inst.size)) yield {
val modif = inst.toSeq.patch(updStart, inst.toSeq, howMany)
(inst, fromTraversable(inst), modif)
}
-
+
def areEqual(t1: GenTraversable[T], t2: GenTraversable[T]) = if (hasStrictOrder) {
t1 == t2 && t2 == t1
} else (t1, t2) match { // it is slightly delicate what `equal` means if the order is not strict
@@ -81,14 +81,14 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
i1s == i2s && i2s == i1s
case _ => t1 == t2 && t2 == t1
}
-
+
def printDebugInfo(coll: ParIterableLike[_, _, _]) {
println("Collection debug info: ")
coll.printDebugBuffer
println("Task debug info: ")
println(tasksupport.debugMessages.mkString("\n"))
}
-
+
def printComparison(t: Traversable[_], coll: ParIterable[_], tf: Traversable[_], cf: ParIterable[_], ind: Int) {
printDebugInfo(coll)
println("Operator: " + ind)
@@ -108,7 +108,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
println("tf == cf - " + (tf == cf))
println("cf == tf - " + (cf == tf))
}
-
+
property("reductions must be equal for assoc. operators") = forAll(collectionPairs) { case (t, coll) =>
if (t.size != 0) {
val results = for ((op, ind) <- reduceOperators.zipWithIndex) yield {
@@ -126,7 +126,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
results.reduceLeft(_ && _)
} else "has size 0" |: true
}
-
+
property("counts must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((pred, ind) <- countPredicates.zipWithIndex) yield {
val tc = t.count(pred)
@@ -142,19 +142,19 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
results.reduceLeft(_ && _)
}
-
+
property("forall must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((pred, ind) <- forallPredicates.zipWithIndex)
yield ("op index: " + ind) |: t.forall(pred) == coll.forall(pred)
results.reduceLeft(_ && _)
}
-
+
property("exists must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((pred, ind) <- existsPredicates.zipWithIndex)
yield ("op index: " + ind) |: t.exists(pred) == coll.exists(pred)
results.reduceLeft(_ && _)
}
-
+
property("both must find or not find an element") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((pred, ind) <- findPredicates.zipWithIndex) yield {
val ft = t.find(pred)
@@ -163,7 +163,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
results.reduceLeft(_ && _)
}
-
+
property("mappings must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((f, ind) <- mapFunctions.zipWithIndex) yield {
val ms = t.map(f)
@@ -184,7 +184,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
results.reduceLeft(_ && _)
}
-
+
property("collects must be equal") = forAll(collectionPairs) { case (t, coll) =>
val results = for ((f, ind) <- partialMapFunctions.zipWithIndex) yield {
val ps = t.collect(f)
@@ -200,12 +200,12 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
results.reduceLeft(_ && _)
}
-
+
property("flatMaps must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((f, ind) <- flatMapFunctions.zipWithIndex)
yield ("op index: " + ind) |: areEqual(t.flatMap(f), coll.flatMap(f))).reduceLeft(_ && _)
}
-
+
property("filters must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((p, ind) <- filterPredicates.zipWithIndex) yield {
val tf = t.filter(p)
@@ -234,7 +234,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("op index: " + ind) |: tf == cf && cf == tf && invs
}).reduceLeft(_ && _)
}
-
+
property("filterNots must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((p, ind) <- filterNotPredicates.zipWithIndex) yield {
val tf = t.filterNot(p)
@@ -243,7 +243,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("op index: " + ind) |: tf == cf && cf == tf
}).reduceLeft(_ && _)
}
-
+
if (!isCheckingViews) property("partitions must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((p, ind) <- partitionPredicates.zipWithIndex) yield {
val tpart = t.partition(p)
@@ -257,15 +257,15 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("op index: " + ind) |: tpart == cpart
}).reduceLeft(_ && _)
}
-
+
if (hasStrictOrder) property("takes must be equal") = forAll(collectionPairsWithLengths) { case (t, coll, n) =>
("take " + n + " elements") |: t.take(n) == coll.take(n)
}
-
+
if (hasStrictOrder) property("drops must be equal") = forAll(collectionPairsWithLengths) { case (t, coll, n) =>
("drop " + n + " elements") |: t.drop(n) == coll.drop(n)
}
-
+
if (hasStrictOrder) property("slices must be equal") = forAll(collectionPairsWith2Indices)
{ case (t, coll, fr, slicelength) =>
val from = if (fr < 0) 0 else fr
@@ -289,7 +289,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
("slice from " + from + " until " + until) |: tsl == collsl
}
-
+
if (hasStrictOrder) property("splits must be equal") = forAll(collectionPairsWithLengths) { case (t, coll, n) =>
val tspl = t.splitAt(n)
val cspl = coll.splitAt(n)
@@ -302,7 +302,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
("splitAt " + n) |: tspl == cspl
}
-
+
if (hasStrictOrder) property("takeWhiles must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((pred, ind) <- takeWhilePredicates.zipWithIndex) yield {
val tt = t.takeWhile(pred)
@@ -317,7 +317,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("operator " + ind) |: tt == ct
}).reduceLeft(_ && _)
}
-
+
if (hasStrictOrder) property("spans must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((pred, ind) <- spanPredicates.zipWithIndex) yield {
val tsp = t.span(pred)
@@ -335,13 +335,13 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("operator " + ind) |: tsp == csp
}).reduceLeft(_ && _)
}
-
+
if (hasStrictOrder) property("dropWhiles must be equal") = forAll(collectionPairs) { case (t, coll) =>
(for ((pred, ind) <- dropWhilePredicates.zipWithIndex) yield {
("operator " + ind) |: t.dropWhile(pred) == coll.dropWhile(pred)
}).reduceLeft(_ && _)
}
-
+
property("folds must be equal for assoc. operators") = forAll(collectionPairs) { case (t, coll) =>
(for (((first, op), ind) <- foldArguments.zipWithIndex) yield {
val tres = t.foldLeft(first)(op)
@@ -356,7 +356,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("operator " + ind) |: tres == cres
}).reduceLeft(_ && _)
}
-
+
property("++s must be equal") = forAll(collectionTriplets) { case (t, coll, colltoadd) =>
val toadd = colltoadd
val tr = t ++ toadd.iterator
@@ -383,7 +383,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("traversable " + ind) |: areEqual(tadded, cadded)
}).reduceLeft(_ && _)
}
-
+
if (hasStrictOrder) property("copies to array must be equal") = forAll(collectionPairs) { case (t, coll) =>
val tarr = newArray(t.size)
val collarr = newArray(coll.size)
@@ -397,7 +397,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
}
tarr.toSeq == collarr.toSeq
}
-
+
if (hasStrictOrder) property("scans must be equal") = forAll(collectionPairs) {
case (t, coll) =>
(for (((first, op), ind) <- foldArguments.zipWithIndex) yield {
@@ -413,7 +413,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
("operator " + ind) |: tscan == cscan && cscan == tscan
}).reduceLeft(_ && _)
}
-
+
// property("groupBy must be equal") = forAll(collectionPairs) {
// case (t, coll) =>
// (for ((f, ind) <- groupByFunctions.zipWithIndex) yield {
@@ -429,7 +429,7 @@ abstract class ParallelIterableCheck[T](collName: String) extends Properties(col
// ("operator " + ind) |: tgroup == cgroup && cgroup == tgroup
// }).reduceLeft(_ && _)
// }
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelMapCheck1.scala b/test/files/scalacheck/parallel-collections/ParallelMapCheck1.scala
index 53e56e9700..05237bace8 100644
--- a/test/files/scalacheck/parallel-collections/ParallelMapCheck1.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelMapCheck1.scala
@@ -16,15 +16,15 @@ import scala.collection.parallel._
abstract class ParallelMapCheck[K, V](collname: String) extends ParallelIterableCheck[(K, V)](collname) {
type CollType <: ParMap[K, V]
-
+
property("gets iterated keys") = forAll(collectionPairs) {
case (t, coll) =>
val containsT = for ((k, v) <- t) yield (coll.get(k) == Some(v))
val containsSelf = for ((k, v) <- coll) yield (coll.get(k) == Some(v))
("Par contains elements of seq map" |: containsT.forall(_ == true)) &&
("Par contains elements of itself" |: containsSelf.forall(_ == true))
- }
-
+ }
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelRangeCheck.scala b/test/files/scalacheck/parallel-collections/ParallelRangeCheck.scala
index 372d6b9fbd..3c6a35d8f1 100644
--- a/test/files/scalacheck/parallel-collections/ParallelRangeCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelRangeCheck.scala
@@ -20,15 +20,15 @@ import scala.collection.parallel.ops._
object ParallelRangeCheck extends ParallelSeqCheck[Int]("ParallelRange[Int]") with ops.IntSeqOperators {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = collection.parallel.ParSeq[Int]
-
+
def hasStrictOrder = true
-
+
def isCheckingViews = false
-
+
def ofSize(vals: Seq[Gen[Int]], sz: Int) = unsupported
-
+
override def instances(vals: Seq[Gen[Int]]): Gen[Seq[Int]] = sized { start =>
sized { end =>
sized { step =>
@@ -36,7 +36,7 @@ object ParallelRangeCheck extends ParallelSeqCheck[Int]("ParallelRange[Int]") wi
}
}
}
-
+
def fromSeq(a: Seq[Int]) = a match {
case r: Range => ParRange(r.start, r.end, r.step, false)
case _ =>
@@ -44,14 +44,14 @@ object ParallelRangeCheck extends ParallelSeqCheck[Int]("ParallelRange[Int]") wi
for (i <- 0 until a.length) pa(i) = a(i)
pa
}
-
+
override def traversable2Seq(t: Traversable[Int]): Seq[Int] = t match {
case r: Range => r
case _ => t.toSeq
}
-
+
def values = Seq(choose(-100, 100))
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelSeqCheck.scala b/test/files/scalacheck/parallel-collections/ParallelSeqCheck.scala
index 3f8a8ad4f5..dd897412ae 100644
--- a/test/files/scalacheck/parallel-collections/ParallelSeqCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelSeqCheck.scala
@@ -16,13 +16,13 @@ import scala.collection.parallel._
abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableCheck[T](collName) with SeqOperators[T] {
-
+
type CollType <: collection.parallel.ParSeq[T]
-
+
def ofSize(vals: Seq[Gen[T]], sz: Int): Seq[T]
def fromSeq(s: Seq[T]): CollType
-
+
override def instances(vals: Seq[Gen[T]]): Gen[Seq[T]] = oneOf(
sized(
sz =>
@@ -31,17 +31,17 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
for (sz <- choose(1000, 2000)) yield ofSize(vals, sz)
)
-
+
def fromTraversable(t: Traversable[T]) = fromSeq(traversable2Seq(t))
def traversable2Seq(t: Traversable[T]): Seq[T] = {
if (t.isInstanceOf[Iterable[_]]) t.asInstanceOf[Iterable[T]].iterator.toList else t.toList
}
-
+
override def collectionPairs: Gen[(Seq[T], CollType)] = for (inst <- instances(values)) yield (inst, fromSeq(inst))
-
+
override def collectionPairsWithLengths: Gen[(Seq[T], CollType, Int)] =
for (inst <- instances(values); s <- choose(0, inst.size)) yield (inst, fromSeq(inst), s);
-
+
def collectionPairsWithModifiedWithLengths: Gen[(Seq[T], CollType, ParSeq[T], Int)] =
for (inst <- instances(values); s <- choose(0, inst.size);
updateStart <- choose(0, inst.size); howMany <- choose(0, inst.size)) yield {
@@ -49,31 +49,31 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
val parcollmodif = fromSeq(modifySlightly(inst, updateStart, howMany))
(inst, parcoll, parcollmodif, s)
}
-
+
def collectionPairsWithModified: Gen[(Seq[T], CollType, ParSeq[T])] =
for (inst <- instances(values); updateStart <- choose(0, inst.size); howMany <- choose(0, inst.size)) yield {
val parcoll = fromSeq(inst)
val parcollmodif = fromSeq(modifySlightly(inst, updateStart, howMany))
(inst, parcoll, parcollmodif)
}
-
+
def collectionPairsWithSliced: Gen[(Seq[T], CollType, ParSeq[T])] =
for (inst <- instances(values); sliceStart <- choose(0, inst.size); howMany <- choose(0, inst.size)) yield {
val parcoll = fromSeq(inst)
val parcollsliced = fromSeq(inst.slice(sliceStart, sliceStart + howMany))
(inst, parcoll, parcollsliced)
}
-
+
def collectionTripletsWith2Indices: Gen[(Seq[T], CollType, Seq[T], Int, Int)] =
for (inst <- instances(values); f <- choose(0, inst.size); s <- choose(0, inst.size - f);
third <- instances(values); sliceStart <- choose(0, inst.size); howMany <- choose(0, inst.size)) yield {
(inst, fromSeq(inst), inst.slice(sliceStart, sliceStart + howMany), f, s)
}
-
+
private def modifySlightly(coll: Seq[T], updateStart: Int, howMany: Int) = {
coll.patch(updateStart, coll, howMany)
}
-
+
property("segmentLengths must be equal") = forAll(collectionPairsWithLengths) { case (s, coll, len) =>
(for ((pred, ind) <- segmentLengthPredicates.zipWithIndex) yield {
val slen = s.segmentLength(pred, if (len < 0) 0 else len)
@@ -87,13 +87,13 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("operator " + ind) |: slen == clen
}).reduceLeft(_ && _)
}
-
+
property("prefixLengths must be equal") = forAll(collectionPairs) { case (s, coll) =>
(for ((pred, ind) <- segmentLengthPredicates.zipWithIndex) yield {
("operator " + ind) |: s.prefixLength(pred) == coll.prefixLength(pred)
}).reduceLeft(_ && _)
}
-
+
property("indexWheres must be equal") = forAll(collectionPairsWithLengths) { case (s, coll, len) =>
(for ((pred, ind) <- indexWherePredicates.zipWithIndex) yield {
val sind = s.indexWhere(pred, len)
@@ -108,7 +108,7 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("operator " + ind) |: sind == cind
}).reduceLeft(_ && _)
}
-
+
property("lastIndexWheres must be equal") = forAll(collectionPairsWithLengths) { case (s, coll, len) =>
(for ((pred, ind) <- lastIndexWherePredicates.zipWithIndex) yield {
val end = if (len >= s.size) s.size - 1 else len
@@ -117,7 +117,7 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("operator " + ind) |: sind == cind
}).reduceLeft(_ && _)
}
-
+
property("reverses must be equal") = forAll(collectionPairs) { case (s, coll) =>
(s.length == 0 && s.getClass == classOf[collection.immutable.Range]) ||
{
@@ -132,13 +132,13 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
sr == cr
}
}
-
+
property("reverseMaps must be equal") = forAll(collectionPairs) { case (s, coll) =>
(for ((f, ind) <- reverseMapFunctions.zipWithIndex) yield {
("operator " + ind) |: s.reverseMap(f) == coll.reverseMap(f)
}).reduceLeft(_ && _)
}
-
+
property("sameElements must be equal") = forAll(collectionPairsWithModifiedWithLengths) {
case (s, coll, collmodif, len) =>
val pos = if (len < 0) 0 else len
@@ -170,7 +170,7 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("collection " + ind) |: sres == pres
}).reduceLeft(_ && _)
}
-
+
property("startsWiths must be equal") = forAll(collectionPairsWithModifiedWithLengths) {
case (s, coll, collmodif, len) =>
val pos = if (len < 0) 0 else len
@@ -194,7 +194,7 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("seq " + sq) |: ss == cs
}).reduceLeft(_ && _)
}
-
+
property("endsWiths must be equal") = forAll(collectionPairsWithModified) {
case (s, coll, collmodif) =>
("ends with self" |: s.endsWith(s) == coll.endsWith(s)) &&
@@ -213,18 +213,18 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("seq " + sq) |: sew == cew
}).reduceLeft(_ && _)
}
-
+
property("unions must be equal") = forAll(collectionPairsWithModified) { case (s, coll, collmodif) =>
("modified" |: s.union(collmodif.seq) == coll.union(collmodif)) &&
("empty" |: s.union(Nil) == coll.union(fromSeq(Nil)))
}
-
+
// This is failing with my views patch: array index out of bounds in the array iterator.
// Couldn't see why this and only this was impacted, could use a second pair of eyes.
- //
+ //
// This was failing because some corner cases weren't added to the patch method in ParSeqLike.
// Curiously, this wasn't detected before.
- //
+ //
if (!isCheckingViews) property("patches must be equal") = forAll(collectionTripletsWith2Indices) {
case (s, coll, pat, from, repl) =>
("with seq" |: s.patch(from, pat, repl) == coll.patch(from, pat, repl)) &&
@@ -232,7 +232,7 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("with empty" |: s.patch(from, Nil, repl) == coll.patch(from, fromSeq(Nil), repl)) &&
("with one" |: (s.length == 0 || s.patch(from, List(s(0)), 1) == coll.patch(from, fromSeq(List(coll(0))), 1)))
}
-
+
if (!isCheckingViews) property("updates must be equal") = forAll(collectionPairsWithLengths) { case (s, coll, len) =>
val pos = if (len >= s.length) s.length - 1 else len
if (s.length > 0) {
@@ -247,15 +247,15 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
"from first" |: (supd == cupd)
} else "trivially" |: true
}
-
+
property("prepends must be equal") = forAll(collectionPairs) { case (s, coll) =>
s.length == 0 || s(0) +: s == coll(0) +: coll
}
-
+
property("appends must be equal") = forAll(collectionPairs) { case (s, coll) =>
s.length == 0 || s :+ s(0) == coll :+ coll(0)
}
-
+
property("padTos must be equal") = forAll(collectionPairsWithLengths) { case (s, coll, len) =>
val someValue = sampleValue
val sdoub = s.padTo(len * 2, someValue)
@@ -269,14 +269,14 @@ abstract class ParallelSeqCheck[T](collName: String) extends ParallelIterableChe
("smaller" |: s.padTo(len / 2, someValue) == coll.padTo(len / 2, someValue)) &&
("bigger" |: sdoub == cdoub)
}
-
+
property("corresponds must be equal") = forAll(collectionPairsWithModified) { case (s, coll, modified) =>
val modifcut = modified.toSeq.slice(0, modified.length)
("self" |: s.corresponds(s)(_ == _) == coll.corresponds(coll)(_ == _)) &&
("modified" |: s.corresponds(modified.seq)(_ == _) == coll.corresponds(modified)(_ == _)) &&
("modified2" |: s.corresponds(modifcut)(_ == _) == coll.corresponds(modifcut)(_ == _))
}
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelSetCheck.scala b/test/files/scalacheck/parallel-collections/ParallelSetCheck.scala
index 56f7832fed..4211abbd16 100644
--- a/test/files/scalacheck/parallel-collections/ParallelSetCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelSetCheck.scala
@@ -16,15 +16,15 @@ import scala.collection.parallel._
abstract class ParallelSetCheck[T](collname: String) extends ParallelIterableCheck[T](collname) {
type CollType <: ParSet[T]
-
+
property("gets iterated keys") = forAll(collectionPairs) {
case (t, coll) =>
val containsT = for (elem <- t) yield (coll.contains(elem))
val containsSelf = for (elem <- coll) yield (coll.contains(elem))
("Par contains elements of seq map" |: containsT.forall(_ == true)) &&
("Par contains elements of itself" |: containsSelf.forall(_ == true))
- }
-
+ }
+
}
diff --git a/test/files/scalacheck/parallel-collections/ParallelVectorCheck.scala b/test/files/scalacheck/parallel-collections/ParallelVectorCheck.scala
index a2b6cef96d..e4bb588fa7 100644
--- a/test/files/scalacheck/parallel-collections/ParallelVectorCheck.scala
+++ b/test/files/scalacheck/parallel-collections/ParallelVectorCheck.scala
@@ -23,11 +23,11 @@ import immutable.VectorBuilder
abstract class ParallelVectorCheck[T](tp: String) extends collection.parallel.ParallelSeqCheck[T]("ParVector[" + tp + "]") {
// ForkJoinTasks.defaultForkJoinPool.setMaximumPoolSize(Runtime.getRuntime.availableProcessors * 2)
// ForkJoinTasks.defaultForkJoinPool.setParallelism(Runtime.getRuntime.availableProcessors * 2)
-
+
type CollType = ParVector[T]
-
+
def isCheckingViews = false
-
+
def hasStrictOrder = true
def ofSize(vals: Seq[Gen[T]], sz: Int) = {
@@ -36,13 +36,13 @@ abstract class ParallelVectorCheck[T](tp: String) extends collection.parallel.Pa
for (i <- 0 until sz) vb += sample(gen)
vb.result
}
-
+
def fromSeq(a: Seq[T]) = {
val pa = ParVector.newCombiner[T]
for (elem <- a.toList) pa += elem
pa.result
}
-
+
}
diff --git a/test/files/scalacheck/parallel-collections/pc.scala b/test/files/scalacheck/parallel-collections/pc.scala
index 103b5e2993..cc0382303a 100644
--- a/test/files/scalacheck/parallel-collections/pc.scala
+++ b/test/files/scalacheck/parallel-collections/pc.scala
@@ -9,25 +9,25 @@ import scala.collection.parallel._
class ParCollProperties extends Properties("Parallel collections") {
/* Collections */
-
+
// parallel arrays
include(mutable.IntParallelArrayCheck)
-
+
// parallel ranges
include(immutable.ParallelRangeCheck)
-
+
// parallel immutable hash maps (tries)
include(immutable.IntIntParallelHashMapCheck)
-
+
// parallel immutable hash sets (tries)
include(immutable.IntParallelHashSetCheck)
-
+
// parallel mutable hash maps (tables)
include(mutable.IntIntParallelHashMapCheck)
-
+
// parallel mutable hash sets (tables)
include(mutable.IntParallelHashSetCheck)
-
+
// parallel vectors
include(immutable.IntParallelVectorCheck)
}
diff --git a/test/files/scalacheck/primitive-eqeq.scala b/test/files/scalacheck/primitive-eqeq.scala
index 60fe63c207..a783805e46 100644
--- a/test/files/scalacheck/primitive-eqeq.scala
+++ b/test/files/scalacheck/primitive-eqeq.scala
@@ -4,7 +4,7 @@ import Gen._
object Test extends Properties("==") {
def equalObjectsEqualHashcodes(x: Any, y: Any) = (x != y) || (x == y && x.## == y.##)
-
+
// ticket #2087
property("short/char") = forAll { (x: Short) => {
val ch: Char = x.toChar
@@ -14,15 +14,15 @@ object Test extends Properties("==") {
property("symmetry") = forAll { (x: AnyVal, y: AnyVal) => (x == y) == (y == x) }
property("transitivity") = forAll { (x: AnyVal, y: AnyVal, z: AnyVal) => x != y || y != z || x == z }
-
- property("##") = forAll {
+
+ property("##") = forAll {
(x: Short) => {
val anyvals = List(x.toByte, x.toChar, x, x.toInt, x.toLong, x.toFloat, x.toDouble, BigInt(x), BigDecimal(x))
val shortAndLarger = anyvals drop 2
val result = (
- ((anyvals, anyvals).zipped forall equalObjectsEqualHashcodes) &&
- ((shortAndLarger, shortAndLarger).zipped forall (_ == _)) &&
+ ((anyvals, anyvals).zipped forall equalObjectsEqualHashcodes) &&
+ ((shortAndLarger, shortAndLarger).zipped forall (_ == _)) &&
((shortAndLarger, shortAndLarger).zipped forall ((x, y) => (x: Any) == (y: Any)))
)
result
diff --git a/test/files/scalacheck/substringTests.scala b/test/files/scalacheck/substringTests.scala
index 76260b9dd2..a48356e1fa 100644
--- a/test/files/scalacheck/substringTests.scala
+++ b/test/files/scalacheck/substringTests.scala
@@ -6,11 +6,11 @@ object Test extends Properties("String") {
property("endsWith") = Prop.forAll((a: String, b: String) => (a+b).endsWith(b))
- property("concat") = Prop.forAll((a: String, b: String) =>
+ property("concat") = Prop.forAll((a: String, b: String) =>
(a+b).length >= a.length && (a+b).length >= b.length
)
- property("substring") = Prop.forAll((a: String, b: String) =>
+ property("substring") = Prop.forAll((a: String, b: String) =>
(a+b).substring(a.length) == b
)
diff --git a/test/files/scalap/caseClass/A.scala b/test/files/scalap/caseClass/A.scala
index be86714898..95f9984519 100644
--- a/test/files/scalap/caseClass/A.scala
+++ b/test/files/scalap/caseClass/A.scala
@@ -1,3 +1,3 @@
case class CaseClass[A <: Seq[Int]](i: A, s: String) {
- def foo = 239
+ def foo = 239
}
diff --git a/test/files/scalap/caseObject/A.scala b/test/files/scalap/caseObject/A.scala
index 809341ade9..6a3ff10d75 100644
--- a/test/files/scalap/caseObject/A.scala
+++ b/test/files/scalap/caseObject/A.scala
@@ -1,3 +1,3 @@
case object CaseObject {
- def bar = 239
+ def bar = 239
}
diff --git a/test/files/scalap/cbnParam/A.scala b/test/files/scalap/cbnParam/A.scala
index 978a718032..2f366df64a 100644
--- a/test/files/scalap/cbnParam/A.scala
+++ b/test/files/scalap/cbnParam/A.scala
@@ -1 +1 @@
-class CbnParam(s: => String)
+class CbnParam(s: => String)
diff --git a/test/files/specialized/arrays-traits.scala b/test/files/specialized/arrays-traits.scala
index ee62622635..de54d22d18 100644
--- a/test/files/specialized/arrays-traits.scala
+++ b/test/files/specialized/arrays-traits.scala
@@ -28,19 +28,19 @@ class BaseG[T](val arr: Array[T]) extends SuperG[T] {
object Test {
-
+
def main(args: Array[String]) {
(new BaseS(new Array[String](1)): SuperS[String]).foo
println(arrayApplyCount)
(new BaseS(new Array[String](1)): SuperS[String]).bar(new Array[String](1))
println(arrayApplyCount)
println(arrayUpdateCount)
-
+
(new BaseG(new Array[String](1)): SuperG[String]).foo
println(arrayApplyCount)
(new BaseG(new Array[String](1)): SuperG[String]).bar(new Array[String](1))
println(arrayApplyCount)
println(arrayUpdateCount)
}
-
+
}
diff --git a/test/files/specialized/arrays.scala b/test/files/specialized/arrays.scala
index 505f482486..c946a8fc55 100644
--- a/test/files/specialized/arrays.scala
+++ b/test/files/specialized/arrays.scala
@@ -15,23 +15,23 @@ class Spec[@specialized(AnyRef) T](a: Array[T]) {
object Test {
-
+
def main(args: Array[String]) {
val len = 50
-
+
testSpec(new Array[String](len))
println(arrayApplyCount)
-
+
(new Spec(new Array[String](len)))()
println(arrayApplyCount)
-
+
testGeneric(new Array[String](len))
println(arrayApplyCount)
-
+
(new Generic(new Array[String](len)))()
println(arrayApplyCount)
}
-
+
def testGeneric[T](a: Array[T]) = {
var i = 0
var sum = 0
@@ -41,7 +41,7 @@ object Test {
}
sum
}
-
+
def testSpec[@specialized(AnyRef) T](a: Array[T]) = {
var i = 0
var sum = 0
@@ -51,5 +51,5 @@ object Test {
}
sum
}
-
+
}
diff --git a/test/files/specialized/fft.scala b/test/files/specialized/fft.scala
index 76029832a9..62a6a2abb9 100644
--- a/test/files/specialized/fft.scala
+++ b/test/files/specialized/fft.scala
@@ -1,13 +1,13 @@
/*
* http://local.wasp.uwa.edu.au/~pbourke/miscellaneous/dft/
- Modification of Paul Bourkes FFT code by Peter Cusack
+ Modification of Paul Bourkes FFT code by Peter Cusack
to utilise the Microsoft complex type.
- This computes an in-place complex-to-complex FFT
+ This computes an in-place complex-to-complex FFT
x and y are the real and imaginary arrays of 2^m points.
dir = 1 gives forward transform
- dir = -1 gives reverse transform
+ dir = -1 gives reverse transform
*/
import Math.{sqrt, pow}
@@ -24,19 +24,19 @@ object Test {
x(j) = tmp
}
- def times(x: Complex, y: Complex): Complex =
+ def times(x: Complex, y: Complex): Complex =
(x._1 * y._1 - x._2 * y._2, x._1 * y._2 + x._2 * y._1)
-
+
def div(x: Complex, y: Complex): Complex = {
val num = pow(y._1, 2) + pow(y._2, 2)
((x._1 * y._1 + x._2 * y._2)/num,
(x._2 * y._1 - x._1 * y._2)/num)
}
- def div(x: Complex, y: Long) =
+ def div(x: Complex, y: Long) =
(x._1 / y, x._2 / y)
- def add(x: Complex, y: Complex) =
+ def add(x: Complex, y: Complex) =
(x._1 + y._1, x._2 + y._2)
def minus(x: Complex, y: Complex) =
@@ -49,8 +49,8 @@ object Test {
/*Calculate the number of points */
n = 1
- for (i <- 0l until m)
- n <<= 1
+ for (i <- 0l until m)
+ n <<= 1
/* Do the bit reversal */
i2 = n >> 1
@@ -86,7 +86,7 @@ object Test {
for (i <- j.until(n, l2)) {
i1 = i + l1;
t1 = times(u, x(i1.toInt))
- x(i1.toInt) = minus(x(i.toInt), t1)
+ x(i1.toInt) = minus(x(i.toInt), t1)
x(i.toInt) = add(x(i.toInt), t1)
}
@@ -97,7 +97,7 @@ object Test {
c = (c._1, sqrt( (1.0 - c._1) / 2.0 ))
// if (dir == 1)
// c.imag(-c.imag());
- if (dir == 1)
+ if (dir == 1)
c = (c._1, -c._2)
// c.real(sqrt((1.0 + c.real()) / 2.0));
@@ -107,8 +107,8 @@ object Test {
/* Scaling for forward transform */
if (dir == 1) {
for (i <- 0l until n)
- x(i.toInt) = div(x(i.toInt), n)
- }
+ x(i.toInt) = div(x(i.toInt), n)
+ }
}
def run() {
diff --git a/test/files/specialized/spec-ame.scala b/test/files/specialized/spec-ame.scala
index 45e88266eb..79ee4217ed 100644
--- a/test/files/specialized/spec-ame.scala
+++ b/test/files/specialized/spec-ame.scala
@@ -1,13 +1,13 @@
// ticket #3432
object Test {
trait B[@specialized(Int) T] {
- def value: T
+ def value: T
}
- class A[@specialized(Int) T](x: T) {
- def foo: B[T] = new B[T] {
- def value = x
- }
+ class A[@specialized(Int) T](x: T) {
+ def foo: B[T] = new B[T] {
+ def value = x
+ }
}
def main(args: Array[String]) {
diff --git a/test/files/specialized/spec-init.scala b/test/files/specialized/spec-init.scala
index 94cd0ee82b..5f27062ed2 100644
--- a/test/files/specialized/spec-init.scala
+++ b/test/files/specialized/spec-init.scala
@@ -36,7 +36,7 @@ object Test {
(new TouchGlobal(new Object))
Global.msg = "ok" // reset the value
(new TouchGlobal(42))
-
+
println(runtime.BoxesRunTime.integerBoxCount)
}
}
diff --git a/test/files/specialized/spec-matrix.scala b/test/files/specialized/spec-matrix.scala
index 463a454692..98735c8c03 100644
--- a/test/files/specialized/spec-matrix.scala
+++ b/test/files/specialized/spec-matrix.scala
@@ -3,7 +3,7 @@
class Matrix[@specialized A: ClassManifest](val rows: Int, val cols: Int) {
private val arr: Array[Array[A]] = Array.ofDim[A](rows, cols)
-
+
def apply(i: Int, j: Int): A = {
if (i < 0 || i >= rows || j < 0 || j >= cols)
throw new NoSuchElementException("Indexes out of bounds: " + (i, j))
@@ -29,7 +29,7 @@ object Test {
def main(args: Array[String]) {
val m = randomMatrix(200, 100)
val n = randomMatrix(100, 200)
-
+
val p = mult(m, n)
println(p(0, 0))
println("Boxed doubles: " + runtime.BoxesRunTime.doubleBoxCount)
@@ -38,7 +38,7 @@ object Test {
def randomMatrix(n: Int, m: Int) = {
val r = new util.Random(10)
- val x = new Matrix[Double](n, m)
+ val x = new Matrix[Double](n, m)
for (i <- 0 until n; j <- 0 until m)
x(i, j) = (r.nextInt % 1000).toDouble
x
@@ -46,7 +46,7 @@ object Test {
def printMatrix[Double](m: Matrix[Double]) {
for (i <- 0 until m.rows) {
- for (j <- 0 until m.cols)
+ for (j <- 0 until m.cols)
print("%5.3f ".format(m(i, j)))
println
}
@@ -56,7 +56,7 @@ object Test {
val p = new Matrix[T](m.rows, n.cols)
import num._
- for (i <- 0 until m.rows)
+ for (i <- 0 until m.rows)
for (j <- 0 until n.cols) {
var sum = num.zero
for (k <- 0 until n.rows)
@@ -68,7 +68,7 @@ object Test {
def mult(m: Matrix[Double], n: Matrix[Double]) = {
val p = new Matrix[Double](m.rows, n.cols)
- for (i <- 0 until m.rows)
+ for (i <- 0 until m.rows)
for (j <- 0 until n.cols) {
var sum = 0.0
for (k <- 0 until n.rows)
diff --git a/test/files/specialized/spec-overrides.scala b/test/files/specialized/spec-overrides.scala
index 994dd9d245..90dd5a4e72 100644
--- a/test/files/specialized/spec-overrides.scala
+++ b/test/files/specialized/spec-overrides.scala
@@ -17,6 +17,6 @@ object Test extends App {
assert(d2.default == 1.0, d2.default)
assert((d2: Base[_]).default == 1.0, (d2: Base[_]).default)
assert((d2: D1).default == 1.0, (d2: D1).default)
-
+
println(runtime.BoxesRunTime.integerBoxCount)
}
diff --git a/test/files/specialized/spec-patmatch.scala b/test/files/specialized/spec-patmatch.scala
index 909629455d..979d143fe2 100644
--- a/test/files/specialized/spec-patmatch.scala
+++ b/test/files/specialized/spec-patmatch.scala
@@ -46,7 +46,7 @@ object Test {
(new Foo).test(42.0)
(new Foo).test(42.0f)
(new Foo).test(new Object)
-
+
println(runtime.BoxesRunTime.integerBoxCount)
}
diff --git a/test/files/specialized/spec-super.scala b/test/files/specialized/spec-super.scala
index 056a7712f0..a77f65b2cf 100644
--- a/test/files/specialized/spec-super.scala
+++ b/test/files/specialized/spec-super.scala
@@ -7,13 +7,13 @@ object Test {
val i = new Extended(1)
println(i.foo) //infinite loop with StackOverflowError
-
+
println(runtime.BoxesRunTime.integerBoxCount)
}
}
-class Base[@specialized(Int) T](val t: T) {
- def foo() :T = t
+class Base[@specialized(Int) T](val t: T) {
+ def foo() :T = t
}
class Extended [@specialized(Int) T](t: T) extends Base[T](t) {
override def foo() :T = super.foo
diff --git a/test/files/specialized/spec-t3896.scala b/test/files/specialized/spec-t3896.scala
index 89326b4284..605ed0df9d 100644
--- a/test/files/specialized/spec-t3896.scala
+++ b/test/files/specialized/spec-t3896.scala
@@ -1,7 +1,7 @@
// see ticket #3896. Tests interaction between overloading, specialization and default params
trait Atomic[@specialized(Boolean) T] {
def x: T
-
+
// crash depends on the overloading: if second method is "g", no crash.
def f(fn: T => T): Boolean = f(fn(x))
def f[R](a: T, b: R = true) = b
@@ -14,7 +14,7 @@ object Test {
val x = e.f( (a : Boolean) => !a ) // ok
println( e.f( (a : Boolean) => !a ) toString ) // ok
println( e.f( (a : Boolean) => !a) ) // compiler crash
-
+
println(runtime.BoxesRunTime.integerBoxCount)
}
}
diff --git a/test/files/specialized/td3651.scala b/test/files/specialized/td3651.scala
index 117710b6dc..19a4ab616c 100644
--- a/test/files/specialized/td3651.scala
+++ b/test/files/specialized/td3651.scala
@@ -11,7 +11,7 @@ object Test {
val b: Base[Double] = new Derived(10)
b.a
println(runtime.BoxesRunTime.doubleBoxCount)
-
+
val der = new Derived(10)
der.a
println(runtime.BoxesRunTime.doubleBoxCount)
diff --git a/test/instrumented/library/scala/runtime/BoxesRunTime.java b/test/instrumented/library/scala/runtime/BoxesRunTime.java
index 9df2f81bc9..797e9f89dd 100644
--- a/test/instrumented/library/scala/runtime/BoxesRunTime.java
+++ b/test/instrumented/library/scala/runtime/BoxesRunTime.java
@@ -30,9 +30,9 @@ import scala.math.ScalaNumber;
* @contributor Stepan Koltsov
* @version 2.0 */
public final class BoxesRunTime
-{
+{
private static final int CHAR = 0, BYTE = 1, SHORT = 2, INT = 3, LONG = 4, FLOAT = 5, DOUBLE = 6, OTHER = 7;
-
+
private static int typeCode(Object a) {
if (a instanceof java.lang.Integer) return INT;
if (a instanceof java.lang.Byte) return BYTE;
@@ -43,13 +43,13 @@ public final class BoxesRunTime
if (a instanceof java.lang.Float) return FLOAT;
return OTHER;
}
-
+
private static String boxDescription(Object a) {
return "" + a.getClass().getSimpleName() + "(" + a + ")";
}
-
+
/* BOXING ... BOXING ... BOXING ... BOXING ... BOXING ... BOXING ... BOXING ... BOXING */
-
+
public static int booleanBoxCount = 0;
public static int characterBoxCount = 0;
public static int byteBoxCount = 0;
@@ -58,63 +58,63 @@ public final class BoxesRunTime
public static int longBoxCount = 0;
public static int floatBoxCount = 0;
public static int doubleBoxCount = 0;
-
+
public static java.lang.Boolean boxToBoolean(boolean b) {
booleanBoxCount++;
return java.lang.Boolean.valueOf(b);
}
-
+
public static java.lang.Character boxToCharacter(char c) {
characterBoxCount++;
return java.lang.Character.valueOf(c);
}
-
+
public static java.lang.Byte boxToByte(byte b) {
byteBoxCount++;
return java.lang.Byte.valueOf(b);
}
-
+
public static java.lang.Short boxToShort(short s) {
shortBoxCount++;
return java.lang.Short.valueOf(s);
}
-
+
public static java.lang.Integer boxToInteger(int i) {
integerBoxCount++;
return java.lang.Integer.valueOf(i);
}
-
+
public static java.lang.Long boxToLong(long l) {
longBoxCount++;
return java.lang.Long.valueOf(l);
}
-
+
public static java.lang.Float boxToFloat(float f) {
floatBoxCount++;
return java.lang.Float.valueOf(f);
}
-
+
public static java.lang.Double boxToDouble(double d) {
doubleBoxCount++;
// System.out.println("box " + d);
// (new Throwable()).printStackTrace();
return java.lang.Double.valueOf(d);
}
-
+
/* UNBOXING ... UNBOXING ... UNBOXING ... UNBOXING ... UNBOXING ... UNBOXING ... UNBOXING */
-
+
public static boolean unboxToBoolean(Object b) {
return b == null ? false : ((java.lang.Boolean)b).booleanValue();
}
-
+
public static char unboxToChar(Object c) {
return c == null ? 0 : ((java.lang.Character)c).charValue();
}
-
+
public static byte unboxToByte(Object b) {
return b == null ? 0 : ((java.lang.Byte)b).byteValue();
}
-
+
public static short unboxToShort(Object s) {
return s == null ? 0 : ((java.lang.Short)s).shortValue();
}
@@ -122,22 +122,22 @@ public final class BoxesRunTime
public static int unboxToInt(Object i) {
return i == null ? 0 : ((java.lang.Integer)i).intValue();
}
-
+
public static long unboxToLong(Object l) {
return l == null ? 0 : ((java.lang.Long)l).longValue();
}
-
+
public static float unboxToFloat(Object f) {
return f == null ? 0.0f : ((java.lang.Float)f).floatValue();
}
-
+
public static double unboxToDouble(Object d) {
// System.out.println("unbox " + d);
return d == null ? 0.0d : ((java.lang.Double)d).doubleValue();
}
/* COMPARISON ... COMPARISON ... COMPARISON ... COMPARISON ... COMPARISON ... COMPARISON */
-
+
private static int eqTypeCode(Number a) {
if ((a instanceof java.lang.Integer) || (a instanceof java.lang.Byte)) return INT;
if (a instanceof java.lang.Long) return LONG;
@@ -146,8 +146,8 @@ public final class BoxesRunTime
if (a instanceof java.lang.Float) return FLOAT;
return OTHER;
}
-
- public static boolean equals(Object x, Object y) {
+
+ public static boolean equals(Object x, Object y) {
if (x == y) return true;
return equals2(x, y);
}
@@ -162,10 +162,10 @@ public final class BoxesRunTime
return equalsCharObject((java.lang.Character)x, y);
if (x == null)
return y == null;
-
+
return x.equals(y);
}
-
+
public static boolean equalsNumObject(java.lang.Number xn, Object y) {
if (y instanceof java.lang.Number)
return equalsNumNum(xn, (java.lang.Number)y);
@@ -173,10 +173,10 @@ public final class BoxesRunTime
return equalsNumChar(xn, (java.lang.Character)y);
if (xn == null)
return y == null;
-
+
return xn.equals(y);
}
-
+
public static boolean equalsNumNum(java.lang.Number xn, java.lang.Number yn) {
int xcode = eqTypeCode(xn);
int ycode = eqTypeCode(yn);
@@ -195,10 +195,10 @@ public final class BoxesRunTime
}
if (xn == null)
return yn == null;
-
+
return xn.equals(yn);
}
-
+
public static boolean equalsCharObject(java.lang.Character xc, Object y) {
if (y instanceof java.lang.Character)
return xc.charValue() == ((java.lang.Character)y).charValue();
@@ -206,7 +206,7 @@ public final class BoxesRunTime
return equalsNumChar((java.lang.Number)y, xc);
if (xc == null)
return y == null;
-
+
return xc.equals(y);
}
@@ -224,11 +224,11 @@ public final class BoxesRunTime
default:
if (xn == null)
return yc == null;
-
+
return xn.equals(yc);
}
}
-
+
/** Hashcode algorithm is driven by the requirements imposed
* by primitive equality semantics, namely that equal objects
* have equal hashCodes. The first priority are the integral/char
@@ -262,16 +262,16 @@ public final class BoxesRunTime
else return n.hashCode();
}
public static int hashFromDouble(java.lang.Double n) {
- int iv = n.intValue();
+ int iv = n.intValue();
double dv = n.doubleValue();
if (iv == dv) return iv;
-
+
long lv = n.longValue();
if (lv == dv) return java.lang.Long.valueOf(lv).hashCode();
else return n.hashCode();
}
public static int hashFromFloat(java.lang.Float n) {
- int iv = n.intValue();
+ int iv = n.intValue();
float fv = n.floatValue();
if (iv == fv) return iv;
@@ -289,9 +289,9 @@ public final class BoxesRunTime
if (a instanceof Number) return hashFromNumber((Number)a);
else return a.hashCode();
}
-
+
/* OPERATORS ... OPERATORS ... OPERATORS ... OPERATORS ... OPERATORS ... OPERATORS ... OPERATORS ... OPERATORS */
-
+
/** arg1 + arg2 */
public static Object add(Object arg1, Object arg2) throws NoSuchMethodException {
int code1 = typeCode(arg1);
@@ -518,7 +518,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
/** -arg */
public static Object negate(Object arg) throws NoSuchMethodException {
int code = typeCode(arg);
@@ -540,7 +540,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
/** +arg */
public static Object positive(Object arg) throws NoSuchMethodException {
int code = typeCode(arg);
@@ -650,7 +650,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
/** ~arg */
public static Object complement(Object arg) throws NoSuchMethodException {
int code = typeCode(arg);
@@ -664,7 +664,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
/** !arg */
public static Object takeNot(Object arg) throws NoSuchMethodException {
if (arg instanceof Boolean) {
@@ -672,15 +672,15 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
public static Object testEqual(Object arg1, Object arg2) throws NoSuchMethodException {
return boxToBoolean(arg1 == arg2);
}
-
+
public static Object testNotEqual(Object arg1, Object arg2) throws NoSuchMethodException {
return boxToBoolean(arg1 != arg2);
}
-
+
public static Object testLessThan(Object arg1, Object arg2) throws NoSuchMethodException {
int code1 = typeCode(arg1);
int code2 = typeCode(arg2);
@@ -707,7 +707,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
public static Object testLessOrEqualThan(Object arg1, Object arg2) throws NoSuchMethodException {
int code1 = typeCode(arg1);
int code2 = typeCode(arg2);
@@ -734,7 +734,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
public static Object testGreaterOrEqualThan(Object arg1, Object arg2) throws NoSuchMethodException {
int code1 = typeCode(arg1);
int code2 = typeCode(arg2);
@@ -761,7 +761,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
public static Object testGreaterThan(Object arg1, Object arg2) throws NoSuchMethodException {
int code1 = typeCode(arg1);
int code2 = typeCode(arg2);
@@ -788,7 +788,7 @@ public final class BoxesRunTime
}
throw new NoSuchMethodException();
}
-
+
/** arg.toChar */
public static java.lang.Character toCharacter(Object arg) throws NoSuchMethodException {
if (arg instanceof java.lang.Integer) return boxToCharacter((char)unboxToInt(arg));
@@ -872,5 +872,5 @@ public final class BoxesRunTime
if (arg instanceof java.lang.Short) return boxToDouble((double)unboxToShort(arg));
throw new NoSuchMethodException();
}
-
+
}
diff --git a/test/instrumented/library/scala/runtime/ScalaRunTime.scala b/test/instrumented/library/scala/runtime/ScalaRunTime.scala
index 7c89beca61..a8a74dd8ab 100644
--- a/test/instrumented/library/scala/runtime/ScalaRunTime.scala
+++ b/test/instrumented/library/scala/runtime/ScalaRunTime.scala
@@ -25,17 +25,17 @@ import java.lang.reflect.{ Modifier, Method => JMethod }
*/
object ScalaRunTime {
def isArray(x: AnyRef): Boolean = isArray(x, 1)
- def isArray(x: Any, atLevel: Int): Boolean =
+ def isArray(x: Any, atLevel: Int): Boolean =
x != null && isArrayClass(x.asInstanceOf[AnyRef].getClass, atLevel)
private def isArrayClass(clazz: Class[_], atLevel: Int): Boolean =
clazz.isArray && (atLevel == 1 || isArrayClass(clazz.getComponentType, atLevel - 1))
- def isValueClass(clazz: Class[_]) = clazz.isPrimitive()
-
+ def isValueClass(clazz: Class[_]) = clazz.isPrimitive()
+
var arrayApplyCount = 0
var arrayUpdateCount = 0
-
+
/** Retrieve generic array element */
def array_apply(xs: AnyRef, idx: Int): Any = {
arrayApplyCount += 1
@@ -85,7 +85,7 @@ object ScalaRunTime {
case x: Array[Boolean] => x.length
case x: Array[Unit] => x.length
case null => throw new NullPointerException
- }
+ }
def array_clone(xs: AnyRef): AnyRef = xs match {
case x: Array[AnyRef] => ArrayRuntime.cloneArray(x)
@@ -122,7 +122,7 @@ object ScalaRunTime {
}
arr
}
-
+
// Java bug: http://bugs.sun.com/bugdatabase/view_bug.do?bug_id=4071957
// More background at ticket #2318.
def ensureAccessible(m: JMethod): JMethod = {
@@ -130,10 +130,10 @@ object ScalaRunTime {
try m setAccessible true
catch { case _: SecurityException => () }
}
- m
+ m
}
- def checkInitialized[T <: AnyRef](x: T): T =
+ def checkInitialized[T <: AnyRef](x: T): T =
if (x == null) throw new UninitializedError else x
abstract class Try[+A] {
@@ -143,9 +143,9 @@ object ScalaRunTime {
def Try[A](block: => A): Try[A] = new Try[A] with Runnable {
private var result: A = _
- private var exception: Throwable =
+ private var exception: Throwable =
try { run() ; null }
- catch {
+ catch {
case e: ControlThrowable => throw e // don't catch non-local returns etc
case e: Throwable => e
}
@@ -167,7 +167,7 @@ object ScalaRunTime {
def _toString(x: Product): String =
x.productIterator.mkString(x.productPrefix + "(", ",", ")")
-
+
def _hashCode(x: Product): Int = {
import scala.util.MurmurHash._
val arr = x.productArity
@@ -187,7 +187,7 @@ object ScalaRunTime {
/** Fast path equality method for inlining; used when -optimise is set.
*/
- @inline def inlinedEquals(x: Object, y: Object): Boolean =
+ @inline def inlinedEquals(x: Object, y: Object): Boolean =
if (x eq y) true
else if (x eq null) false
else if (x.isInstanceOf[java.lang.Number]) BoxesRunTime.equalsNumObject(x.asInstanceOf[java.lang.Number], y)
@@ -198,20 +198,20 @@ object ScalaRunTime {
case y: Product if x.productArity == y.productArity => x.productIterator sameElements y.productIterator
case _ => false
}
-
+
// hashcode -----------------------------------------------------------
//
// Note that these are the implementations called by ##, so they
// must not call ## themselves.
-
+
@inline def hash(x: Any): Int =
if (x.isInstanceOf[java.lang.Number]) BoxesRunTime.hashFromNumber(x.asInstanceOf[java.lang.Number])
else x.hashCode
-
+
@inline def hash(dv: Double): Int = {
val iv = dv.toInt
if (iv == dv) return iv
-
+
val lv = dv.toLong
if (lv == dv) return lv.hashCode
@@ -221,7 +221,7 @@ object ScalaRunTime {
@inline def hash(fv: Float): Int = {
val iv = fv.toInt
if (iv == fv) return iv
-
+
val lv = fv.toLong
if (lv == fv) return lv.hashCode
else fv.hashCode
@@ -236,9 +236,9 @@ object ScalaRunTime {
@inline def hash(x: Char): Int = x.toInt
@inline def hash(x: Boolean): Int = x.hashCode
@inline def hash(x: Unit): Int = 0
-
+
@inline def hash(x: Number): Int = runtime.BoxesRunTime.hashFromNumber(x)
-
+
/** XXX Why is there one boxed implementation in here? It would seem
* we should have all the numbers or none of them.
*/
@@ -263,15 +263,15 @@ object ScalaRunTime {
* called on null and (b) depending on the apparent type of an
* array, toString may or may not print it in a human-readable form.
*
- * @param arg the value to stringify
+ * @param arg the value to stringify
* @return a string representation of <code>arg</code>
*
- */
+ */
def stringOf(arg: Any): String = stringOf(arg, scala.Int.MaxValue)
- def stringOf(arg: Any, maxElements: Int): String = {
+ def stringOf(arg: Any, maxElements: Int): String = {
def isScalaClass(x: AnyRef) =
Option(x.getClass.getPackage) exists (_.getName startsWith "scala.")
-
+
def isTuple(x: AnyRef) =
x.getClass.getName matches """^scala\.Tuple(\d+).*"""
@@ -315,13 +315,13 @@ object ScalaRunTime {
// The try/catch is defense against iterables which aren't actually designed
// to be iterated, such as some scala.tools.nsc.io.AbstractFile derived classes.
- val s =
+ val s =
try inner(arg)
- catch {
+ catch {
case _: StackOverflowError | _: UnsupportedOperationException => arg.toString
}
-
+
val nl = if (s contains "\n") "\n" else ""
- nl + s + "\n"
+ nl + s + "\n"
}
}
diff --git a/test/pending/continuations-run/example0.scala b/test/pending/continuations-run/example0.scala
index 44b1331339..de5ea54e9d 100644
--- a/test/pending/continuations-run/example0.scala
+++ b/test/pending/continuations-run/example0.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test0.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example1.scala b/test/pending/continuations-run/example1.scala
index 195a98e59f..e31d6af88c 100644
--- a/test/pending/continuations-run/example1.scala
+++ b/test/pending/continuations-run/example1.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test1.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example16.scala b/test/pending/continuations-run/example16.scala
index 5eb64046ed..561f0ab0eb 100644
--- a/test/pending/continuations-run/example16.scala
+++ b/test/pending/continuations-run/example16.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test16Printf.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example2.scala b/test/pending/continuations-run/example2.scala
index 0d96257c40..730f7cc63e 100644
--- a/test/pending/continuations-run/example2.scala
+++ b/test/pending/continuations-run/example2.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test2.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example3.scala b/test/pending/continuations-run/example3.scala
index 3f5052a4ad..41cf1cce0c 100644
--- a/test/pending/continuations-run/example3.scala
+++ b/test/pending/continuations-run/example3.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test3.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example4.scala b/test/pending/continuations-run/example4.scala
index 66c6774791..adcc7aa90e 100644
--- a/test/pending/continuations-run/example4.scala
+++ b/test/pending/continuations-run/example4.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test4.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example5.scala b/test/pending/continuations-run/example5.scala
index 0994bdee8a..241e8cd069 100644
--- a/test/pending/continuations-run/example5.scala
+++ b/test/pending/continuations-run/example5.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test5.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example6.scala b/test/pending/continuations-run/example6.scala
index 5207e3fc68..00f84fcd6c 100644
--- a/test/pending/continuations-run/example6.scala
+++ b/test/pending/continuations-run/example6.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test6.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example7.scala b/test/pending/continuations-run/example7.scala
index fb22387dac..64abc6d9a6 100644
--- a/test/pending/continuations-run/example7.scala
+++ b/test/pending/continuations-run/example7.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test7.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example8.scala b/test/pending/continuations-run/example8.scala
index 8e21e6c674..a5f953d3fc 100644
--- a/test/pending/continuations-run/example8.scala
+++ b/test/pending/continuations-run/example8.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test8.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/example9.scala b/test/pending/continuations-run/example9.scala
index 0f27c686f7..09d792c427 100644
--- a/test/pending/continuations-run/example9.scala
+++ b/test/pending/continuations-run/example9.scala
@@ -1,9 +1,9 @@
// $Id$
object Test {
-
+
def main(args: Array[String]): Any = {
examples.continuations.Test9Monads.main(args)
}
-
+
} \ No newline at end of file
diff --git a/test/pending/continuations-run/foreach.scala b/test/pending/continuations-run/foreach.scala
index 4daade452c..76823e7604 100644
--- a/test/pending/continuations-run/foreach.scala
+++ b/test/pending/continuations-run/foreach.scala
@@ -5,16 +5,16 @@ import scala.util.continuations._
import scala.util.continuations.Loops._
object Test {
-
+
def main(args: Array[String]): Any = {
-
-
+
+
reset {
-
+
val list = List(1,2,3,4,5)
-
+
for (x <- list.suspendable) {
-
+
shift { k: (Unit => Unit) =>
println(x)
if (x < 3)
@@ -22,12 +22,12 @@ object Test {
else
println("enough is enough")
}
-
+
}
-
+
}
-
-
+
+
}
-
+
} \ No newline at end of file
diff --git a/test/pending/jvm/actorgc_leak.scala b/test/pending/jvm/actorgc_leak.scala
index 5e2b9d51e1..de3e04f1e8 100644
--- a/test/pending/jvm/actorgc_leak.scala
+++ b/test/pending/jvm/actorgc_leak.scala
@@ -14,7 +14,7 @@ object Test {
}
}
}
-
+
class FatActor extends Actor {
def act() {
fat = new Array[Int](fatness)
diff --git a/test/pending/jvm/cf-attributes.scala b/test/pending/jvm/cf-attributes.scala
index b5dd7eb386..9e0e9d95de 100644
--- a/test/pending/jvm/cf-attributes.scala
+++ b/test/pending/jvm/cf-attributes.scala
@@ -52,14 +52,14 @@ object anonymousFunctions {
}
object anonymousClasses {
- //InnerClass:
+ //InnerClass:
// public abstract #_= #_ of #_; //Foo=class anonymousClasses$Foo of class anonymousClasses$
// public abstract #_= #_ of #_; //Foo$class=class anonymousClasses$Foo$class of class anonymousClasses$
trait Foo {
def foo() { println("foo"); }
override def toString = getClass.getName
}
- //InnerClass:
+ //InnerClass:
// public final #_; //class anonymousClasses$$anon$1 of class anonymousClasses$
val x = new Foo() {
override def foo() { println("foo (overriden)"); }
@@ -105,7 +105,7 @@ trait Test2 {
def printClass(cls: Class[_]) {
println("\n[[ "+cls.getName+" ]]");
try { printInnerClasses(cls) }
- catch { case e: Exception => println(e) }
+ catch { case e: Exception => println(e) }
}
}
diff --git a/test/pending/jvm/javasigs.scala b/test/pending/jvm/javasigs.scala
index 48fa37119a..8da59ab0a0 100644
--- a/test/pending/jvm/javasigs.scala
+++ b/test/pending/jvm/javasigs.scala
@@ -30,7 +30,7 @@ object Scalatest {
s.start()
s
}
-
+
/** Execute cmd, wait for the process to end and pipe it's output to stdout */
def exec(cmd: String) {
@@ -50,12 +50,12 @@ object Scalatest {
// Test correct java signatures for anonymous classes. Enclosing method attributes should
// allow javac to see the type parameters in foo. See #3249.
-class A[U] {
+class A[U] {
def bar[B](x : => B) = x
def foo[C](c : C) : C = bar(c)
}
-object B {
+object B {
def bar[B](x : => B) = x
def foo[C](c : C) : C = {
class InnerB(x: C)
diff --git a/test/pending/jvm/timeout.scala b/test/pending/jvm/timeout.scala
index 3005beab2c..22b3647dce 100644
--- a/test/pending/jvm/timeout.scala
+++ b/test/pending/jvm/timeout.scala
@@ -16,7 +16,7 @@ object Test extends Application {
case 'doTiming =>
val s = sender
reactWithin(500) {
- case TIMEOUT =>
+ case TIMEOUT =>
s ! Timing(System.currentTimeMillis)
}
}
diff --git a/test/pending/neg/plugin-after-terminal/src/ThePlugin.scala b/test/pending/neg/plugin-after-terminal/src/ThePlugin.scala
index f3c913086e..2a4607392f 100644
--- a/test/pending/neg/plugin-after-terminal/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-after-terminal/src/ThePlugin.scala
@@ -12,7 +12,7 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "afterterminal"
val description = "Declares one plugin that wants to be after the terminal phase"
val components = List[PluginComponent](thePhase)
-
+
private object thePhase extends PluginComponent {
val global = ThePlugin.this.global
@@ -20,9 +20,9 @@ class ThePlugin(val global: Global) extends Plugin {
val phaseName = ThePlugin.this.name
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/plugin-before-parser/src/ThePlugin.scala b/test/pending/neg/plugin-before-parser/src/ThePlugin.scala
index 8714a55dc4..7ca896650d 100644
--- a/test/pending/neg/plugin-before-parser/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-before-parser/src/ThePlugin.scala
@@ -12,7 +12,7 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "beforeparser"
val description = "Declares one plugin that wants to be before the parser phase"
val components = List[PluginComponent](thePhase)
-
+
private object thePhase extends PluginComponent {
val global = ThePlugin.this.global
@@ -21,9 +21,9 @@ class ThePlugin(val global: Global) extends Plugin {
val phaseName = ThePlugin.this.name
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/plugin-cyclic-dependency/src/ThePlugin.scala b/test/pending/neg/plugin-cyclic-dependency/src/ThePlugin.scala
index 1dfc15cb28..bd94ce60d7 100644
--- a/test/pending/neg/plugin-cyclic-dependency/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-cyclic-dependency/src/ThePlugin.scala
@@ -12,7 +12,7 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "cyclicdependency"
val description = "Declares two phases that have a cyclic dependency"
val components = List[PluginComponent](thePhase1,thePhase2)
-
+
private object thePhase1 extends PluginComponent {
val global = ThePlugin.this.global
@@ -20,9 +20,9 @@ class ThePlugin(val global: Global) extends Plugin {
val phaseName = ThePlugin.this.name + "1"
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private object thePhase2 extends PluginComponent {
val global = ThePlugin.this.global
@@ -30,9 +30,9 @@ class ThePlugin(val global: Global) extends Plugin {
val phaseName = ThePlugin.this.name + "2"
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/plugin-multiple-rafter/src/ThePlugin.scala b/test/pending/neg/plugin-multiple-rafter/src/ThePlugin.scala
index 4c761517c1..819176fa88 100644
--- a/test/pending/neg/plugin-multiple-rafter/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-multiple-rafter/src/ThePlugin.scala
@@ -12,7 +12,7 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "multi-rafter"
val description = ""
val components = List[PluginComponent](thePhase)
-
+
private object thePhase extends PluginComponent {
val global = ThePlugin.this.global
@@ -20,9 +20,9 @@ class ThePlugin(val global: Global) extends Plugin {
override val runsRightAfter = Some("explicitouter")
val phaseName = ThePlugin.this.name
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/plugin-rafter-before-1/src/ThePlugin.scala b/test/pending/neg/plugin-rafter-before-1/src/ThePlugin.scala
index c42a914066..81ba85ae80 100644
--- a/test/pending/neg/plugin-rafter-before-1/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-rafter-before-1/src/ThePlugin.scala
@@ -12,7 +12,7 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "rafter-before-1"
val description = ""
val components = List[PluginComponent](thePhase1)
-
+
private object thePhase1 extends PluginComponent {
val global = ThePlugin.this.global
@@ -20,9 +20,9 @@ class ThePlugin(val global: Global) extends Plugin {
override val runsBefore = List[String]("erasure")
val phaseName = ThePlugin.this.name
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/plugin-rightafter-terminal/src/ThePlugin.scala b/test/pending/neg/plugin-rightafter-terminal/src/ThePlugin.scala
index 47dd06ec8a..9d6d30b327 100644
--- a/test/pending/neg/plugin-rightafter-terminal/src/ThePlugin.scala
+++ b/test/pending/neg/plugin-rightafter-terminal/src/ThePlugin.scala
@@ -12,18 +12,18 @@ class ThePlugin(val global: Global) extends Plugin {
val name = "rightafterterminal"
val description = "Declares one plugin that wants to be right after the terminal phase"
val components = List[PluginComponent](thePhase)
-
+
private object thePhase extends PluginComponent {
val global = ThePlugin.this.global
val runsAfter = List[String]()
override val runsRightAfter = Some("terminal")
-
+
val phaseName = ThePlugin.this.name
- def newPhase(prev: Phase) = new ThePhase(prev)
+ def newPhase(prev: Phase) = new ThePhase(prev)
}
-
+
private class ThePhase(prev: Phase) extends Phase(prev) {
def name = ThePlugin.this.name
def run {}
diff --git a/test/pending/neg/t0653.scala b/test/pending/neg/t0653.scala
index 48f39447ba..26204a8b40 100644
--- a/test/pending/neg/t0653.scala
+++ b/test/pending/neg/t0653.scala
@@ -7,11 +7,11 @@ class Fix[Op[A]](x : Op[Fix[Op]])
class FixTest {
// works
// val zero = new Fix[One](new One)
-
+
// don't work:
val two = new Fix(new Two) // this was what I found here
val zero = new Fix(new One) // this seems like something which could plausibly work
-
+
// neg/t0653.scala:12: error: no type parameters for constructor Fix: (x: Op[Fix[Op[A]]])Fix[Op[A]] exist so that it can be applied to arguments (Two[Nothing,Nothing])
// --- because ---
// argument expression's type is not compatible with formal parameter type;
@@ -24,7 +24,7 @@ class FixTest {
// argument expression's type is not compatible with formal parameter type;
// found : One[Nothing]
// required: ?Op[ Fix[?Op[ A ]] ]
- // val zero = new Fix(new One) // this seems like something which could plausibly work
+ // val zero = new Fix(new One) // this seems like something which could plausibly work
// ^
- // two errors found
+ // two errors found
}
diff --git a/test/pending/neg/t2080.scala b/test/pending/neg/t2080.scala
index 0880a40faa..3f4306c091 100644
--- a/test/pending/neg/t2080.scala
+++ b/test/pending/neg/t2080.scala
@@ -14,4 +14,4 @@ object C extends B {
}
override def f(x : T) : T = { x.g; x }
}
-//It compiles without errors, but T in B and T in C are completely unrelated types.
+//It compiles without errors, but T in B and T in C are completely unrelated types.
diff --git a/test/pending/neg/t3152.scala b/test/pending/neg/t3152.scala
index 27a314c484..3abc772076 100644
--- a/test/pending/neg/t3152.scala
+++ b/test/pending/neg/t3152.scala
@@ -3,6 +3,6 @@ package test
object NotEnclosing {
def main(args : Array[String]) : Unit = {}
def compare[T](x: Ordered[T], y: Ordered[T]) = error("")
- def mkEx: Ordered[_] = error("")
- compare(mkEx, mkEx)
+ def mkEx: Ordered[_] = error("")
+ compare(mkEx, mkEx)
}
diff --git a/test/pending/neg/t963.scala b/test/pending/neg/t963.scala
index 430ef090e4..3be0be1b84 100644
--- a/test/pending/neg/t963.scala
+++ b/test/pending/neg/t963.scala
@@ -5,8 +5,8 @@ trait A {
}
object B {
- def f(x : { val y : A }) { x.y.v = x.y.v }
-
+ def f(x : { val y : A }) { x.y.v = x.y.v }
+
var a : A = _
var b : Boolean = false
def y : A = {
diff --git a/test/pending/neg/tcpoly_typealias_eta.scala b/test/pending/neg/tcpoly_typealias_eta.scala
index 0fb2c2d33e..033c911f7c 100644
--- a/test/pending/neg/tcpoly_typealias_eta.scala
+++ b/test/pending/neg/tcpoly_typealias_eta.scala
@@ -12,7 +12,7 @@ trait A3 {
trait FooCov[+x]
trait FooCon[-x]
-trait FooBound[+x <: String]
+trait FooBound[+x <: String]
trait BOk1 extends A {
type m/*[+x]*/ = FooCov/*[x]*/
@@ -30,8 +30,8 @@ trait BOk4 extends A3 {
type m/*[+x]*/ = FooCov/*[x]*/ // weaker variance
}
-// there are two aspects to check:
- // does type alias signature (not considering RHS) correspond to abstract type member in super class
+// there are two aspects to check:
+ // does type alias signature (not considering RHS) correspond to abstract type member in super class
// does RHS correspond to the type alias sig
trait BInv extends A{
type m/*[x]*/ = FooCov/*[x]*/ // error: invariant x in alias def
diff --git a/test/pending/neg/tcpoly_variance_enforce_getter_setter.scala b/test/pending/neg/tcpoly_variance_enforce_getter_setter.scala
index 321d392cc4..deafba8d8a 100644
--- a/test/pending/neg/tcpoly_variance_enforce_getter_setter.scala
+++ b/test/pending/neg/tcpoly_variance_enforce_getter_setter.scala
@@ -1,12 +1,12 @@
trait coll[+m[+x]]
-class FooInvar[x]
+class FooInvar[x]
class FooContra[-x]
class FooCov[+x]
object test {
var ok: coll[FooCov] = _
-
+
var x: coll[FooInvar] = _ // TODO: error should be reported only once instead of separately for getter and setter
var y: coll[FooContra] = _
}
diff --git a/test/pending/neg/type-diagnostics.scala b/test/pending/neg/type-diagnostics.scala
index 7f9a151dcd..a3a9172bb2 100644
--- a/test/pending/neg/type-diagnostics.scala
+++ b/test/pending/neg/type-diagnostics.scala
@@ -7,5 +7,5 @@ object TooManyParens {
// Unspecified value parameter elem.
// def f = Map(1 -> 2).keySet()
// ^
-
+
}
diff --git a/test/pending/pos/misc/B.scala b/test/pending/pos/misc/B.scala
index 3a080e4712..afc30944f5 100644
--- a/test/pending/pos/misc/B.scala
+++ b/test/pending/pos/misc/B.scala
@@ -1,7 +1,7 @@
package test
class B {
-
+
def myA = new A()
}
diff --git a/test/pending/pos/no-widen-locals.scala b/test/pending/pos/no-widen-locals.scala
index ba568f64eb..013e63f0a2 100644
--- a/test/pending/pos/no-widen-locals.scala
+++ b/test/pending/pos/no-widen-locals.scala
@@ -8,7 +8,7 @@ object Test {
val X2 = 10
val X3 = 15
val X4 = 20
-
+
(x: @switch) match {
case X1 => 1
case X2 => 2
diff --git a/test/pending/pos/sig/sigs.scala b/test/pending/pos/sig/sigs.scala
index 72a293d0e6..bdb72a09bb 100644
--- a/test/pending/pos/sig/sigs.scala
+++ b/test/pending/pos/sig/sigs.scala
@@ -1,5 +1,5 @@
package test
-class T {
+class T {
def foo[T <: String](x: T): T = x
def bar[T](x: T): T = x
class Inner {
diff --git a/test/pending/pos/t0621.scala b/test/pending/pos/t0621.scala
index d178bed0fb..1d2531c4bd 100644
--- a/test/pending/pos/t0621.scala
+++ b/test/pending/pos/t0621.scala
@@ -1,7 +1,7 @@
object Test {
val x1 : List[T] forSome { type T } = List(42)
val w1 = x1 match { case y : List[u] => ((z : u) => z)(y.head) }
-
+
val x2 : T forSome { type T } = 42
val w2 = x2 match { case y : u => ((z : u) => z)(y) }
}
diff --git a/test/pending/pos/t1357.scala b/test/pending/pos/t1357.scala
index fcdecb3ad3..7bc6d45034 100644
--- a/test/pending/pos/t1357.scala
+++ b/test/pending/pos/t1357.scala
@@ -6,7 +6,7 @@ object NonEmptyCons {
object Main {
type BT[+H, +T <: Tuple2[Tuple2[H, T], Tuple2[H, T]]] = Tuple2[H, T]
-
+
// type T = Tuple2[String,String]
type BinaryTree[+E] = BT[E, T forSome { type T <: Tuple2[BT[E, T], BT[E, T]] }]
diff --git a/test/pending/pos/t1380/hallo.scala b/test/pending/pos/t1380/hallo.scala
index 27ecd9fb8b..bb8fff2333 100644
--- a/test/pending/pos/t1380/hallo.scala
+++ b/test/pending/pos/t1380/hallo.scala
@@ -1,3 +1,3 @@
object hallo {
- def main(args:Array[String]) = println("hallo")
+ def main(args:Array[String]) = println("hallo")
}
diff --git a/test/pending/pos/t1786.scala b/test/pending/pos/t1786.scala
index d0cf8c7bac..dca2edaab4 100644
--- a/test/pending/pos/t1786.scala
+++ b/test/pending/pos/t1786.scala
@@ -1,10 +1,10 @@
/** This a consequence of the current type checking algorithm, where bounds
* are checked only after variables are instantiated. I believe this will change once we go to contraint-based type inference. Assigning low priority until then.
- *
+ *
*
*/
class SomeClass(val intValue:Int)
-class MyClass[T <: SomeClass](val myValue:T)
+class MyClass[T <: SomeClass](val myValue:T)
object Test extends Application {
def myMethod(i:MyClass[_]) {
diff --git a/test/pending/pos/t2173.scala b/test/pending/pos/t2173.scala
index bbcca39826..cf1913d88b 100644
--- a/test/pending/pos/t2173.scala
+++ b/test/pending/pos/t2173.scala
@@ -4,9 +4,9 @@ class A[+U >: Null] {
}
// with the following error:
-//
+//
// type arguments [A.this.R[X]] do not conform to class A's type parameter bounds [+U >: Null]
-//
+//
// However, because type R[+X>:Null] is identical to X, it should carry X bounds and R[X] lower bound should be known to be X's lower bound, i.e. Null.
-//
+//
// The same problem occurs with upper bounds.
diff --git a/test/pending/pos/t4606.scala b/test/pending/pos/t4606.scala
index f79d17d436..f4e5058483 100644
--- a/test/pending/pos/t4606.scala
+++ b/test/pending/pos/t4606.scala
@@ -1,9 +1,9 @@
object t4606 {
class A(var x: Int)
class B(x: Int) extends A(x)
- trait C { self: B =>
- def foo = x
- def bar = self.x
+ trait C { self: B =>
+ def foo = x
+ def bar = self.x
def baz = {
val b: B = self
b.x
diff --git a/test/pending/pos/those-kinds-are-high.scala b/test/pending/pos/those-kinds-are-high.scala
index d3ee2bf308..3012e72d7e 100644
--- a/test/pending/pos/those-kinds-are-high.scala
+++ b/test/pending/pos/those-kinds-are-high.scala
@@ -4,18 +4,18 @@ class A {
class C1[T] extends Template[C1] with Container[T]
class C2[T] extends Template[C2] with Container[T]
-
+
/** Target expression:
* List(new C1[String], new C2[String])
*/
-
+
// Here's what would ideally be inferred.
//
// scala> :type List[Template[Container] with Container[String]](new C1[String], new C2[String])
// List[Template[Container] with Container[java.lang.String]]
//
// Here's what it does infer.
- //
+ //
// scala> :type List(new C1[String], new C2[String])
// <console>:8: error: type mismatch;
// found : C1[String]
@@ -27,11 +27,11 @@ class A {
//
// List[Container[String] with Template[Container[Any] with Template[Container[Any] with Template[Any]]]
//
-
+
/** Working version explicitly typed.
*/
def fExplicit = List[Template[Container] with Container[String]](new C1[String], new C2[String])
-
+
// nope
// def fFail = List(new C1[String], new C2[String])
}
diff --git a/test/pending/pos/unappgadteval.scala b/test/pending/pos/unappgadteval.scala
index fce54723a1..89f6cabc43 100644
--- a/test/pending/pos/unappgadteval.scala
+++ b/test/pending/pos/unappgadteval.scala
@@ -21,30 +21,30 @@ object Suc { def unapply(a: Suc) = true }
class Suc() extends Term[Int => Int]
// Environments :
-abstract class Env {
+abstract class Env {
def apply[a](v: Var[a]): a
def extend[a](v: Var[a], x : a) = new Env {
- def apply[b](w: Var[b]): b = w match {
+ def apply[b](w: Var[b]): b = w match {
case _ : v.type => x // v eq w, hence a = b
case _ => Env.this.apply(w)
}}
}
-object empty extends Env {
- def apply[a](x: Var[a]): a = throw new Error("not found : "+x.name)
+object empty extends Env {
+ def apply[a](x: Var[a]): a = throw new Error("not found : "+x.name)
}
object Test {
val v1 = new Var[util.Random]("random")
val v2 = new Var[Int]("Int")
val v3 = new Var[List[String]]("list")
-
+
val anEnv = (empty
.extend(v1, new util.Random)
.extend(v2, 58)
.extend(v3, Nil)
)
-
+
def eval[a](t: Term[a], env : Env): a = t match {
// First three work
case v : Var[b] => env(v) // a = b
@@ -54,9 +54,9 @@ object Test {
// Next one fails like:
//
// found : (Int) => Int
- // required: a
+ // required: a
case i @ Suc() => { (y: Int) => y + 1 } // a = Int => Int
-
+
// Next one fails like:
//
// error: '=>' expected but '[' found.
@@ -64,11 +64,11 @@ object Test {
// ^
case f @ Lam[b,c](x, e) => { (y: b) => eval(e, env.extend(x, y)) } // a = b=>c
}
-
+
val f1 = () => eval(v1, anEnv)
val f2 = () => eval(v2, anEnv)
val f3 = () => eval(v3, anEnv)
-
+
def main(args: Array[String]): Unit = {
println(f1())
println(f2())
diff --git a/test/pending/pos/virt.scala b/test/pending/pos/virt.scala
index 6fe21246b0..99dcd747b2 100644
--- a/test/pending/pos/virt.scala
+++ b/test/pending/pos/virt.scala
@@ -1,9 +1,9 @@
object Virt extends Application {
- class Foo {
+ class Foo {
trait Inner <: { val x : Int = 3 }
}
- class Bar extends Foo {
+ class Bar extends Foo {
trait Inner <: { val y : Int = x }
}
}
diff --git a/test/pending/run/TestFlatMap.scala b/test/pending/run/TestFlatMap.scala
index e6fb696aa2..dd5a0a0c2f 100644
--- a/test/pending/run/TestFlatMap.scala
+++ b/test/pending/run/TestFlatMap.scala
@@ -4,7 +4,7 @@ import scala.util.Random
import scala.collection.parallel.CompositeThrowable
object Test {
-
+
def main(args: Array[String]) {
val N = 1500
val M = 1500
@@ -12,7 +12,7 @@ object Test {
var unmatchedRight = new PMHashSet[Int]
Range(0, N).foreach{ x => unmatchedLeft += x}
Range(0, M).foreach{ x => unmatchedRight += x}
-
+
try {
val matches = unmatchedLeft.flatMap{ lind: Int =>
val dists = unmatchedRight.seq.map{ rind: Int =>
@@ -25,5 +25,5 @@ object Test {
case c: CompositeThrowable => for (t <- c.throwables) println("\n%s\n%s".format(t, t.getStackTrace.mkString("\n")))
}
}
-
+
}
diff --git a/test/pending/run/hk-lub-fail.scala b/test/pending/run/hk-lub-fail.scala
index 26bd85c943..b58a86ee75 100644
--- a/test/pending/run/hk-lub-fail.scala
+++ b/test/pending/run/hk-lub-fail.scala
@@ -30,7 +30,7 @@ object Test {
val tps = List(quux1, quux2) map (_.tpe)
val test = EmptyPackageClass.tpe.member(newTermName("Test"))
val f = test.tpe.member(newTypeName("F")).tpe
-
+
val fn = f.normalize.asInstanceOf[ExistentialType]
val fn2 = fn.underlying.asInstanceOf[TypeRef]
*/
diff --git a/test/pending/run/instanceOfAndTypeMatching.scala b/test/pending/run/instanceOfAndTypeMatching.scala
index 60b11ef0c1..e04ae13585 100644
--- a/test/pending/run/instanceOfAndTypeMatching.scala
+++ b/test/pending/run/instanceOfAndTypeMatching.scala
@@ -6,9 +6,9 @@ object Summary {
class Inner { }
def f() = { class MethodInner ; new MethodInner }
}
-
+
// 1 static issue:
- //
+ //
// Given method in MethodInner: def g(other: MethodInner) = ()
// method1.g(method1) fails to compile with type error.
//
@@ -20,7 +20,7 @@ object Summary {
// traverse a method.
//
// 4 runtime issues:
- //
+ //
// From the outside: inner1.isInstanceOf[outer2.Inner] is true, should (maybe) be false
// From inside inner1: inner2.isInstanceOf[Outer.this.Inner] is true, should (maybe) be false
// From the outside: inner1 match { case _: outer2.Inner => true ... } is true, should definitely be false
@@ -44,13 +44,13 @@ class Outer {
def passInner(other: Inner) = () // pass only Inners from this Outer instance
def passInner2(other: Outer.this.Inner) = () // same as above
def passInnerSharp(other: Outer#Inner) = () // pass any Inner
-
+
def compareSimpleWithTypeMatch(other: Any) = other match {
case _: Inner => true
case _ => false
}
def compareSimpleWithInstanceOf(other: Any) = other.isInstanceOf[Inner]
-
+
def compareSharpWithTypeMatch(other: Any) = {
other match {
case _: Outer#Inner => true
@@ -58,16 +58,16 @@ class Outer {
}
}
def compareSharpWithInstanceOf(other: Any) = other.isInstanceOf[Outer#Inner]
-
+
def comparePathWithTypeMatch(other: Any) = other match {
case _: Outer.this.Inner => true
case _ => false
}
- def comparePathWithInstanceOf(other: Any) = other.isInstanceOf[Outer.this.Inner]
+ def comparePathWithInstanceOf(other: Any) = other.isInstanceOf[Outer.this.Inner]
}
-
+
def f() = {
- class MethodInner {
+ class MethodInner {
def passOuter(other: Outer) = () // pass any Outer
def passThisType(other: Outer.this.type) = () // pass only this Outer instance
def passInner(other: Inner) = () // pass only Inners from this Outer instance
@@ -75,14 +75,14 @@ class Outer {
def passInnerSharp(other: Outer#Inner) = () // pass any Inner
def passMethodInner(other: MethodInner) = () // pass only MethodInners from this Outer instance
// is there any way to refer to Outer#MethodInner? Not that there should be.
-
+
def compareWithInstanceOf(other: Any) = other.isInstanceOf[MethodInner]
def compareWithTypeMatch(other: Any) = other match {
case _: MethodInner => true
case _ => false
}
}
-
+
new MethodInner
}
}
@@ -94,7 +94,7 @@ object Test {
val inner2 = new outer2.Inner
val method1 = outer1.f()
val method2 = outer2.f()
-
+
def testInnerStatic = {
// these should all work
inner1.passOuter(outer1)
@@ -104,7 +104,7 @@ object Test {
inner1.passInner2(inner1)
inner1.passInnerSharp(inner1)
inner1.passInnerSharp(inner2)
-
+
// these should all fail to compile, and do
//
// inner1.passThisType(outer2)
@@ -113,30 +113,30 @@ object Test {
}
def testInnerRuntime = {
println("testInnerRuntime\n")
-
+
List("These should be true under any scenario: ",
- inner1.isInstanceOf[outer1.Inner] ,
+ inner1.isInstanceOf[outer1.Inner] ,
inner1.isInstanceOf[Outer#Inner] ,
(inner1: Any) match { case _: Outer#Inner => true ; case _ => false } ,
(inner1: Any) match { case _: outer1.Inner => true ; case _ => false } ,
inner1.compareSharpWithTypeMatch(inner2) ,
inner1.compareSharpWithInstanceOf(inner2)
) foreach println
-
+
List("These should be true under current proposal: ",
- inner1.compareSimpleWithInstanceOf(inner2)
+ inner1.compareSimpleWithInstanceOf(inner2)
) foreach println
-
+
List("These should be false under current proposal: ",
inner1.compareSimpleWithTypeMatch(inner2) ,
- inner1.comparePathWithTypeMatch(inner2)
+ inner1.comparePathWithTypeMatch(inner2)
) foreach println
-
- List("These return true but I think should return false: ",
+
+ List("These return true but I think should return false: ",
inner1.isInstanceOf[outer2.Inner] , // true
inner1.comparePathWithInstanceOf(inner2) // true
) foreach println
-
+
List("These are doing the wrong thing under current proposal",
(inner1: Any) match { case _: outer2.Inner => true ; case _ => false } // should be false
) foreach println
@@ -159,7 +159,7 @@ object Test {
// method1.passMethodInner(method1)
// ^
method1.passMethodInner(method1)
-
+
// these should all fail to compile, and do
//
// method1.passThisType(outer2)
@@ -167,24 +167,24 @@ object Test {
// method1.passInner2(inner2)
// method1.passMethodInner(method2)
}
-
+
def testMethodInnerRuntime = {
println("\ntestMethodInnerRuntime\n")
-
+
List("These should be true under any scenario: ",
method1.compareWithInstanceOf(method1) ,
- method1.compareWithTypeMatch(method1)
+ method1.compareWithTypeMatch(method1)
) foreach println
-
+
List("These should be true under current proposal: ",
method1.compareWithInstanceOf(method2)
) foreach println
-
+
List("These are doing the wrong thing under current proposal",
method1.compareWithTypeMatch(method2) // should be false
) foreach println
}
-
+
def main(args: Array[String]): Unit = {
testInnerRuntime
testMethodInnerRuntime
diff --git a/test/pending/run/sigtp.scala b/test/pending/run/sigtp.scala
index 3e162cfdba..f8e050dbdc 100644
--- a/test/pending/run/sigtp.scala
+++ b/test/pending/run/sigtp.scala
@@ -12,6 +12,6 @@ final class Bug[A, B](val key: A) extends BugBase[A, Bug[A, B]] {
object Test extends SigTest {
def main(args: Array[String]): Unit = {
show[BugBase[_, _]]()
- show[Bug[_, _]]()
+ show[Bug[_, _]]()
}
}
diff --git a/test/pending/run/string-reverse.scala b/test/pending/run/string-reverse.scala
index 51b16bcd6a..976a970dec 100644
--- a/test/pending/run/string-reverse.scala
+++ b/test/pending/run/string-reverse.scala
@@ -6,13 +6,13 @@ object Test {
val ys = "Les Misérables"
val xs2 = new StringBuilder(xs)
val ys2 = new StringBuilder(ys)
-
+
def main(args: Array[String]): Unit = {
val out = new java.io.PrintStream(System.out, true, "UTF-8")
-
+
out.println("Strings")
List(xs, xs.reverse, ys, ys.reverse) foreach (out println _)
-
+
out.println("StringBuilder")
out.println(xs2.toString)
out.println(xs2.reverseContents().toString)
diff --git a/test/pending/run/structural-types-vs-anon-classes.scala b/test/pending/run/structural-types-vs-anon-classes.scala
index cf68f831f5..23410e3955 100644
--- a/test/pending/run/structural-types-vs-anon-classes.scala
+++ b/test/pending/run/structural-types-vs-anon-classes.scala
@@ -3,14 +3,14 @@ object Test {
class Leg
class Tail
class Monkey(arms: List[Arm], legs :List[Leg], tail: Tail)
-
+
def makeAwesomeMonkey(arms: List[Arm], legs: List[Leg], tail: Tail) = {
object m extends Monkey(arms, legs, tail) {
def beAwesome () = "I can fly! I can fly!"
}
m
}
-
+
def main(args: Array[String]): Unit = {
println(makeAwesomeMonkey(Nil, Nil, new Tail) beAwesome)
}
diff --git a/test/pending/run/t0508x.scala b/test/pending/run/t0508x.scala
index 0c1ffde3ed..12d3d09711 100644
--- a/test/pending/run/t0508x.scala
+++ b/test/pending/run/t0508x.scala
@@ -4,12 +4,12 @@
};
def foo[A >: Nothing <: Any, B >: Nothing <: Any, C >: Nothing <: Any]
- (unapply1: (A) => Option[(B, C)], v: A): Unit =
+ (unapply1: (A) => Option[(B, C)], v: A): Unit =
unapply1.apply(v) match {
- case Some((fst @ _, snd @ _)) =>
+ case Some((fst @ _, snd @ _)) =>
scala.Predef.println(scala.Tuple2.apply[java.lang.String, java.lang.String]("first: ".+(fst), " second: ".+(snd)))
case _ => scala.Predef.println(":(")
- }
+ }
Test.this.foo[Test.Foo, String, Int]({
((eta$0$1: Test.Foo) => Test.this.Foo.unapply(eta$0$1))
}, Test.this.Foo.apply("this might be fun", 10));
diff --git a/test/pending/run/t1980.scala b/test/pending/run/t1980.scala
index 38353c6270..71c178d634 100644
--- a/test/pending/run/t1980.scala
+++ b/test/pending/run/t1980.scala
@@ -2,7 +2,7 @@
// Reported by: extempore Owned by: odersky
// Priority: normal Component: Compiler
// Keywords: Cc: paulp@…
-// Fixed in version:
+// Fixed in version:
// Description
scala> def foo() = { println("foo") ; 5 }
diff --git a/test/pending/run/t2318.scala b/test/pending/run/t2318.scala
index 7bb666706f..e42cbb9680 100644
--- a/test/pending/run/t2318.scala
+++ b/test/pending/run/t2318.scala
@@ -2,7 +2,7 @@ import java.security._
object Test {
trait Bar { def bar: Unit }
-
+
object Mgr extends SecurityManager {
override def checkPermission(perm: Permission) = perm match {
case _: java.lang.RuntimePermission => ()
@@ -11,11 +11,11 @@ object Test {
case _ => super.checkPermission(perm)
}
}
-
+
def t1() = {
val p = Runtime.getRuntime().exec("ls");
type Destroyable = { def destroy() : Unit }
- def doDestroy( obj : Destroyable ) : Unit = obj.destroy();
+ def doDestroy( obj : Destroyable ) : Unit = obj.destroy();
doDestroy( p );
}
def t2() = {
@@ -27,12 +27,12 @@ object Test {
val structural = b.asInstanceOf[{ def bar: Unit }]
structural.bar
}
-
+
def main(args: Array[String]) {
// figuring this will otherwise break on windows
try t1()
catch { case _: java.io.IOException => () }
-
+
t2()
}
}
diff --git a/test/pending/run/t3609.scala b/test/pending/run/t3609.scala
index 030b417044..eb25afd667 100755
--- a/test/pending/run/t3609.scala
+++ b/test/pending/run/t3609.scala
@@ -11,7 +11,7 @@ object Test extends Application {
}
// This code prints 1. If we remove comment, then it will print 4.
-// Moreover following code prints 3 (which is most strange thing):
+// Moreover following code prints 3 (which is most strange thing):
object Test2 extends Application {
class A
diff --git a/test/pending/run/t3669.scala b/test/pending/run/t3669.scala
index 4fd698c1a5..c60ba98538 100644
--- a/test/pending/run/t3669.scala
+++ b/test/pending/run/t3669.scala
@@ -1,5 +1,5 @@
trait MyTrait[T <: { var id: U }, U] {
- def test(t: T): T = {
+ def test(t: T): T = {
val v: U = t.id
t.id = v
t
diff --git a/test/pending/run/t3857.scala b/test/pending/run/t3857.scala
index 94f52f72fe..62bdc39da9 100644
--- a/test/pending/run/t3857.scala
+++ b/test/pending/run/t3857.scala
@@ -8,6 +8,6 @@ object Test extends SigTest {
def main(args: Array[String]): Unit = {
show[ScalaGeneric]()
show[ScalaGeneric2Trait]()
- show[ScalaGeneric2]()
+ show[ScalaGeneric2]()
}
}
diff --git a/test/pending/run/t4283/IllegalAccess.scala b/test/pending/run/t4283/IllegalAccess.scala
index 12de7e4649..33039c9350 100644
--- a/test/pending/run/t4283/IllegalAccess.scala
+++ b/test/pending/run/t4283/IllegalAccess.scala
@@ -2,7 +2,7 @@ package other
object IllegalAccess {
def main(args: Array[String]) {
- val x = (new test.ScalaBipp).make.get.asInstanceOf[test.ScalaBipp].f()
+ val x = (new test.ScalaBipp).make.get.asInstanceOf[test.ScalaBipp].f()
println(x)
val y = (new test.ScalaBipp).make.get.f()
println(y)
diff --git a/test/pending/scalacheck/process.scala b/test/pending/scalacheck/process.scala
index 1e06c4669e..f3aa872361 100644
--- a/test/pending/scalacheck/process.scala
+++ b/test/pending/scalacheck/process.scala
@@ -1,4 +1,4 @@
-/** process tests.
+/** process tests.
*/
import java.io.{ File, FileNotFoundException, IOException, InputStream, OutputStream, FileInputStream }
@@ -11,7 +11,7 @@ import scala.tools.nsc.io.{ File => SFile }
/** This has scrounged bits of sbt to flesh it out enough to run.
*/
package processtest {
-
+
object exit
{
def fn(code: Int) = System.exit(code)
@@ -77,7 +77,7 @@ object IO {
class ProcessSpecification extends Properties("Process I/O") {
implicit val exitCodeArb: Arbitrary[Array[Byte]] = Arbitrary(Gen.choose(0, 10) flatMap { size =>
- Gen.resize(size, Arbitrary.arbArray[Byte].arbitrary)
+ Gen.resize(size, Arbitrary.arbArray[Byte].arbitrary)
})
/*property("Correct exit code") = forAll( (exitCode: Byte) => checkExit(exitCode))
diff --git a/test/pending/script/t2365/Test.scala b/test/pending/script/t2365/Test.scala
index 53581d256b..110dea2ab6 100644
--- a/test/pending/script/t2365/Test.scala
+++ b/test/pending/script/t2365/Test.scala
@@ -17,17 +17,17 @@ object Test
for(i <- 0 until 150)
println(i + " " + test(A.apply) + " " + test(A2.apply) + " " + test(A3.apply) + " " + test(A3.apply))
}
-
+
def test(withF0: StructF0 => Int): Int = {
// Some large jar
val jar = File("../../../../lib/scalacheck.jar").toURL
// load a class in a separate loader that will be passed to A
val loader = new java.net.URLClassLoader(Array(File(".").toURL, jar))
// load a real class to fill perm gen space
- Class.forName("org.scalacheck.Properties", true, loader).newInstance
+ Class.forName("org.scalacheck.Properties", true, loader).newInstance
// create a class from another class loader with an apply: Int method
val b = Class.forName("B", true, loader).newInstance
-
+
// pass instance to a, which will call apply using structural type reflection.
// This should hold on to the class for B, which means bLoader will not get collected
withF0(b.asInstanceOf[StructF0])
diff --git a/test/pending/shootout/fasta.check b/test/pending/shootout/fasta.check
new file mode 100644
index 0000000000..f1caba0d62
--- /dev/null
+++ b/test/pending/shootout/fasta.check
@@ -0,0 +1,171 @@
+>ONE Homo sapiens alu
+GGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTTGGGAGGCCGAGGCGGGCGGA
+TCACCTGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACT
+AAAAATACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCAGCTACTCGGGAG
+GCTGAGGCAGGAGAATCGCTTGAACCCGGGAGGCGGAGGTTGCAGTGAGCCGAGATCGCG
+CCACTGCACTCCAGCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAAGGCCGGGCGCGGT
+GGCTCACGCCTGTAATCCCAGCACTTTGGGAGGCCGAGGCGGGCGGATCACCTGAGGTCA
+GGAGTTCGAGACCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAATACAAAAA
+TTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCAGCTACTCGGGAGGCTGAGGCAGGAG
+AATCGCTTGAACCCGGGAGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACTGCACTCCA
+GCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAAGGCCGGGCGCGGTGGCTCACGCCTGT
+AATCCCAGCACTTTGGGAGGCCGAGGCGGGCGGATCACCTGAGGTCAGGAGTTCGAGACC
+AGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAATACAAAAATTAGCCGGGCGTG
+GTGGCGCGCGCCTGTAATCCCAGCTACTCGGGAGGCTGAGGCAGGAGAATCGCTTGAACC
+CGGGAGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACTGCACTCCAGCCTGGGCGACAG
+AGCGAGACTCCGTCTCAAAAAGGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTT
+TGGGAGGCCGAGGCGGGCGGATCACCTGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACA
+TGGTGAAACCCCGTCTCTACTAAAAATACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCT
+GTAATCCCAGCTACTCGGGAGGCTGAGGCAGGAGAATCGCTTGAACCCGGGAGGCGGAGG
+TTGCAGTGAGCCGAGATCGCGCCACTGCACTCCAGCCTGGGCGACAGAGCGAGACTCCGT
+CTCAAAAAGGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTTGGGAGGCCGAGG
+CGGGCGGATCACCTGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACATGGTGAAACCCCG
+TCTCTACTAAAAATACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCAGCTA
+CTCGGGAGGCTGAGGCAGGAGAATCGCTTGAACCCGGGAGGCGGAGGTTGCAGTGAGCCG
+AGATCGCGCCACTGCACTCCAGCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAAGGCCG
+GGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTTGGGAGGCCGAGGCGGGCGGATCACC
+TGAGGTCAGGAGTTCGAGACCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAA
+TACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCAGCTACTCGGGAGGCTGA
+GGCAGGAGAATCGCTTGAACCCGGGAGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACT
+GCACTCCAGCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAAGGCCGGGCGCGGTGGCTC
+ACGCCTGTAATCCCAGCACTTTGGGAGGCCGAGGCGGGCGGATCACCTGAGGTCAGGAGT
+TCGAGACCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAATACAAAAATTAGC
+CGGGCGTGGTGGCGCGCGCCTGTAATCCCAGCTACTCGGGAGGCTGAGGCAGGAGAATCG
+CTTGAACCCGGGAGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACTGCACTCCAGCCTG
+GGCGACAGAGCGAGACTCCG
+>TWO IUB ambiguity codes
+cttBtatcatatgctaKggNcataaaSatgtaaaDcDRtBggDtctttataattcBgtcg
+tactDtDagcctatttSVHtHttKtgtHMaSattgWaHKHttttagacatWatgtRgaaa
+NtactMcSMtYtcMgRtacttctWBacgaaatatagScDtttgaagacacatagtVgYgt
+cattHWtMMWcStgttaggKtSgaYaaccWStcgBttgcgaMttBYatcWtgacaYcaga
+gtaBDtRacttttcWatMttDBcatWtatcttactaBgaYtcttgttttttttYaaScYa
+HgtgttNtSatcMtcVaaaStccRcctDaataataStcYtRDSaMtDttgttSagtRRca
+tttHatSttMtWgtcgtatSSagactYaaattcaMtWatttaSgYttaRgKaRtccactt
+tattRggaMcDaWaWagttttgacatgttctacaaaRaatataataaMttcgDacgaSSt
+acaStYRctVaNMtMgtaggcKatcttttattaaaaagVWaHKYagtttttatttaacct
+tacgtVtcVaattVMBcttaMtttaStgacttagattWWacVtgWYagWVRctDattBYt
+gtttaagaagattattgacVatMaacattVctgtBSgaVtgWWggaKHaatKWcBScSWa
+accRVacacaaactaccScattRatatKVtactatatttHttaagtttSKtRtacaaagt
+RDttcaaaaWgcacatWaDgtDKacgaacaattacaRNWaatHtttStgttattaaMtgt
+tgDcgtMgcatBtgcttcgcgaDWgagctgcgaggggVtaaScNatttacttaatgacag
+cccccacatYScaMgtaggtYaNgttctgaMaacNaMRaacaaacaKctacatagYWctg
+ttWaaataaaataRattagHacacaagcgKatacBttRttaagtatttccgatctHSaat
+actcNttMaagtattMtgRtgaMgcataatHcMtaBSaRattagttgatHtMttaaKagg
+YtaaBataSaVatactWtataVWgKgttaaaacagtgcgRatatacatVtHRtVYataSa
+KtWaStVcNKHKttactatccctcatgWHatWaRcttactaggatctataDtDHBttata
+aaaHgtacVtagaYttYaKcctattcttcttaataNDaaggaaaDYgcggctaaWSctBa
+aNtgctggMBaKctaMVKagBaactaWaDaMaccYVtNtaHtVWtKgRtcaaNtYaNacg
+gtttNattgVtttctgtBaWgtaattcaagtcaVWtactNggattctttaYtaaagccgc
+tcttagHVggaYtgtNcDaVagctctctKgacgtatagYcctRYHDtgBattDaaDgccK
+tcHaaStttMcctagtattgcRgWBaVatHaaaataYtgtttagMDMRtaataaggatMt
+ttctWgtNtgtgaaaaMaatatRtttMtDgHHtgtcattttcWattRSHcVagaagtacg
+ggtaKVattKYagactNaatgtttgKMMgYNtcccgSKttctaStatatNVataYHgtNa
+BKRgNacaactgatttcctttaNcgatttctctataScaHtataRagtcRVttacDSDtt
+aRtSatacHgtSKacYagttMHtWataggatgactNtatSaNctataVtttRNKtgRacc
+tttYtatgttactttttcctttaaacatacaHactMacacggtWataMtBVacRaSaatc
+cgtaBVttccagccBcttaRKtgtgcctttttRtgtcagcRttKtaaacKtaaatctcac
+aattgcaNtSBaaccgggttattaaBcKatDagttactcttcattVtttHaaggctKKga
+tacatcBggScagtVcacattttgaHaDSgHatRMaHWggtatatRgccDttcgtatcga
+aacaHtaagttaRatgaVacttagattVKtaaYttaaatcaNatccRttRRaMScNaaaD
+gttVHWgtcHaaHgacVaWtgttScactaagSgttatcttagggDtaccagWattWtRtg
+ttHWHacgattBtgVcaYatcggttgagKcWtKKcaVtgaYgWctgYggVctgtHgaNcV
+taBtWaaYatcDRaaRtSctgaHaYRttagatMatgcatttNattaDttaattgttctaa
+ccctcccctagaWBtttHtBccttagaVaatMcBHagaVcWcagBVttcBtaYMccagat
+gaaaaHctctaacgttagNWRtcggattNatcRaNHttcagtKttttgWatWttcSaNgg
+gaWtactKKMaacatKatacNattgctWtatctaVgagctatgtRaHtYcWcttagccaa
+tYttWttaWSSttaHcaaaaagVacVgtaVaRMgattaVcDactttcHHggHRtgNcctt
+tYatcatKgctcctctatVcaaaaKaaaagtatatctgMtWtaaaacaStttMtcgactt
+taSatcgDataaactaaacaagtaaVctaggaSccaatMVtaaSKNVattttgHccatca
+cBVctgcaVatVttRtactgtVcaattHgtaaattaaattttYtatattaaRSgYtgBag
+aHSBDgtagcacRHtYcBgtcacttacactaYcgctWtattgSHtSatcataaatataHt
+cgtYaaMNgBaatttaRgaMaatatttBtttaaaHHKaatctgatWatYaacttMctctt
+ttVctagctDaaagtaVaKaKRtaacBgtatccaaccactHHaagaagaaggaNaaatBW
+attccgStaMSaMatBttgcatgRSacgttVVtaaDMtcSgVatWcaSatcttttVatag
+ttactttacgatcaccNtaDVgSRcgVcgtgaacgaNtaNatatagtHtMgtHcMtagaa
+attBgtataRaaaacaYKgtRccYtatgaagtaataKgtaaMttgaaRVatgcagaKStc
+tHNaaatctBBtcttaYaBWHgtVtgacagcaRcataWctcaBcYacYgatDgtDHccta
+>THREE Homo sapiens frequency
+aacacttcaccaggtatcgtgaaggctcaagattacccagagaacctttgcaatataaga
+atatgtatgcagcattaccctaagtaattatattctttttctgactcaaagtgacaagcc
+ctagtgtatattaaatcggtatatttgggaaattcctcaaactatcctaatcaggtagcc
+atgaaagtgatcaaaaaagttcgtacttataccatacatgaattctggccaagtaaaaaa
+tagattgcgcaaaattcgtaccttaagtctctcgccaagatattaggatcctattactca
+tatcgtgtttttctttattgccgccatccccggagtatctcacccatccttctcttaaag
+gcctaatattacctatgcaaataaacatatattgttgaaaattgagaacctgatcgtgat
+tcttatgtgtaccatatgtatagtaatcacgcgactatatagtgctttagtatcgcccgt
+gggtgagtgaatattctgggctagcgtgagatagtttcttgtcctaatatttttcagatc
+gaatagcttctatttttgtgtttattgacatatgtcgaaactccttactcagtgaaagtc
+atgaccagatccacgaacaatcttcggaatcagtctcgttttacggcggaatcttgagtc
+taacttatatcccgtcgcttactttctaacaccccttatgtatttttaaaattacgttta
+ttcgaacgtacttggcggaagcgttattttttgaagtaagttacattgggcagactcttg
+acattttcgatacgactttctttcatccatcacaggactcgttcgtattgatatcagaag
+ctcgtgatgattagttgtcttctttaccaatactttgaggcctattctgcgaaatttttg
+ttgccctgcgaacttcacataccaaggaacacctcgcaacatgccttcatatccatcgtt
+cattgtaattcttacacaatgaatcctaagtaattacatccctgcgtaaaagatggtagg
+ggcactgaggatatattaccaagcatttagttatgagtaatcagcaatgtttcttgtatt
+aagttctctaaaatagttacatcgtaatgttatctcgggttccgcgaataaacgagatag
+attcattatatatggccctaagcaaaaacctcctcgtattctgttggtaattagaatcac
+acaatacgggttgagatattaattatttgtagtacgaagagatataaaaagatgaacaat
+tactcaagtcaagatgtatacgggatttataataaaaatcgggtagagatctgctttgca
+attcagacgtgccactaaatcgtaatatgtcgcgttacatcagaaagggtaactattatt
+aattaataaagggcttaatcactacatattagatcttatccgatagtcttatctattcgt
+tgtatttttaagcggttctaattcagtcattatatcagtgctccgagttctttattattg
+ttttaaggatgacaaaatgcctcttgttataacgctgggagaagcagactaagagtcgga
+gcagttggtagaatgaggctgcaaaagacggtctcgacgaatggacagactttactaaac
+caatgaaagacagaagtagagcaaagtctgaagtggtatcagcttaattatgacaaccct
+taatacttccctttcgccgaatactggcgtggaaaggttttaaaagtcgaagtagttaga
+ggcatctctcgctcataaataggtagactactcgcaatccaatgtgactatgtaatactg
+ggaacatcagtccgcgatgcagcgtgtttatcaaccgtccccactcgcctggggagacat
+gagaccacccccgtggggattattagtccgcagtaatcgactcttgacaatccttttcga
+ttatgtcatagcaatttacgacagttcagcgaagtgactactcggcgaaatggtattact
+aaagcattcgaacccacatgaatgtgattcttggcaatttctaatccactaaagcttttc
+cgttgaatctggttgtagatatttatataagttcactaattaagatcacggtagtatatt
+gatagtgatgtctttgcaagaggttggccgaggaatttacggattctctattgatacaat
+ttgtctggcttataactcttaaggctgaaccaggcgtttttagacgacttgatcagctgt
+tagaatggtttggactccctctttcatgtcagtaacatttcagccgttattgttacgata
+tgcttgaacaatattgatctaccacacacccatagtatattttataggtcatgctgttac
+ctacgagcatggtattccacttcccattcaatgagtattcaacatcactagcctcagaga
+tgatgacccacctctaataacgtcacgttgcggccatgtgaaacctgaacttgagtagac
+gatatcaagcgctttaaattgcatataacatttgagggtaaagctaagcggatgctttat
+ataatcaatactcaataataagatttgattgcattttagagttatgacacgacatagttc
+actaacgagttactattcccagatctagactgaagtactgatcgagacgatccttacgtc
+gatgatcgttagttatcgacttaggtcgggtctctagcggtattggtacttaaccggaca
+ctatactaataacccatgatcaaagcataacagaatacagacgataatttcgccaacata
+tatgtacagaccccaagcatgagaagctcattgaaagctatcattgaagtcccgctcaca
+atgtgtcttttccagacggtttaactggttcccgggagtcctggagtttcgacttacata
+aatggaaacaatgtattttgctaatttatctatagcgtcatttggaccaatacagaatat
+tatgttgcctagtaatccactataacccgcaagtgctgatagaaaatttttagacgattt
+ataaatgccccaagtatccctcccgtgaatcctccgttatactaattagtattcgttcat
+acgtataccgcgcatatatgaacatttggcgataaggcgcgtgaattgttacgtgacaga
+gatagcagtttcttgtgatatggttaacagacgtacatgaagggaaactttatatctata
+gtgatgcttccgtagaaataccgccactggtctgccaatgatgaagtatgtagctttagg
+tttgtactatgaggctttcgtttgtttgcagagtataacagttgcgagtgaaaaaccgac
+gaatttatactaatacgctttcactattggctacaaaatagggaagagtttcaatcatga
+gagggagtatatggatgctttgtagctaaaggtagaacgtatgtatatgctgccgttcat
+tcttgaaagatacataagcgataagttacgacaattataagcaacatccctaccttcgta
+acgatttcactgttactgcgcttgaaatacactatggggctattggcggagagaagcaga
+tcgcgccgagcatatacgagacctataatgttgatgatagagaaggcgtctgaattgata
+catcgaagtacactttctttcgtagtatctctcgtcctctttctatctccggacacaaga
+attaagttatatatatagagtcttaccaatcatgttgaatcctgattctcagagttcttt
+ggcgggccttgtgatgactgagaaacaatgcaatattgctccaaatttcctaagcaaatt
+ctcggttatgttatgttatcagcaaagcgttacgttatgttatttaaatctggaatgacg
+gagcgaagttcttatgtcggtgtgggaataattcttttgaagacagcactccttaaataa
+tatcgctccgtgtttgtatttatcgaatgggtctgtaaccttgcacaagcaaatcggtgg
+tgtatatatcggataacaattaatacgatgttcatagtgacagtatactgatcgagtcct
+ctaaagtcaattacctcacttaacaatctcattgatgttgtgtcattcccggtatcgccc
+gtagtatgtgctctgattgaccgagtgtgaaccaaggaacatctactaatgcctttgtta
+ggtaagatctctctgaattccttcgtgccaacttaaaacattatcaaaatttcttctact
+tggattaactacttttacgagcatggcaaattcccctgtggaagacggttcattattatc
+ggaaaccttatagaaattgcgtgttgactgaaattagatttttattgtaagagttgcatc
+tttgcgattcctctggtctagcttccaatgaacagtcctcccttctattcgacatcgggt
+ccttcgtacatgtctttgcgatgtaataattaggttcggagtgtggccttaatgggtgca
+actaggaatacaacgcaaatttgctgacatgatagcaaatcggtatgccggcaccaaaac
+gtgctccttgcttagcttgtgaatgagactcagtagttaaataaatccatatctgcaatc
+gattccacaggtattgtccactatctttgaactactctaagagatacaagcttagctgag
+accgaggtgtatatgactacgctgatatctgtaaggtaccaatgcaggcaaagtatgcga
+gaagctaataccggctgtttccagctttataagattaaaatttggctgtcctggcggcct
+cagaattgttctatcgtaatcagttggttcattaattagctaagtacgaggtacaactta
+tctgtcccagaacagctccacaagtttttttacagccgaaacccctgtgtgaatcttaat
+atccaagcgcgttatctgattagagtttacaactcagtattttatcagtacgttttgttt
+ccaacattacccggtatgacaaaatgacgccacgtgtcgaataatggtctgaccaatgta
+ggaagtgaaaagataaatat
diff --git a/test/pending/shootout/fasta.scala b/test/pending/shootout/fasta.scala
new file mode 100644
index 0000000000..8b711083a5
--- /dev/null
+++ b/test/pending/shootout/fasta.scala
@@ -0,0 +1,162 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+import java.io._
+
+object fasta {
+ def main(args: Array[String]) = {
+
+ val ALU =
+ "GGCCGGGCGCGGTGGCTCACGCCTGTAATCCCAGCACTTTGG" +
+ "GAGGCCGAGGCGGGCGGATCACCTGAGGTCAGGAGTTCGAGA" +
+ "CCAGCCTGGCCAACATGGTGAAACCCCGTCTCTACTAAAAAT" +
+ "ACAAAAATTAGCCGGGCGTGGTGGCGCGCGCCTGTAATCCCA" +
+ "GCTACTCGGGAGGCTGAGGCAGGAGAATCGCTTGAACCCGGG" +
+ "AGGCGGAGGTTGCAGTGAGCCGAGATCGCGCCACTGCACTCC" +
+ "AGCCTGGGCGACAGAGCGAGACTCCGTCTCAAAAA"
+
+ val _IUB = Array(
+ Pair('a', 0.27),
+ Pair('c', 0.12),
+ Pair('g', 0.12),
+ Pair('t', 0.27),
+
+ Pair('B', 0.02),
+ Pair('D', 0.02),
+ Pair('H', 0.02),
+ Pair('K', 0.02),
+ Pair('M', 0.02),
+ Pair('N', 0.02),
+ Pair('R', 0.02),
+ Pair('S', 0.02),
+ Pair('V', 0.02),
+ Pair('W', 0.02),
+ Pair('Y', 0.02)
+ )
+
+ val IUB = makeCumulative(_IUB)
+
+ val _HomoSapiens = Array(
+ Pair('a', 0.3029549426680),
+ Pair('c', 0.1979883004921),
+ Pair('g', 0.1975473066391),
+ Pair('t', 0.3015094502008)
+ )
+
+ val HomoSapiens = makeCumulative(_HomoSapiens)
+
+
+ val n = Integer parseInt(args(0))
+ val s = new FastaOutputStream(System.out)
+
+ s.writeDescription("ONE Homo sapiens alu")
+ s.writeRepeatingSequence(ALU,n*2)
+
+ s.writeDescription("TWO IUB ambiguity codes")
+ s.writeRandomSequence(IUB,n*3)
+
+ s.writeDescription("THREE Homo sapiens frequency")
+ s.writeRandomSequence(HomoSapiens,n*5)
+
+ s.close
+ }
+
+ def makeCumulative(a: Array[Pair[Char,Double]]) = {
+ var cp = 0.0
+ a map (frequency =>
+ frequency match {
+ case Pair(code,percent) =>
+ cp = cp + percent; new Frequency(code.toByte,cp)
+ }
+ )
+ }
+
+}
+
+
+// We could use instances of Pair or Tuple2 but specific labels
+// make the code more readable than index numbers
+
+class Frequency(_code: Byte, _percent: Double){
+ var code = _code; var percent = _percent;
+}
+
+
+// extend the Java BufferedOutputStream class
+
+class FastaOutputStream(out: OutputStream) extends BufferedOutputStream(out) {
+
+ private val LineLength = 60
+ private val nl = '\n'.toByte
+
+ def writeDescription(desc: String) = { write( (">" + desc + "\n").getBytes ) }
+
+ def writeRepeatingSequence(_alu: String, length: Int) = {
+ val alu = _alu.getBytes
+ var n = length; var k = 0; val kn = alu.length;
+
+ while (n > 0) {
+ val m = if (n < LineLength) n else LineLength
+
+ var i = 0
+ while (i < m){
+ if (k == kn) k = 0
+ val b = alu(k)
+ if (count < buf.length){ buf(count) = b; count = count + 1 }
+ else { write(b) } // flush buffer
+ k = k+1
+ i = i+1
+ }
+
+ write(nl)
+ n = n - LineLength
+ }
+
+ }
+
+ def writeRandomSequence(distribution: Array[Frequency], length: Int) = {
+ var n = length
+ while (n > 0) {
+ val m = if (n < LineLength) n else LineLength
+
+ var i = 0
+ while (i < m){
+ val b = selectRandom(distribution)
+ if (count < buf.length){ buf(count) = b; count = count + 1 }
+ else { write(b) } // flush buffer
+ i = i+1
+ }
+
+ if (count < buf.length){ buf(count) = nl; count = count + 1 }
+ else { write(nl) } // flush buffer
+ n = n - LineLength
+ }
+ }
+
+ private def selectRandom(distribution: Array[Frequency]): Byte = {
+ val n = distribution.length
+ val r = RandomNumber scaledTo(1.0)
+
+ var i = 0
+ while (i < n) {
+ if (r < distribution(i).percent) return distribution(i).code
+ i = i+1
+ }
+ return distribution(n-1).code
+ }
+}
+
+
+object RandomNumber {
+ private val IM = 139968
+ private val IA = 3877
+ private val IC = 29573
+ private var seed = 42
+
+ def scaledTo(max: Double) = {
+ seed = (seed * IA + IC) % IM
+ max * seed / IM
+ }
+}
diff --git a/test/pending/shootout/fasta.scala.runner b/test/pending/shootout/fasta.scala.runner
new file mode 100644
index 0000000000..e95a749cf2
--- /dev/null
+++ b/test/pending/shootout/fasta.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(25000,250000,2500000)) fasta.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/harmonic.scala-2.scala b/test/pending/shootout/harmonic.scala-2.scala
new file mode 100644
index 0000000000..a55e164e50
--- /dev/null
+++ b/test/pending/shootout/harmonic.scala-2.scala
@@ -0,0 +1,14 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object harmonic {
+ def main(args: Array[String]) = {
+ val n = Integer.parseInt(args(0));
+ var partialSum = 0.0;
+
+ for (i <- Iterator.range(1,n+1)) partialSum = partialSum + 1.0/i;
+ Console.printf("{0,number,#.000000000}\n")(partialSum);
+ }
+}
diff --git a/test/pending/shootout/harmonic.scala-2.scala.runner b/test/pending/shootout/harmonic.scala-2.scala.runner
new file mode 100644
index 0000000000..d0ea85742a
--- /dev/null
+++ b/test/pending/shootout/harmonic.scala-2.scala.runner
@@ -0,0 +1,16 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+object Test extends Application {
+ for(n <- List(6000000,8000000,10000000)) harmonic.main(Array(n.toString))
+}
+object harmonic {
+ def main(args: Array[String]) = {
+ val n = Integer.parseInt(args(0));
+ var partialSum = 0.0;
+
+ for (i <- Iterator.range(1,n+1)) partialSum = partialSum + 1.0/i;
+ Console.printf("{0,number,#.000000000}\n")(partialSum);
+ }
+}
diff --git a/test/pending/shootout/harmonic.scala-3.scala b/test/pending/shootout/harmonic.scala-3.scala
new file mode 100644
index 0000000000..dc631fcf12
--- /dev/null
+++ b/test/pending/shootout/harmonic.scala-3.scala
@@ -0,0 +1,15 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object harmonic {
+ def main(args: Array[String]) = {
+ val n = Integer.parseInt(args(0));
+ var partialSum = 0.0;
+ var i = 1;
+
+ while (i < n){ partialSum = partialSum + 1.0/i; i = i + 1; }
+ Console.printf("{0,number,#.000000000}\n", partialSum);
+ }
+}
diff --git a/test/pending/shootout/harmonic.scala-3.scala.runner b/test/pending/shootout/harmonic.scala-3.scala.runner
new file mode 100644
index 0000000000..b5eda3f034
--- /dev/null
+++ b/test/pending/shootout/harmonic.scala-3.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(6000000,8000000,10000000)) harmonic.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/heapsort.scala b/test/pending/shootout/heapsort.scala
new file mode 100644
index 0000000000..59b1fe27cb
--- /dev/null
+++ b/test/pending/shootout/heapsort.scala
@@ -0,0 +1,72 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object heapsort {
+ def main(args: Array[String]) = {
+ val n = toPositiveInt(args);
+
+ val numbers = new Array[Double](n+1);
+ for (i <- Iterator.range(1,n+1))
+ numbers(i) = generate(100.0);
+
+ heapsort(n, numbers);
+
+ Console.printf("{0,number,#.000000000}\n", numbers(n));
+ }
+
+
+ def heapsort(n: Int, ra: Array[Double]): Unit = {
+ var l = 0; var j = 0; var ir = 0; var i = 0;
+ var rra = 0.0d;
+
+ if (n < 2) return;
+ l = (n >> 1) + 1;
+ ir = n;
+ while (true) {
+ if (l > 1) { l = l-1; rra = ra(l); }
+ else {
+ rra = ra(ir);
+ ra(ir) = ra(1);
+ ir = ir-1;
+ if (ir == 1) {
+ ra(1) = rra;
+ return;
+ }
+ }
+ i = l;
+ j = l << 1;
+ while (j <= ir) {
+ if (j < ir && ra(j) < ra(j+1)) { j = j+1; }
+ if (rra < ra(j)) {
+ ra(i) = ra(j);
+ i = j;
+ j = j + i;
+ }
+ else j = ir + 1;
+ }
+ ra(i) = rra;
+ }
+ }
+
+
+ private val IM = 139968;
+ private val IA = 3877;
+ private val IC = 29573;
+ private var seed = 42;
+
+ private def generate(max: Double) = {
+ seed = (seed * IA + IC) % IM;
+ max * seed / IM;
+ }
+
+
+ private def toPositiveInt(s: Array[String]) = {
+ val i =
+ try { Integer.parseInt(s(0)); }
+ catch { case _ => 1 }
+ if (i>0) i; else 1;
+ }
+
+}
diff --git a/test/pending/shootout/heapsort.scala.runner b/test/pending/shootout/heapsort.scala.runner
new file mode 100644
index 0000000000..07e4ec7fbd
--- /dev/null
+++ b/test/pending/shootout/heapsort.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(20000,40000,60000,80000,100000)) heapsort.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/mandelbrot.scala-2.check b/test/pending/shootout/mandelbrot.scala-2.check
new file mode 100644
index 0000000000..2f7bbbc6b0
--- /dev/null
+++ b/test/pending/shootout/mandelbrot.scala-2.check
Binary files differ
diff --git a/test/pending/shootout/mandelbrot.scala-2.scala b/test/pending/shootout/mandelbrot.scala-2.scala
new file mode 100644
index 0000000000..dffdc354a0
--- /dev/null
+++ b/test/pending/shootout/mandelbrot.scala-2.scala
@@ -0,0 +1,79 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+// This test is in pending because it fails on windows only,
+// but partest's output and the fact that this test outputs in
+// binary makes it a challenge to debug remotely. However,
+// it's easy to guess that it has to do with the BufferedOutputStream
+// and some kind of windows-specific damage that requires an extra
+// flush, or different line-ending characters, or any of the various
+// write-once-know-quirks-everywhere aspects of java i/o.
+//
+// [partest] testing: [...]\files\shootout\mandelbrot.scala-2.scala [FAILED]
+// [partest] P4
+// [partest] 200 200
+// [partest]
+// ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^B^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
+// ^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@^@
+// [etc]
+
+import java.io.BufferedOutputStream
+
+object mandelbrot {
+ def main(args: Array[String]) = {
+ val side = Integer.parseInt(args(0))
+ val limitSquared = 4.0
+ val max = 50
+ var bits = 0
+ var bitnum = 0
+ val w = new BufferedOutputStream(System.out)
+
+ Console.println("P4\n" + side + " " + side)
+
+ var y = 0
+ while (y < side){
+
+ var x = 0
+ while (x < side){
+
+ val cr = 2.0 * x / side - 1.5
+ val ci = 2.0 * y / side - 1.0
+
+ var zr = 0.0; var zi = 0.0
+ var tr = 0.0; var ti = 0.0
+
+ var j = max
+ do {
+ zi = 2.0 * zr * zi + ci
+ zr = tr - ti + cr
+ ti = zi*zi
+ tr = zr*zr
+
+ j = j - 1
+ } while (!(tr + ti > limitSquared) && j > 0)
+
+
+ bits = bits << 1
+ if (!(tr + ti > limitSquared)) bits = bits + 1
+ bitnum = bitnum + 1
+
+ if (x == side - 1){
+ bits = bits << (8 - bitnum)
+ bitnum = 8
+ }
+
+ if (bitnum == 8){
+ w.write(bits.toByte)
+ bits = 0
+ bitnum = 0
+ }
+
+ x = x + 1
+ }
+ y = y + 1
+ }
+ w.close
+ }
+}
diff --git a/test/pending/shootout/mandelbrot.scala-2.scala.runner b/test/pending/shootout/mandelbrot.scala-2.scala.runner
new file mode 100644
index 0000000000..27f69f6aec
--- /dev/null
+++ b/test/pending/shootout/mandelbrot.scala-2.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(200,400,600)) mandelbrot.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/message.check b/test/pending/shootout/message.check
new file mode 100644
index 0000000000..354b2529b2
--- /dev/null
+++ b/test/pending/shootout/message.check
@@ -0,0 +1 @@
+500000
diff --git a/test/pending/shootout/message.javaopts b/test/pending/shootout/message.javaopts
new file mode 100644
index 0000000000..1879c77427
--- /dev/null
+++ b/test/pending/shootout/message.javaopts
@@ -0,0 +1 @@
+-Xss128k
diff --git a/test/pending/shootout/message.scala b/test/pending/shootout/message.scala
new file mode 100644
index 0000000000..a7a1dacc9d
--- /dev/null
+++ b/test/pending/shootout/message.scala
@@ -0,0 +1,47 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+
+import scala.concurrent._
+
+object message {
+ def main(args: Array[String]) = {
+ val n = Integer.parseInt(args(0))
+ val nActors = 500
+ val finalSum = n * nActors
+
+ case class Message(value: Int)
+
+ class Incrementor(next: Pid) extends Actor {
+ var sum = 0
+
+ override def run() = {
+ while (true) {
+ receive {
+ case Message(value) =>
+ val j = value + 1
+ if (null != next){
+ next ! Message(j)
+ } else {
+ sum = sum + j
+ if (sum >= finalSum){
+ Console.println(sum);
+ System.exit(0) // exit without cleaning up
+ }
+ }
+ }
+ }
+ }
+
+ def pid() = { this.start; this.self }
+ }
+
+ def actorChain(i: Int, a: Pid): Pid =
+ if (i > 0) actorChain(i-1, new Incrementor(a).pid ) else a
+
+ val firstActor = actorChain(nActors, null)
+ var i = n; while (i > 0){ firstActor ! Message(0); i = i-1 }
+ }
+}
diff --git a/test/pending/shootout/message.scala.runner b/test/pending/shootout/message.scala.runner
new file mode 100644
index 0000000000..ffbee1640b
--- /dev/null
+++ b/test/pending/shootout/message.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(1000,2000,3000)) message.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/meteor.scala b/test/pending/shootout/meteor.scala
new file mode 100644
index 0000000000..2fd702753a
--- /dev/null
+++ b/test/pending/shootout/meteor.scala
@@ -0,0 +1,496 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+// This is an un-optimised example implementation
+
+
+import scala.collection.mutable._
+
+object meteor {
+ def main(args: Array[String]) = {
+ val solver = new Solver( Integer.parseInt(args(0)) )
+ solver.findSolutions
+ solver.printSolutions
+ }
+}
+
+
+
+
+// Solver.scala
+// import scala.collection.mutable._
+
+final class Solver (n: Int) {
+ private var countdown = n
+ private var first: String = _
+ private var last: String = _
+
+ private val board = new Board()
+
+ val pieces = Array(
+ new Piece(0), new Piece(1), new Piece(2), new Piece(3), new Piece(4),
+ new Piece(5), new Piece(6), new Piece(7), new Piece(8), new Piece(9) )
+
+ val unplaced = new BitSet(pieces.length)
+
+ { unplaced ++= (0 until pieces.length) }
+
+
+ def findSolutions(): Unit = {
+ if (countdown == 0) return
+
+ if (unplaced.size > 0){
+ val emptyCellIndex = board.firstEmptyCellIndex
+
+ for (k <- Iterator.range(0,pieces.length)){
+ if (unplaced.contains(k)){
+ unplaced -= k
+
+ for (i <- Iterator.range(0,Piece.orientations)){
+ val piece = pieces(k).nextOrientation
+
+ for (j <- Iterator.range(0,Piece.size)){
+ if (board.add(j,emptyCellIndex,piece)) {
+
+ if (!shouldPrune) findSolutions
+
+ board.remove(piece)
+ }
+ }
+ }
+ unplaced += k
+ }
+ }
+ }
+ else {
+ puzzleSolved
+ }
+ }
+
+ private def puzzleSolved() = {
+ val b = board.asString
+ if (first == null){
+ first = b; last = b
+ } else {
+ if (b < first){ first = b } else { if (b > last){ last = b } }
+ }
+ countdown = countdown - 1
+ }
+
+ private def shouldPrune() = {
+ board.unmark
+ !board.cells.forall(c => c.contiguousEmptyCells % Piece.size == 0)
+ }
+
+
+ def printSolutions() = {
+
+ def printBoard(s: String) = {
+ var indent = false
+ var i = 0
+ while (i < s.length){
+ if (indent) Console.print(' ')
+ for (j <- Iterator.range(0,Board.cols)){
+ Console.print(s.charAt(i)); Console.print(' ')
+ i = i + 1
+ }
+ Console.print('\n')
+ indent = !indent
+ }
+ Console.print('\n')
+ }
+
+ Console.print(n + " solutions found\n\n")
+ printBoard(first)
+ printBoard(last)
+ }
+
+/*
+ def printPieces() =
+ for (i <- Iterator.range(0,Board.pieces)) pieces(i).print
+*/
+
+}
+
+
+
+
+// Board.scala
+// import scala.collection.mutable._
+
+object Board {
+ val cols = 5
+ val rows = 10
+ val size = rows * cols
+}
+
+final class Board {
+ val cells = boardCells()
+
+ val cellsPieceWillFill = new Array[BoardCell](Piece.size)
+ var cellCount = 0
+
+ def unmark() = for (c <- cells) c.unmark
+
+ def asString() =
+ new String( cells map(
+ c => if (c.piece == null) '-'.toByte
+ else (c.piece.number + 48).toByte ))
+
+ def firstEmptyCellIndex() = cells.findIndexOf(c => c.isEmpty)
+
+ def add(pieceIndex: Int, boardIndex: Int, p: Piece) = {
+ cellCount = 0
+ p.unmark
+
+ find( p.cells(pieceIndex), cells(boardIndex))
+
+ val boardHasSpace = cellCount == Piece.size &&
+ cellsPieceWillFill.forall(c => c.isEmpty)
+
+ if (boardHasSpace) cellsPieceWillFill.foreach(c => c.piece = p)
+
+ boardHasSpace
+ }
+
+ def remove(piece: Piece) = for (c <- cells; if c.piece == piece) c.empty
+
+
+ private def find(p: PieceCell, b: BoardCell): Unit = {
+ if (p != null && !p.marked && b != null){
+ cellsPieceWillFill(cellCount) = b
+ cellCount = cellCount + 1
+ p.mark
+ for (i <- Iterator.range(0,Cell.sides)) find(p.next(i), b.next(i))
+ }
+ }
+
+
+ private def boardCells() = {
+ val a = for (i <- Array.range(0,Board.size)) yield new BoardCell(i)
+ val m = (Board.size / Board.cols) - 1
+
+ for (i <- Iterator.range(0,a.length)){
+ val row = i / Board.cols
+ val isFirst = i % Board.cols == 0
+ val isLast = (i+1) % Board.cols == 0
+ val c = a(i)
+
+ if (row % 2 == 1) {
+ if (!isLast) c.next(Cell.NE) = a(i-(Board.cols-1))
+ c.next(Cell.NW) = a(i-Board.cols)
+ if (row != m) {
+ if (!isLast) c.next(Cell.SE) = a(i+(Board.cols+1))
+ c.next(Cell.SW) = a(i+Board.cols)
+ }
+ } else {
+ if (row != 0) {
+ if (!isFirst) c.next(Cell.NW) = a(i-(Board.cols+1))
+ c.next(Cell.NE) = a(i-Board.cols)
+ }
+ if (row != m) {
+ if (!isFirst) c.next(Cell.SW) = a(i+(Board.cols-1))
+ c.next(Cell.SE) = a(i+Board.cols)
+ }
+ }
+ if (!isFirst) c.next(Cell.W) = a(i-1)
+ if (!isLast) c.next(Cell.E) = a(i+1)
+ }
+ a
+ }
+
+
+/*
+// Printing all the board cells and their neighbours
+// helps check that they are connected properly
+
+ def printBoardCellsAndNeighbours() = {
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Board.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ Console.printf("{0,number,00} ")(c.number)
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Piece.scala
+
+object Piece {
+ val size = 5
+ val rotations = Cell.sides
+ val flips = 2
+ val orientations = rotations * flips
+}
+
+final class Piece(_number: Int) {
+ val number = _number
+ val cells = for (i <- Array.range(0,Piece.size)) yield new PieceCell()
+
+ {
+ number match {
+ case 0 => make0
+ case 1 => make1
+ case 2 => make2
+ case 3 => make3
+ case 4 => make4
+ case 5 => make5
+ case 6 => make6
+ case 7 => make7
+ case 8 => make8
+ case 9 => make9
+ }
+ }
+
+ def flip() = for (c <- cells) c.flip
+ def rotate() = for (c <- cells) c.rotate
+ def unmark() = for (c <- cells) c.unmark
+
+
+ private var orientation = 0
+
+ def nextOrientation() = {
+ if (orientation == Piece.orientations) orientation = 0
+ if (orientation % Piece.rotations == 0) flip else rotate
+ orientation = orientation + 1
+ this
+ }
+
+
+ private def make0() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make1() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.W) = cells(3)
+ cells(3).next(Cell.E) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make2() = {
+ cells(0).next(Cell.W) = cells(1)
+ cells(1).next(Cell.E) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make3() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(1).next(Cell.W) = cells(2)
+ cells(2).next(Cell.E) = cells(1)
+ cells(1).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make4() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(1).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(1)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make5() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(0).next(Cell.SE) = cells(2)
+ cells(2).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make6() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(2)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make7() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(0).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make8() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(3).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(3)
+ }
+
+ private def make9() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(2)
+ cells(4).next(Cell.NW) = cells(3)
+ cells(3).next(Cell.SE) = cells(4)
+ }
+
+/*
+ def print() = {
+ Console.println("Piece # " + number)
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Piece.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ for (k <- Iterator.range(0,Piece.size)){
+ if (cells(k) == c) Console.printf(" {0,number,0} ")(k)
+ }
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Cell.scala
+
+object Cell {
+ val NW = 0; val NE = 1
+ val W = 2; val E = 3
+ val SW = 4; val SE = 5
+
+ val sides = 6
+}
+
+abstract class Cell {
+ implicit def m: Manifest[T]
+ type T
+ val next = new Array[T](Cell.sides)
+ var marked = false
+
+ def mark() = marked = true
+ def unmark() = marked = false
+}
+
+// BoardCell.scala
+
+final class BoardCell(_number: Int) extends {
+ type T = BoardCell
+ implicit val m = manifest[BoardCell]
+} with Cell {
+ val number = _number
+ var piece: Piece = _
+
+ def isEmpty() = piece == null
+ def empty() = piece = null
+
+ def contiguousEmptyCells(): Int = {
+ if (!marked && isEmpty){
+ mark
+ var count = 1
+
+ for (neighbour <- next)
+ if (neighbour != null && neighbour.isEmpty)
+ count = count + neighbour.contiguousEmptyCells
+
+ count } else { 0 }
+ }
+}
+
+
+
+
+// PieceCell.scala
+
+final class PieceCell extends Cell {
+ type T = PieceCell
+
+ def flip = {
+ var swap = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = swap
+
+ swap = next(Cell.E)
+ next(Cell.E) = next(Cell.W)
+ next(Cell.W) = swap
+
+ swap = next(Cell.SE)
+ next(Cell.SE) = next(Cell.SW)
+ next(Cell.SW) = swap
+ }
+
+ def rotate = {
+ var swap = next(Cell.E)
+ next(Cell.E) = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = next(Cell.W)
+ next(Cell.W) = next(Cell.SW)
+ next(Cell.SW) = next(Cell.SE)
+ next(Cell.SE) = swap
+ }
+}
+
+
+
+
diff --git a/test/pending/shootout/meteor.scala-2.scala b/test/pending/shootout/meteor.scala-2.scala
new file mode 100644
index 0000000000..2b42c19260
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-2.scala
@@ -0,0 +1,496 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+// This is an un-optimised example implementation
+// classes BoardCell and PieceCell have Array
+
+
+import scala.collection.mutable._
+
+object meteor {
+ def main(args: Array[String]) = {
+ val solver = new Solver( Integer.parseInt(args(0)) )
+ solver.findSolutions
+ solver.printSolutions
+ }
+}
+
+
+
+
+// Solver.scala
+// import scala.collection.mutable._
+
+final class Solver (n: Int) {
+ private var countdown = n
+ private var first: String = _
+ private var last: String = _
+
+ private val board = new Board()
+
+ val pieces = Array(
+ new Piece(0), new Piece(1), new Piece(2), new Piece(3), new Piece(4),
+ new Piece(5), new Piece(6), new Piece(7), new Piece(8), new Piece(9) )
+
+ val unplaced = new BitSet(pieces.length)
+
+ { unplaced ++= (0 until pieces.length) }
+
+
+ def findSolutions(): Unit = {
+ if (countdown == 0) return
+
+ if (unplaced.size > 0){
+ val emptyCellIndex = board.firstEmptyCellIndex
+
+ for (k <- Iterator.range(0,pieces.length)){
+ if (unplaced.contains(k)){
+ unplaced -= k
+
+ for (i <- Iterator.range(0,Piece.orientations)){
+ val piece = pieces(k).nextOrientation
+
+ for (j <- Iterator.range(0,Piece.size)){
+ if (board.add(j,emptyCellIndex,piece)) {
+
+ if (!shouldPrune) findSolutions
+
+ board.remove(piece)
+ }
+ }
+ }
+ unplaced += k
+ }
+ }
+ }
+ else {
+ puzzleSolved
+ }
+ }
+
+ private def puzzleSolved() = {
+ val b = board.asString
+ if (first == null){
+ first = b; last = b
+ } else {
+ if (b < first){ first = b } else { if (b > last){ last = b } }
+ }
+ countdown = countdown - 1
+ }
+
+ private def shouldPrune() = {
+ board.unmark
+ !board.cells.forall(c => c.contiguousEmptyCells % Piece.size == 0)
+ }
+
+
+ def printSolutions() = {
+
+ def printBoard(s: String) = {
+ var indent = false
+ var i = 0
+ while (i < s.length){
+ if (indent) Console.print(' ')
+ for (j <- Iterator.range(0,Board.cols)){
+ Console.print(s.charAt(i)); Console.print(' ')
+ i = i + 1
+ }
+ Console.print('\n')
+ indent = !indent
+ }
+ Console.print('\n')
+ }
+
+ Console.print(n + " solutions found\n\n")
+ printBoard(first)
+ printBoard(last)
+ }
+
+/*
+ def printPieces() =
+ for (i <- Iterator.range(0,Board.pieces)) pieces(i).print
+*/
+
+}
+
+
+
+
+// Board.scala
+// import scala.collection.mutable._
+
+object Board {
+ val cols = 5
+ val rows = 10
+ val size = rows * cols
+}
+
+final class Board {
+ val cells = boardCells()
+
+ val cellsPieceWillFill = new Array[BoardCell](Piece.size)
+ var cellCount = 0
+
+ def unmark() = for (c <- cells) c.unmark
+
+ def asString() =
+ new String( cells map(
+ c => if (c.piece == null) '-'.toByte
+ else (c.piece.number + 48).toByte ))
+
+ def firstEmptyCellIndex() = cells.findIndexOf(c => c.isEmpty)
+
+
+ def add(pieceIndex: Int, boardIndex: Int, p: Piece) = {
+ cellCount = 0
+ p.unmark
+
+ find( p.cells(pieceIndex), cells(boardIndex))
+
+ val boardHasSpace = cellCount == Piece.size &&
+ cellsPieceWillFill.forall(c => c.isEmpty)
+
+ if (boardHasSpace) cellsPieceWillFill.foreach(c => c.piece = p)
+
+ boardHasSpace
+ }
+
+ def remove(piece: Piece) = for (c <- cells; if c.piece == piece) c.empty
+
+
+ private def find(p: PieceCell, b: BoardCell): Unit = {
+ if (p != null && !p.marked && b != null){
+ cellsPieceWillFill(cellCount) = b
+ cellCount = cellCount + 1
+ p.mark
+ for (i <- Iterator.range(0,Cell.sides)) find(p.next(i), b.next(i))
+ }
+ }
+
+
+ private def boardCells() = {
+ val a = for (i <- Array.range(0,Board.size)) yield new BoardCell(i)
+ val m = (Board.size / Board.cols) - 1
+
+ for (i <- Iterator.range(0,a.length)){
+ val row = i / Board.cols
+ val isFirst = i % Board.cols == 0
+ val isLast = (i+1) % Board.cols == 0
+ val c = a(i)
+
+ if (row % 2 == 1) {
+ if (!isLast) c.next(Cell.NE) = a(i-(Board.cols-1))
+ c.next(Cell.NW) = a(i-Board.cols)
+ if (row != m) {
+ if (!isLast) c.next(Cell.SE) = a(i+(Board.cols+1))
+ c.next(Cell.SW) = a(i+Board.cols)
+ }
+ } else {
+ if (row != 0) {
+ if (!isFirst) c.next(Cell.NW) = a(i-(Board.cols+1))
+ c.next(Cell.NE) = a(i-Board.cols)
+ }
+ if (row != m) {
+ if (!isFirst) c.next(Cell.SW) = a(i+(Board.cols-1))
+ c.next(Cell.SE) = a(i+Board.cols)
+ }
+ }
+ if (!isFirst) c.next(Cell.W) = a(i-1)
+ if (!isLast) c.next(Cell.E) = a(i+1)
+ }
+ a
+ }
+
+
+/*
+// Printing all the board cells and their neighbours
+// helps check that they are connected properly
+
+ def printBoardCellsAndNeighbours() = {
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Board.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ Console.printf("{0,number,00} ")(c.number)
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Piece.scala
+
+object Piece {
+ val size = 5
+ val rotations = Cell.sides
+ val flips = 2
+ val orientations = rotations * flips
+}
+
+final class Piece(_number: Int) {
+ val number = _number
+ val cells = for (i <- Array.range(0,Piece.size)) yield new PieceCell()
+
+ {
+ number match {
+ case 0 => make0
+ case 1 => make1
+ case 2 => make2
+ case 3 => make3
+ case 4 => make4
+ case 5 => make5
+ case 6 => make6
+ case 7 => make7
+ case 8 => make8
+ case 9 => make9
+ }
+ }
+
+ def flip() = for (c <- cells) c.flip
+ def rotate() = for (c <- cells) c.rotate
+ def unmark() = for (c <- cells) c.unmark
+
+
+ private var orientation = 0
+
+ def nextOrientation() = {
+ if (orientation == Piece.orientations) orientation = 0
+ if (orientation % Piece.rotations == 0) flip else rotate
+ orientation = orientation + 1
+ this
+ }
+
+
+ private def make0() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make1() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.W) = cells(3)
+ cells(3).next(Cell.E) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make2() = {
+ cells(0).next(Cell.W) = cells(1)
+ cells(1).next(Cell.E) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make3() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(1).next(Cell.W) = cells(2)
+ cells(2).next(Cell.E) = cells(1)
+ cells(1).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make4() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(1).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(1)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make5() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(0).next(Cell.SE) = cells(2)
+ cells(2).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make6() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(2)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make7() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(0).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make8() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(3).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(3)
+ }
+
+ private def make9() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(2)
+ cells(4).next(Cell.NW) = cells(3)
+ cells(3).next(Cell.SE) = cells(4)
+ }
+
+/*
+ def print() = {
+ Console.println("Piece # " + number)
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Piece.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ for (k <- Iterator.range(0,Piece.size)){
+ if (cells(k) == c) Console.printf(" {0,number,0} ")(k)
+ }
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Cell.scala
+
+object Cell {
+ val NW = 0; val NE = 1
+ val W = 2; val E = 3
+ val SW = 4; val SE = 5
+
+ val sides = 6
+}
+
+abstract class Cell {
+ var marked = false
+
+ def mark() = marked = true
+ def unmark() = marked = false
+}
+
+
+
+
+// BoardCell.scala
+
+final class BoardCell(_number: Int) extends Cell {
+ val next = new Array[BoardCell](Cell.sides)
+ val number = _number
+ var piece: Piece = _
+
+ def isEmpty() = piece == null
+ def empty() = piece = null
+
+ def contiguousEmptyCells(): Int = {
+ if (!marked && isEmpty){
+ mark
+ var count = 1
+
+ for (neighbour <- next)
+ if (neighbour != null && neighbour.isEmpty)
+ count = count + neighbour.contiguousEmptyCells
+
+ count } else { 0 }
+ }
+}
+
+
+
+
+// PieceCell.scala
+
+final class PieceCell extends Cell {
+ val next = new Array[PieceCell](Cell.sides)
+
+ def flip = {
+ var swap = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = swap
+
+ swap = next(Cell.E)
+ next(Cell.E) = next(Cell.W)
+ next(Cell.W) = swap
+
+ swap = next(Cell.SE)
+ next(Cell.SE) = next(Cell.SW)
+ next(Cell.SW) = swap
+ }
+
+ def rotate = {
+ var swap = next(Cell.E)
+ next(Cell.E) = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = next(Cell.W)
+ next(Cell.W) = next(Cell.SW)
+ next(Cell.SW) = next(Cell.SE)
+ next(Cell.SE) = swap
+ }
+}
+
+
+
+
diff --git a/test/pending/shootout/meteor.scala-2.scala.runner b/test/pending/shootout/meteor.scala-2.scala.runner
new file mode 100644
index 0000000000..dae384311f
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-2.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(0)) meteor.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/meteor.scala-3.scala b/test/pending/shootout/meteor.scala-3.scala
new file mode 100644
index 0000000000..01dacf90c6
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-3.scala
@@ -0,0 +1,557 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+// Most for-comprehension replaced by while loops
+
+
+
+import scala.collection.mutable._
+
+object meteor {
+ def main(args: Array[String]) = {
+ val solver = new Solver( Integer.parseInt(args(0)) )
+ solver.findSolutions
+ solver.printSolutions
+ }
+}
+
+
+
+
+// Solver.scala
+// import scala.collection.mutable._
+
+final class Solver (n: Int) {
+ private var countdown = n
+ private var first: String = _
+ private var last: String = _
+
+ private val board = new Board()
+
+ val pieces = Array(
+ new Piece(0), new Piece(1), new Piece(2), new Piece(3), new Piece(4),
+ new Piece(5), new Piece(6), new Piece(7), new Piece(8), new Piece(9) )
+
+ val unplaced = new BitSet(pieces.length)
+
+ { unplaced ++= (0 until pieces.length) }
+
+
+ def findSolutions(): Unit = {
+ if (countdown == 0) return
+
+ if (unplaced.size > 0){
+ val emptyCellIndex = board.firstEmptyCellIndex
+
+ var k = 0
+ while (k < pieces.length){
+ if (unplaced.contains(k)){
+ unplaced -= k
+
+ var i = 0
+ while (i < Piece.orientations){
+ val piece = pieces(k).nextOrientation
+
+ var j = 0
+ while (j < Piece.size){
+ if (board.add(j,emptyCellIndex,piece)) {
+
+ if (!shouldPrune) findSolutions
+
+ board.remove(piece)
+ }
+ j = j + 1
+ }
+ i = i + 1
+ }
+ unplaced += k
+ }
+ k = k + 1
+ }
+ }
+ else {
+ puzzleSolved
+ }
+ }
+
+ private def puzzleSolved() = {
+ val b = board.asString
+ if (first == null){
+ first = b; last = b
+ } else {
+ if (b < first){ first = b } else { if (b > last){ last = b } }
+ }
+ countdown = countdown - 1
+ }
+
+ private def shouldPrune(): Boolean = {
+ board.unmark
+ var i = 0
+ while (i < board.cells.length){
+ if (board.cells(i).contiguousEmptyCells % Piece.size != 0) return true
+ i = i + 1
+ }
+ false
+ }
+
+
+ def printSolutions() = {
+
+ def printBoard(s: String) = {
+ var indent = false
+ var i = 0
+ while (i < s.length){
+ if (indent) Console.print(' ')
+ var j = 0
+ while (j < Board.cols){
+ Console.print(s.charAt(i)); Console.print(' ')
+ j = j + 1
+ i = i + 1
+ }
+ Console.print('\n')
+ indent = !indent
+ }
+ Console.print('\n')
+ }
+
+ Console.print(n + " solutions found\n\n")
+ printBoard(first)
+ printBoard(last)
+ }
+
+/*
+ def printPieces() =
+ for (i <- Iterator.range(0,Board.pieces)) pieces(i).print
+*/
+
+}
+
+
+
+
+
+// Board.scala
+// import scala.collection.mutable._
+
+object Board {
+ val cols = 5
+ val rows = 10
+ val size = rows * cols
+}
+
+final class Board {
+ val cells = boardCells()
+
+ val cellsPieceWillFill = new Array[BoardCell](Piece.size)
+ var cellCount = 0
+
+ def unmark() = {
+ var i = 0
+ while (i < cells.length){
+ cells(i).unmark
+ i = i + 1
+ }
+ }
+
+ def asString() =
+ new String( cells map(
+ c => if (c.piece == null) '-'.toByte
+ else (c.piece.number + 48).toByte ))
+
+ def firstEmptyCellIndex() = cells.findIndexOf(c => c.isEmpty)
+
+
+ def add(pieceIndex: Int, boardIndex: Int, p: Piece): Boolean = {
+ cellCount = 0
+ p.unmark
+
+ find(p.cells(pieceIndex), cells(boardIndex))
+
+ if (cellCount != Piece.size) return false
+
+ var i = 0
+ while (i < cellCount){
+ if (!cellsPieceWillFill(i).isEmpty) return false
+ i = i + 1
+ }
+
+ i = 0
+ while (i < cellCount){
+ cellsPieceWillFill(i).piece = p
+ i = i + 1
+ }
+
+ true
+ }
+
+ def remove(piece: Piece) = {
+ var i = 0
+ while (i < cells.length){
+ if (cells(i).piece == piece) cells(i).empty
+ i = i + 1
+ }
+ }
+
+ private def find(p: PieceCell, b: BoardCell): Unit = {
+ if (p != null && !p.marked && b != null){
+ cellsPieceWillFill(cellCount) = b
+ cellCount = cellCount + 1
+ p.mark
+
+ var i = 0
+ while (i < Cell.sides){
+ find(p.next(i), b.next(i))
+ i = i + 1
+ }
+ }
+ }
+
+
+ private def boardCells() = {
+ val a = for (i <- Array.range(0,Board.size)) yield new BoardCell(i)
+ val m = (Board.size / Board.cols) - 1
+
+ for (i <- Iterator.range(0,a.length)){
+ val row = i / Board.cols
+ val isFirst = i % Board.cols == 0
+ val isLast = (i+1) % Board.cols == 0
+ val c = a(i)
+
+ if (row % 2 == 1) {
+ if (!isLast) c.next(Cell.NE) = a(i-(Board.cols-1))
+ c.next(Cell.NW) = a(i-Board.cols)
+ if (row != m) {
+ if (!isLast) c.next(Cell.SE) = a(i+(Board.cols+1))
+ c.next(Cell.SW) = a(i+Board.cols)
+ }
+ } else {
+ if (row != 0) {
+ if (!isFirst) c.next(Cell.NW) = a(i-(Board.cols+1))
+ c.next(Cell.NE) = a(i-Board.cols)
+ }
+ if (row != m) {
+ if (!isFirst) c.next(Cell.SW) = a(i+(Board.cols-1))
+ c.next(Cell.SE) = a(i+Board.cols)
+ }
+ }
+ if (!isFirst) c.next(Cell.W) = a(i-1)
+ if (!isLast) c.next(Cell.E) = a(i+1)
+ }
+ a
+ }
+
+/*
+// Printing all the board cells and their neighbours
+// helps check that they are connected properly
+
+ def printBoardCellsAndNeighbours() = {
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Board.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ Console.printf("{0,number,00} ")(c.number)
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Piece.scala
+
+object Piece {
+ val size = 5
+ val rotations = Cell.sides
+ val flips = 2
+ val orientations = rotations * flips
+}
+
+final class Piece(_number: Int) {
+ val number = _number
+ val cells = for (i <- Array.range(0,Piece.size)) yield new PieceCell()
+
+ {
+ number match {
+ case 0 => make0
+ case 1 => make1
+ case 2 => make2
+ case 3 => make3
+ case 4 => make4
+ case 5 => make5
+ case 6 => make6
+ case 7 => make7
+ case 8 => make8
+ case 9 => make9
+ }
+ }
+
+ def flip() = {
+ var i = 0
+ while (i < cells.length){
+ cells(i).flip
+ i = i + 1
+ }
+ }
+
+ def rotate() = {
+ var i = 0
+ while (i < cells.length){
+ cells(i).rotate
+ i = i + 1
+ }
+ }
+
+ def unmark() = {
+ var i = 0
+ while (i < cells.length){
+ cells(i).unmark
+ i = i + 1
+ }
+ }
+
+
+ private var orientation = 0
+
+ def nextOrientation() = {
+ if (orientation == Piece.orientations) orientation = 0
+ if (orientation % Piece.rotations == 0) flip else rotate
+ orientation = orientation + 1
+ this
+ }
+
+
+ private def make0() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make1() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.W) = cells(3)
+ cells(3).next(Cell.E) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make2() = {
+ cells(0).next(Cell.W) = cells(1)
+ cells(1).next(Cell.E) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make3() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(1).next(Cell.W) = cells(2)
+ cells(2).next(Cell.E) = cells(1)
+ cells(1).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(1)
+ cells(2).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make4() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(1)
+ cells(1).next(Cell.E) = cells(3)
+ cells(3).next(Cell.W) = cells(1)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make5() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(0).next(Cell.SE) = cells(2)
+ cells(2).next(Cell.NW) = cells(0)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make6() = {
+ cells(0).next(Cell.SW) = cells(1)
+ cells(1).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(2)
+ cells(1).next(Cell.SE) = cells(3)
+ cells(3).next(Cell.NW) = cells(1)
+ cells(3).next(Cell.SW) = cells(4)
+ cells(4).next(Cell.NE) = cells(3)
+ }
+
+ private def make7() = {
+ cells(0).next(Cell.SE) = cells(1)
+ cells(1).next(Cell.NW) = cells(0)
+ cells(0).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.NE) = cells(0)
+ cells(2).next(Cell.SW) = cells(3)
+ cells(3).next(Cell.NE) = cells(2)
+ cells(3).next(Cell.SE) = cells(4)
+ cells(4).next(Cell.NW) = cells(3)
+ }
+
+ private def make8() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(3).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(3)
+ }
+
+ private def make9() = {
+ cells(0).next(Cell.E) = cells(1)
+ cells(1).next(Cell.W) = cells(0)
+ cells(1).next(Cell.E) = cells(2)
+ cells(2).next(Cell.W) = cells(1)
+ cells(2).next(Cell.NE) = cells(3)
+ cells(3).next(Cell.SW) = cells(2)
+ cells(2).next(Cell.E) = cells(4)
+ cells(4).next(Cell.W) = cells(2)
+ cells(4).next(Cell.NW) = cells(3)
+ cells(3).next(Cell.SE) = cells(4)
+ }
+
+/*
+ def print() = {
+ Console.println("Piece # " + number)
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Piece.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ for (k <- Iterator.range(0,Piece.size)){
+ if (cells(k) == c) Console.printf(" {0,number,0} ")(k)
+ }
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Cell.scala
+
+object Cell {
+ val NW = 0; val NE = 1
+ val W = 2; val E = 3
+ val SW = 4; val SE = 5
+
+ val sides = 6
+}
+
+abstract class Cell {
+ var marked = false
+
+ def mark() = marked = true
+ def unmark() = marked = false
+}
+
+
+
+
+// BoardCell.scala
+
+final class BoardCell(_number: Int) extends Cell {
+ val next = new Array[BoardCell](Cell.sides)
+ val number = _number
+ var piece: Piece = _
+
+ def isEmpty() = piece == null
+ def empty() = piece = null
+
+ def contiguousEmptyCells(): Int = {
+ if (!marked && isEmpty){
+ mark
+ var count = 1
+
+ var i = 0
+ while (i < next.length){
+ if (next(i) != null && next(i).isEmpty)
+ count = count + next(i).contiguousEmptyCells
+ i = i + 1
+ }
+
+ count } else { 0 }
+ }
+}
+
+
+
+
+// PieceCell.scala
+
+final class PieceCell extends Cell {
+ val next = new Array[PieceCell](Cell.sides)
+
+ def flip = {
+ var swap = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = swap
+
+ swap = next(Cell.E)
+ next(Cell.E) = next(Cell.W)
+ next(Cell.W) = swap
+
+ swap = next(Cell.SE)
+ next(Cell.SE) = next(Cell.SW)
+ next(Cell.SW) = swap
+ }
+
+ def rotate = {
+ var swap = next(Cell.E)
+ next(Cell.E) = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = next(Cell.W)
+ next(Cell.W) = next(Cell.SW)
+ next(Cell.SW) = next(Cell.SE)
+ next(Cell.SE) = swap
+ }
+}
+
+
+
+
diff --git a/test/pending/shootout/meteor.scala-3.scala.runner b/test/pending/shootout/meteor.scala-3.scala.runner
new file mode 100644
index 0000000000..dae384311f
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-3.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(0)) meteor.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/meteor.scala-4.scala b/test/pending/shootout/meteor.scala-4.scala
new file mode 100644
index 0000000000..ee036f7fab
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-4.scala
@@ -0,0 +1,587 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+// Most for-comprehension replaced by while loops
+// BoardCells occupied by each Piece orientation are cached
+// Piece orientations are cached
+
+import scala.collection.mutable._
+
+object meteor {
+ def main(args: Array[String]) = {
+ val solver = new Solver( Integer.parseInt(args(0)) )
+ solver.findSolutions
+ solver.printSolutions
+ }
+}
+
+
+
+
+// Solver.scala
+// import scala.collection.mutable._
+
+final class Solver (n: Int) {
+ private var countdown = n
+ private var first: String = _
+ private var last: String = _
+
+ private val board = new Board()
+
+ val pieces = Array(
+ new Piece(0), new Piece(1), new Piece(2), new Piece(3), new Piece(4),
+ new Piece(5), new Piece(6), new Piece(7), new Piece(8), new Piece(9) )
+
+ val unplaced = new BitSet(pieces.length)
+
+ { unplaced ++= (0 until pieces.length) }
+
+
+ def findSolutions(): Unit = {
+ if (countdown == 0) return
+
+ if (unplaced.size > 0){
+ val emptyCellIndex = board.firstEmptyCellIndex
+
+ var k = 0
+ while (k < pieces.length){
+ if (unplaced.contains(k)){
+ unplaced -= k
+
+ var i = 0
+ while (i < Piece.orientations){
+ val piece = pieces(k).nextOrientation
+
+ var j = 0
+ while (j < Piece.size){
+ if (board.add(j,emptyCellIndex,piece)) {
+
+ if (!shouldPrune) findSolutions
+
+ board.remove(piece)
+ }
+ j = j + 1
+ }
+ i = i + 1
+ }
+ unplaced += k
+ }
+ k = k + 1
+ }
+ }
+ else {
+ puzzleSolved
+ }
+ }
+
+ private def puzzleSolved() = {
+ val b = board.asString
+ if (first == null){
+ first = b; last = b
+ } else {
+ if (b < first){ first = b } else { if (b > last){ last = b } }
+ }
+ countdown = countdown - 1
+ }
+
+ private def shouldPrune(): Boolean = {
+ board.unmark
+ var i = 0
+ while (i < board.cells.length){
+ if (board.cells(i).contiguousEmptyCells % Piece.size != 0) return true
+ i = i + 1
+ }
+ false
+ }
+
+
+ def printSolutions() = {
+
+ def printBoard(s: String) = {
+ var indent = false
+ var i = 0
+ while (i < s.length){
+ if (indent) Console.print(' ')
+ var j = 0
+ while (j < Board.cols){
+ Console.print(s.charAt(i)); Console.print(' ')
+ j = j + 1
+ i = i + 1
+ }
+ Console.print('\n')
+ indent = !indent
+ }
+ Console.print('\n')
+ }
+
+ Console.print(n + " solutions found\n\n")
+ printBoard(first)
+ printBoard(last)
+ }
+
+/*
+ def printPieces() =
+ for (i <- Iterator.range(0,Board.pieces)) pieces(i).print
+*/
+
+}
+
+
+
+// Board.scala
+// import scala.collection.mutable._
+
+object Board {
+ val cols = 5
+ val rows = 10
+ val size = rows * cols
+ val pieces = 10
+ val noFit = new Array[BoardCell](0)
+}
+
+final class Board {
+ val cells = boardCells()
+
+ val cellsPieceWillFill = new Array[BoardCell](Piece.size)
+ var cellCount = 0
+
+ def unmark() = {
+ var i = 0
+ while (i < cells.length){
+ cells(i).unmark
+ i = i + 1
+ }
+ }
+
+ def asString() =
+ new String( cells map(
+ c => if (c.piece == null) '-'.toByte
+ else (c.piece.number + 48).toByte ))
+
+ def firstEmptyCellIndex() = cells.findIndexOf(c => c.isEmpty)
+
+
+ private val cache: Array[Array[Array[Array[ Array[BoardCell] ]]]] =
+ for (i <- Array.range(0,Board.pieces))
+ yield
+ for (j <- Array.range(0,Piece.orientations))
+ yield
+ for (k <- Array.range(0,Piece.size)) // piece cell index
+ yield
+ for (m <- Array.range(0,Board.size)) // board cell index
+ yield (null: BoardCell)
+
+
+ def add(pieceIndex: Int, boardIndex: Int, p: Piece): Boolean = {
+ var a = cache(p.number)(p.orientation)(pieceIndex)(boardIndex)
+
+ cellCount = 0
+ p.unmark
+
+ if (a == null){
+ find(p.cells(pieceIndex), cells(boardIndex))
+
+ if (cellCount != Piece.size){
+ cache(p.number)(p.orientation)(pieceIndex)(boardIndex) = Board.noFit
+ return false
+ }
+
+ a = cellsPieceWillFill .filter(c => true)
+ cache(p.number)(p.orientation)(pieceIndex)(boardIndex) = a
+ }
+ else {
+ if (a == Board.noFit) return false
+ }
+
+ var i = 0
+ while (i < a.length){
+ if (!a(i).isEmpty) return false
+ i = i + 1
+ }
+
+ i = 0
+ while (i < a.length){
+ a(i).piece = p
+ i = i + 1
+ }
+
+ true
+ }
+
+
+ def remove(piece: Piece) = {
+ var i = 0
+ while (i < cells.length){
+ if (cells(i).piece == piece) cells(i).empty
+ i = i + 1
+ }
+ }
+
+
+ private def find(p: PieceCell, b: BoardCell): Unit = {
+ if (p != null && !p.marked && b != null){
+ cellsPieceWillFill(cellCount) = b
+ cellCount = cellCount + 1
+ p.mark
+
+ var i = 0
+ while (i < Cell.sides){
+ find(p.next(i), b.next(i))
+ i = i + 1
+ }
+ }
+ }
+
+
+ private def boardCells() = {
+ val a = for (i <- Array.range(0,Board.size)) yield new BoardCell(i)
+ val m = (Board.size / Board.cols) - 1
+
+ for (i <- Iterator.range(0,a.length)){
+ val row = i / Board.cols
+ val isFirst = i % Board.cols == 0
+ val isLast = (i+1) % Board.cols == 0
+ val c = a(i)
+
+ if (row % 2 == 1) {
+ if (!isLast) c.next(Cell.NE) = a(i-(Board.cols-1))
+ c.next(Cell.NW) = a(i-Board.cols)
+ if (row != m) {
+ if (!isLast) c.next(Cell.SE) = a(i+(Board.cols+1))
+ c.next(Cell.SW) = a(i+Board.cols)
+ }
+ } else {
+ if (row != 0) {
+ if (!isFirst) c.next(Cell.NW) = a(i-(Board.cols+1))
+ c.next(Cell.NE) = a(i-Board.cols)
+ }
+ if (row != m) {
+ if (!isFirst) c.next(Cell.SW) = a(i+(Board.cols-1))
+ c.next(Cell.SE) = a(i+Board.cols)
+ }
+ }
+ if (!isFirst) c.next(Cell.W) = a(i-1)
+ if (!isLast) c.next(Cell.E) = a(i+1)
+ }
+ a
+ }
+
+
+/*
+// Printing all the board cells and their neighbours
+// helps check that they are connected properly
+
+ def printBoardCellsAndNeighbours() = {
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Board.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ Console.printf("{0,number,00} ")(c.number)
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+
+}
+
+
+
+
+// Piece.scala
+
+object Piece {
+ val size = 5
+ val rotations = Cell.sides
+ val flips = 2
+ val orientations = rotations * flips
+}
+
+final class Piece(_number: Int) {
+ val number = _number
+
+ def unmark() = {
+ val c = cache(orientation)
+ var i = 0
+ while (i < c.length){
+ c(i).unmark
+ i = i + 1
+ }
+ }
+
+ def cells = cache(orientation)
+
+ private val cache =
+ for (i <- Array.range(0,Piece.orientations))
+ yield pieceOrientation(i)
+
+ var orientation = 0
+
+ def nextOrientation() = {
+ orientation = (orientation + 1) % Piece.orientations
+ this
+ }
+
+
+ private def pieceOrientation(k: Int) = {
+ val cells = for (i <- Array.range(0,Piece.size)) yield new PieceCell()
+ makePiece(number,cells)
+
+ var i = 0
+ while (i < k){
+ if (i % Piece.rotations == 0)
+ for (c <- cells) c.flip
+ else
+ for (c <- cells) c.rotate
+
+ i = i + 1
+ }
+ cells
+ }
+
+ private def makePiece(number: Int, cells: Array[PieceCell]) = {
+ number match {
+ case 0 => make0(cells)
+ case 1 => make1(cells)
+ case 2 => make2(cells)
+ case 3 => make3(cells)
+ case 4 => make4(cells)
+ case 5 => make5(cells)
+ case 6 => make6(cells)
+ case 7 => make7(cells)
+ case 8 => make8(cells)
+ case 9 => make9(cells)
+ }
+ }
+
+ private def make0(a: Array[PieceCell]) = {
+ a(0).next(Cell.E) = a(1)
+ a(1).next(Cell.W) = a(0)
+ a(1).next(Cell.E) = a(2)
+ a(2).next(Cell.W) = a(1)
+ a(2).next(Cell.E) = a(3)
+ a(3).next(Cell.W) = a(2)
+ a(3).next(Cell.SE) = a(4)
+ a(4).next(Cell.NW) = a(3)
+ }
+
+ private def make1(a: Array[PieceCell]) = {
+ a(0).next(Cell.SE) = a(1)
+ a(1).next(Cell.NW) = a(0)
+ a(1).next(Cell.SW) = a(2)
+ a(2).next(Cell.NE) = a(1)
+ a(2).next(Cell.W) = a(3)
+ a(3).next(Cell.E) = a(2)
+ a(3).next(Cell.SW) = a(4)
+ a(4).next(Cell.NE) = a(3)
+ }
+
+ private def make2(a: Array[PieceCell]) = {
+ a(0).next(Cell.W) = a(1)
+ a(1).next(Cell.E) = a(0)
+ a(1).next(Cell.SW) = a(2)
+ a(2).next(Cell.NE) = a(1)
+ a(2).next(Cell.SE) = a(3)
+ a(3).next(Cell.NW) = a(2)
+ a(3).next(Cell.SE) = a(4)
+ a(4).next(Cell.NW) = a(3)
+ }
+
+ private def make3(a: Array[PieceCell]) = {
+ a(0).next(Cell.SW) = a(1)
+ a(1).next(Cell.NE) = a(0)
+ a(1).next(Cell.W) = a(2)
+ a(2).next(Cell.E) = a(1)
+ a(1).next(Cell.SW) = a(3)
+ a(3).next(Cell.NE) = a(1)
+ a(2).next(Cell.SE) = a(3)
+ a(3).next(Cell.NW) = a(2)
+ a(3).next(Cell.SE) = a(4)
+ a(4).next(Cell.NW) = a(3)
+ }
+
+ private def make4(a: Array[PieceCell]) = {
+ a(0).next(Cell.SE) = a(1)
+ a(1).next(Cell.NW) = a(0)
+ a(1).next(Cell.SW) = a(2)
+ a(2).next(Cell.NE) = a(1)
+ a(1).next(Cell.E) = a(3)
+ a(3).next(Cell.W) = a(1)
+ a(3).next(Cell.SE) = a(4)
+ a(4).next(Cell.NW) = a(3)
+ }
+
+ private def make5(a: Array[PieceCell]) = {
+ a(0).next(Cell.SW) = a(1)
+ a(1).next(Cell.NE) = a(0)
+ a(0).next(Cell.SE) = a(2)
+ a(2).next(Cell.NW) = a(0)
+ a(1).next(Cell.SE) = a(3)
+ a(3).next(Cell.NW) = a(1)
+ a(2).next(Cell.SW) = a(3)
+ a(3).next(Cell.NE) = a(2)
+ a(3).next(Cell.SW) = a(4)
+ a(4).next(Cell.NE) = a(3)
+ }
+
+ private def make6(a: Array[PieceCell]) = {
+ a(0).next(Cell.SW) = a(1)
+ a(1).next(Cell.NE) = a(0)
+ a(2).next(Cell.SE) = a(1)
+ a(1).next(Cell.NW) = a(2)
+ a(1).next(Cell.SE) = a(3)
+ a(3).next(Cell.NW) = a(1)
+ a(3).next(Cell.SW) = a(4)
+ a(4).next(Cell.NE) = a(3)
+ }
+
+ private def make7(a: Array[PieceCell]) = {
+ a(0).next(Cell.SE) = a(1)
+ a(1).next(Cell.NW) = a(0)
+ a(0).next(Cell.SW) = a(2)
+ a(2).next(Cell.NE) = a(0)
+ a(2).next(Cell.SW) = a(3)
+ a(3).next(Cell.NE) = a(2)
+ a(3).next(Cell.SE) = a(4)
+ a(4).next(Cell.NW) = a(3)
+ }
+
+ private def make8(a: Array[PieceCell]) = {
+ a(0).next(Cell.E) = a(1)
+ a(1).next(Cell.W) = a(0)
+ a(1).next(Cell.E) = a(2)
+ a(2).next(Cell.W) = a(1)
+ a(2).next(Cell.NE) = a(3)
+ a(3).next(Cell.SW) = a(2)
+ a(3).next(Cell.E) = a(4)
+ a(4).next(Cell.W) = a(3)
+ }
+
+ private def make9(a: Array[PieceCell]) = {
+ a(0).next(Cell.E) = a(1)
+ a(1).next(Cell.W) = a(0)
+ a(1).next(Cell.E) = a(2)
+ a(2).next(Cell.W) = a(1)
+ a(2).next(Cell.NE) = a(3)
+ a(3).next(Cell.SW) = a(2)
+ a(2).next(Cell.E) = a(4)
+ a(4).next(Cell.W) = a(2)
+ a(4).next(Cell.NW) = a(3)
+ a(3).next(Cell.SE) = a(4)
+ }
+
+/*
+ def print() = {
+ Console.println("Piece # " + number)
+ Console.println("cell\tNW NE W E SW SE")
+ for (i <- Iterator.range(0,Piece.size)){
+ Console.print(i + "\t")
+ for (j <- Iterator.range(0,Cell.sides)){
+ val c = cells(i).next(j)
+ if (c == null)
+ Console.print("-- ")
+ else
+ for (k <- Iterator.range(0,Piece.size)){
+ if (cells(k) == c) Console.printf(" {0,number,0} ")(k)
+ }
+ }
+ Console.println("")
+ }
+ Console.println("")
+ }
+*/
+}
+
+
+
+
+
+// Cell.scala
+
+object Cell {
+ val NW = 0; val NE = 1
+ val W = 2; val E = 3
+ val SW = 4; val SE = 5
+
+ val sides = 6
+}
+
+abstract class Cell {
+ var marked = false
+
+ def mark() = marked = true
+ def unmark() = marked = false
+}
+
+
+
+
+// BoardCell.scala
+
+final class BoardCell(_number: Int) extends Cell {
+ val next = new Array[BoardCell](Cell.sides)
+ val number = _number
+ var piece: Piece = _
+
+ def isEmpty() = piece == null
+ def empty() = piece = null
+
+ def contiguousEmptyCells(): Int = {
+ if (!marked && isEmpty){
+ mark
+ var count = 1
+
+ var i = 0
+ while (i < next.length){
+ if (next(i) != null && next(i).isEmpty)
+ count = count + next(i).contiguousEmptyCells
+ i = i + 1
+ }
+
+ count } else { 0 }
+ }
+}
+
+
+
+
+// PieceCell.scala
+
+final class PieceCell extends Cell {
+ val next = new Array[PieceCell](Cell.sides)
+
+ def flip = {
+ var swap = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = swap
+
+ swap = next(Cell.E)
+ next(Cell.E) = next(Cell.W)
+ next(Cell.W) = swap
+
+ swap = next(Cell.SE)
+ next(Cell.SE) = next(Cell.SW)
+ next(Cell.SW) = swap
+ }
+
+ def rotate = {
+ var swap = next(Cell.E)
+ next(Cell.E) = next(Cell.NE)
+ next(Cell.NE) = next(Cell.NW)
+ next(Cell.NW) = next(Cell.W)
+ next(Cell.W) = next(Cell.SW)
+ next(Cell.SW) = next(Cell.SE)
+ next(Cell.SE) = swap
+ }
+}
+
+
+
+
diff --git a/test/pending/shootout/meteor.scala-4.scala.runner b/test/pending/shootout/meteor.scala-4.scala.runner
new file mode 100644
index 0000000000..dae384311f
--- /dev/null
+++ b/test/pending/shootout/meteor.scala-4.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(0)) meteor.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/meteor.scala.runner b/test/pending/shootout/meteor.scala.runner
new file mode 100644
index 0000000000..dae384311f
--- /dev/null
+++ b/test/pending/shootout/meteor.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(0)) meteor.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/methcall.scala b/test/pending/shootout/methcall.scala
new file mode 100644
index 0000000000..9f7234c72d
--- /dev/null
+++ b/test/pending/shootout/methcall.scala
@@ -0,0 +1,58 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object methcall {
+ def main(args: Array[String]) = {
+ var n = toPositiveInt(args);
+ var v: Boolean = false
+
+ val toggle = new Toggle(true);
+ for (i <- Iterator.range(1,n)) v = toggle.activate.value;
+
+ Console println( toggle.activate.value );
+
+ val ntoggle = new NToggle(true,3);
+ for (i <- Iterator.range(1,n)) v = ntoggle.activate.value;
+
+ Console println( ntoggle.activate.value );
+ }
+
+
+ private def toPositiveInt(s: Array[String]) = {
+ val i =
+ try { Integer.parseInt(s(0)); }
+ catch { case _ => 1 }
+ if (i>0) i; else 1;
+ }
+}
+
+
+private class Toggle(b: Boolean) {
+ var state = b;
+
+ def value = state;
+
+ def activate = {
+ state = !state;
+ this
+ }
+}
+
+
+private class NToggle(b: Boolean, trigger: Int)
+extends Toggle(b) {
+
+ val toggleTrigger = trigger;
+ var count = 0;
+
+ override def activate = {
+ count = count + 1;
+ if (count >= toggleTrigger) {
+ state = !state;
+ count = 0;
+ }
+ this
+ }
+}
diff --git a/test/pending/shootout/methcall.scala.runner b/test/pending/shootout/methcall.scala.runner
new file mode 100644
index 0000000000..555413cc6c
--- /dev/null
+++ b/test/pending/shootout/methcall.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(100000,400000,700000,1000000)) methcall.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/nsieve.scala-4.check b/test/pending/shootout/nsieve.scala-4.check
new file mode 100644
index 0000000000..5ae0440a5a
--- /dev/null
+++ b/test/pending/shootout/nsieve.scala-4.check
@@ -0,0 +1,9 @@
+Primes up to 1280000 98610
+Primes up to 640000 52074
+Primes up to 320000 27608
+Primes up to 2560000 187134
+Primes up to 1280000 98610
+Primes up to 640000 52074
+Primes up to 5120000 356244
+Primes up to 2560000 187134
+Primes up to 1280000 98610
diff --git a/test/pending/shootout/nsieve.scala-4.scala b/test/pending/shootout/nsieve.scala-4.scala
new file mode 100644
index 0000000000..741eb80398
--- /dev/null
+++ b/test/pending/shootout/nsieve.scala-4.scala
@@ -0,0 +1,45 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+
+object nsieve {
+
+ def nsieve(m: Int, isPrime: Array[Boolean]) = {
+ for (i <- List.range(2, m)) isPrime(i) = true
+ var count = 0
+
+ for (i <- List.range(2, m)){
+ if (isPrime(i)){
+ var k = i+i
+ while (k < m){ isPrime(k) = false; k = k+i }
+ count = count + 1
+ }
+ }
+ count
+ }
+
+
+ def main(args: Array[String]) = {
+ val n = Integer.parseInt(args(0))
+ val m = (1<<n)*10000
+ val flags = new Array[Boolean](m+1)
+
+ def printPrimes(m: Int) = {
+
+ def pad(i: Int, width: Int) = {
+ val s = i.toString
+ List.range(0, width - s.length)
+ .map((i) => " ") .foldLeft("")((a,b) => a+b) + s
+ }
+
+ Console.println("Primes up to " + pad(m,8) + pad(nsieve(m,flags),9))
+ }
+
+
+ printPrimes(m)
+ printPrimes( (1<<n-1)*10000 )
+ printPrimes( (1<<n-2)*10000 )
+ }
+}
diff --git a/test/pending/shootout/nsieve.scala-4.scala.runner b/test/pending/shootout/nsieve.scala-4.scala.runner
new file mode 100644
index 0000000000..67be6d5844
--- /dev/null
+++ b/test/pending/shootout/nsieve.scala-4.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(7,8,9)) nsieve.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/pidigits.check b/test/pending/shootout/pidigits.check
new file mode 100644
index 0000000000..ad4dc9962b
--- /dev/null
+++ b/test/pending/shootout/pidigits.check
@@ -0,0 +1,100 @@
+3141592653 :10
+5897932384 :20
+6264338327 :30
+9502884197 :40
+1693993751 :50
+0582097494 :60
+4592307816 :70
+4062862089 :80
+9862803482 :90
+5342117067 :100
+9821480865 :110
+1328230664 :120
+7093844609 :130
+5505822317 :140
+2535940812 :150
+8481117450 :160
+2841027019 :170
+3852110555 :180
+9644622948 :190
+9549303819 :200
+6442881097 :210
+5665933446 :220
+1284756482 :230
+3378678316 :240
+5271201909 :250
+1456485669 :260
+2346034861 :270
+0454326648 :280
+2133936072 :290
+6024914127 :300
+3724587006 :310
+6063155881 :320
+7488152092 :330
+0962829254 :340
+0917153643 :350
+6789259036 :360
+0011330530 :370
+5488204665 :380
+2138414695 :390
+1941511609 :400
+4330572703 :410
+6575959195 :420
+3092186117 :430
+3819326117 :440
+9310511854 :450
+8074462379 :460
+9627495673 :470
+5188575272 :480
+4891227938 :490
+1830119491 :500
+2983367336 :510
+2440656643 :520
+0860213949 :530
+4639522473 :540
+7190702179 :550
+8609437027 :560
+7053921717 :570
+6293176752 :580
+3846748184 :590
+6766940513 :600
+2000568127 :610
+1452635608 :620
+2778577134 :630
+2757789609 :640
+1736371787 :650
+2146844090 :660
+1224953430 :670
+1465495853 :680
+7105079227 :690
+9689258923 :700
+5420199561 :710
+1212902196 :720
+0864034418 :730
+1598136297 :740
+7477130996 :750
+0518707211 :760
+3499999983 :770
+7297804995 :780
+1059731732 :790
+8160963185 :800
+9502445945 :810
+5346908302 :820
+6425223082 :830
+5334468503 :840
+5261931188 :850
+1710100031 :860
+3783875288 :870
+6587533208 :880
+3814206171 :890
+7766914730 :900
+3598253490 :910
+4287554687 :920
+3115956286 :930
+3882353787 :940
+5937519577 :950
+8185778053 :960
+2171226806 :970
+6130019278 :980
+7661119590 :990
+9216420198 :1000
diff --git a/test/pending/shootout/pidigits.scala b/test/pending/shootout/pidigits.scala
new file mode 100644
index 0000000000..b0becafda8
--- /dev/null
+++ b/test/pending/shootout/pidigits.scala
@@ -0,0 +1,69 @@
+/* ------------------------------------------------------------------ */
+/* The Computer Language Shootout */
+/* http://shootout.alioth.debian.org/ */
+/* */
+/* Contributed by Anthony Borla */
+/* ------------------------------------------------------------------ */
+
+object pidigits
+{
+ def main(args: Array[String]): Unit =
+ {
+ val N: Int = Integer.parseInt(args(0)); var i: Int = 10
+
+ while (i <= N)
+ {
+ System.out.println(pi_digits(10) + "\t:" + i)
+ i = i + 10
+ }
+
+ i = i - 10
+
+ if (i < N)
+ {
+ System.out.println(pi_digits(N - i) + "\t:" + N)
+ }
+ }
+
+ def compose(a: Array[BigInt], b: Array[BigInt]): Array[BigInt] =
+ {
+ return Array(a(0) * b(0),
+ a(0) * b(1) + a(1) * b(3),
+ a(2) * b(0) + a(3) * b(2),
+ a(2) * b(1) + a(3) * b(3))
+ }
+
+ def extract(a: Array[BigInt], j: Int): BigInt =
+ {
+ return (a(0) * j + a(1)) / (a(2) * j + a(3))
+ }
+
+ def pi_digits(c: Int): String =
+ {
+ val r: StringBuffer = new StringBuffer(); var i: Int = 0
+
+ while (i < c)
+ {
+ var y: BigInt = extract(Z, 3)
+
+ while (y != extract(Z, 4))
+ {
+ K = K + 1; Z = compose(Z, Array(K, 4 * K + 2, 0, 2 * K + 1))
+ y = extract(Z, 3)
+ }
+
+// Z = compose(Array(10, (-y) * 10, 0, 1), Z)
+
+ Z = compose(Array(10, y * (-10), 0, 1), Z)
+
+ r.append(y); i = i + 1;
+ }
+
+ return r.toString()
+ }
+
+ var K: Int = 0
+
+ var Z: Array[BigInt] = Array(1, 0, 0, 1)
+}
+
diff --git a/test/pending/shootout/pidigits.scala.runner b/test/pending/shootout/pidigits.scala.runner
new file mode 100644
index 0000000000..4bf5a8bde9
--- /dev/null
+++ b/test/pending/shootout/pidigits.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(600,800,1000)) pidigits.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/prodcons.scala b/test/pending/shootout/prodcons.scala
new file mode 100644
index 0000000000..d48d3e94d8
--- /dev/null
+++ b/test/pending/shootout/prodcons.scala
@@ -0,0 +1,64 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+import concurrent.SyncVar;
+import concurrent.ops._;
+
+object prodcons {
+ def main(args: Array[String]) = {
+ val n = toPositiveInt(args);
+ val buffer = new SharedBuffer();
+ var p = 0;
+ var c = 0;
+ val cDone = new SyncVar[Boolean];
+
+ spawn {
+ while(p<n) { p=p+1; buffer put(p); }
+ }
+
+ spawn {
+ var v: Int = _;
+ while(c<n) { c=c+1; v = buffer.get; }
+ cDone set true;
+ }
+
+ cDone.get;
+ Console println(p + " " + c);
+ }
+
+
+ private def toPositiveInt(s: Array[String]) = {
+ val i =
+ try { Integer.parseInt(s(0)); }
+ catch { case _ => 1 }
+ if (i>0) i; else 1;
+ }
+}
+
+
+private class SharedBuffer() {
+ var contents: Int = _;
+ var available = false;
+
+ def get = synchronized {
+ while (available == false) wait();
+ available = false;
+ // Console println("\t" + "get " + contents);
+ notifyAll();
+ contents
+ }
+
+ def put(value: Int) = synchronized {
+ while (available == true) wait();
+ contents = value;
+ available = true;
+ // Console println("put " + value);
+ notifyAll();
+ }
+}
+
+
+
+
diff --git a/test/pending/shootout/prodcons.scala.runner b/test/pending/shootout/prodcons.scala.runner
new file mode 100644
index 0000000000..75faf8ca6e
--- /dev/null
+++ b/test/pending/shootout/prodcons.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(30000,70000,100000,150000)) prodcons.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/random.scala b/test/pending/shootout/random.scala
new file mode 100644
index 0000000000..0a86a35637
--- /dev/null
+++ b/test/pending/shootout/random.scala
@@ -0,0 +1,32 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object random {
+ def main(args: Array[String]) = {
+ var n = toPositiveInt(args);
+ var result: Double = 0
+
+ while (n>0) { result=generate(100.0); n=n-1; }
+
+ Console.printf("{0,number,#.000000000}\n", result)
+ }
+
+ private val IM = 139968;
+ private val IA = 3877;
+ private val IC = 29573;
+ private var seed = 42;
+
+ def generate(max: Double) = {
+ seed = (seed * IA + IC) % IM;
+ max * seed / IM;
+ }
+
+ private def toPositiveInt(s: Array[String]) = {
+ val i =
+ try { Integer.parseInt(s(0)); }
+ catch { case _ => 1 }
+ if (i>0) i; else 1;
+ }
+}
diff --git a/test/pending/shootout/random.scala.runner b/test/pending/shootout/random.scala.runner
new file mode 100644
index 0000000000..11cbeef0f6
--- /dev/null
+++ b/test/pending/shootout/random.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(9000,300000,600000,900000)) random.main(Array(n.toString))
+}
diff --git a/test/pending/shootout/revcomp.scala-2.check b/test/pending/shootout/revcomp.scala-2.check
new file mode 100644
index 0000000000..14d792ade8
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-2.check
@@ -0,0 +1,171 @@
+>ONE Homo sapiens alu
+CGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAAC
+CTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACA
+GGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCAT
+GTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAA
+AGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTC
+TGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGG
+GTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACC
+ACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTG
+GTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTA
+CAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCT
+GGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTC
+TCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCCCGGCTAAT
+TTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTCGAACTCCT
+GACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCA
+CCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGC
+GCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCC
+TCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTA
+GTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGAT
+CCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCT
+TTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTC
+ACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTG
+GGATTACAGGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGT
+TTCACCATGTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGG
+CCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAG
+TCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCG
+CCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGC
+GCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGG
+CCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGC
+TGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCG
+CCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCA
+AGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCC
+CGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTC
+GAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGC
+GTGAGCCACCGCGCCCGGCC
+>TWO IUB ambiguity codes
+TAGGDHACHATCRGTRGVTGAGWTATGYTGCTGTCABACDWVTRTAAGAVVAGATTTNDA
+GASMTCTGCATBYTTCAAKTTACMTATTACTTCATARGGYACMRTGTTTTYTATACVAAT
+TTCTAKGDACKADACTATATNTANTCGTTCACGBCGYSCBHTANGGTGATCGTAAAGTAA
+CTATBAAAAGATSTGWATBCSGAKHTTABBAACGTSYCATGCAAVATKTSKTASCGGAAT
+WVATTTNTCCTTCTTCTTDDAGTGGTTGGATACVGTTAYMTMTBTACTTTHAGCTAGBAA
+AAGAGKAAGTTRATWATCAGATTMDDTTTAAAVAAATATTKTCYTAAATTVCNKTTRACG
+ADTATATTTATGATSADSCAATAWAGCGRTAGTGTAAGTGACVGRADYGTGCTACHVSDT
+CTVCARCSYTTAATATARAAAATTTAATTTACDAATTGBACAGTAYAABATBTGCAGBVG
+TGATGGDCAAAATBNMSTTABKATTGGSTCCTAGBTTACTTGTTTAGTTTATHCGATSTA
+AAGTCGAKAAASTGTTTTAWAKCAGATATACTTTTMTTTTGBATAGAGGAGCMATGATRA
+AAGGNCAYDCCDDGAAAGTHGBTAATCKYTBTACBGTBCTTTTTGDTAASSWTAAWAARA
+TTGGCTAAGWGRADTYACATAGCTCBTAGATAWAGCAATNGTATMATGTTKMMAGTAWTC
+CCNTSGAAWATWCAAAAMACTGAADNTYGATNAATCCGAYWNCTAACGTTAGAGDTTTTC
+ATCTGGKRTAVGAABVCTGWGBTCTDVGKATTBTCTAAGGVADAAAVWTCTAGGGGAGGG
+TTAGAACAATTAAHTAATNAAATGCATKATCTAAYRTDTCAGSAYTTYHGATRTTWAVTA
+BGNTCDACAGBCCRCAGWCRTCABTGMMAWGMCTCAACCGATRTGBCAVAATCGTDWDAA
+CAYAWAATWCTGGTAHCCCTAAGATAACSCTTAGTGSAACAWTBGTCDTTDGACWDBAAC
+HTTTNGSKTYYAAYGGATNTGATTTAARTTAMBAATCTAAGTBTCATYTAACTTADTGTT
+TCGATACGAAHGGCYATATACCWDTKYATDCSHTDTCAAAATGTGBACTGSCCVGATGTA
+TCMMAGCCTTDAAABAATGAAGAGTAACTHATMGVTTAATAACCCGGTTVSANTGCAATT
+GTGAGATTTAMGTTTAMAAYGCTGACAYAAAAAGGCACAMYTAAGVGGCTGGAABVTACG
+GATTSTYGTBVAKTATWACCGTGTKAGTDTGTATGTTTAAAGGAAAAAGTAACATARAAA
+GGTYCAMNYAAABTATAGNTSATANAGTCATCCTATWADKAACTRGTMSACDGTATSAYT
+AAHSHGTAABYGACTYTATADTGSTATAGAGAAATCGNTAAAGGAAATCAGTTGTNCYMV
+TNACDRTATBNATATASTAGAAMSCGGGANRCKKMCAAACATTNAGTCTRMAATBMTACC
+CGTACTTCTBGDSYAATWGAAAATGACADDCHAKAAAYATATTKTTTTCACANACWAGAA
+AKATCCTTATTAYKHKCTAAACARTATTTTDATBTVWCYGCAATACTAGGKAAASTTDGA
+MGGCHTTHAATVCAHDRYAGGRCTATACGTCMAGAGAGCTBTHGNACARTCCBDCTAAGA
+GCGGCTTTARTAAAGAATCCNAGTAWBTGACTTGAATTACWTVACAGAAABCAATNAAAC
+CGTNTRANTTGAYCMAWBADTANABRGGTKTHTWTAGTTVCTMBKTAGMTVKCCAGCANT
+TVAGSWTTAGCCGCRHTTTCCTTHNTATTAAGAAGAATAGGMTRAARTCTABGTACDTTT
+TATAAVDHAHTATAGATCCTAGTAAGYTWATDWCATGAGGGATAGTAAMDMNGBASTWAM
+TSTATRBAYDABATGTATATYCGCACTGTTTTAACMCWBTATAWAGTATBTSTATVTTAR
+CCTMTTAAKADATCAACTAATYTSVTAKGDATTATGCKTCAYCAKAATACTTKAANGAGT
+ATTSDAGATCGGAAATACTTAAYAAVGTATMCGCTTGTGTDCTAATYTATTTTATTTWAA
+CAGWRCTATGTAGMTGTTTGTTYKTNGTTKTCAGAACNTRACCTACKTGSRATGTGGGGG
+CTGTCATTAAGTAAATNGSTTABCCCCTCGCAGCTCWHTCGCGAAGCAVATGCKACGHCA
+ACAKTTAATAACASAAADATTWNYTGTAATTGTTCGTMHACHTWATGTGCWTTTTGAAHY
+ACTTTGTAYAMSAAACTTAADAAATATAGTABMATATYAATGSGGTAGTTTGTGTBYGGT
+TWSGSVGWMATTDMTCCWWCABTCSVACAGBAATGTTKATBGTCAATAATCTTCTTAAAC
+ARVAATHAGYBWCTRWCABGTWWAATCTAAGTCASTAAAKTAAGVKBAATTBGABACGTA
+AGGTTAAATAAAAACTRMDTWBCTTTTTAATAAAAGATMGCCTACKAKNTBAGYRASTGT
+ASSTCGTHCGAAKTTATTATATTYTTTGTAGAACATGTCAAAACTWTWTHGKTCCYAATA
+AAGTGGAYTMCYTAARCSTAAATWAKTGAATTTRAGTCTSSATACGACWAKAASATDAAA
+TGYYACTSAACAAHAKTSHYARGASTATTATTHAGGYGGASTTTBGAKGATSANAACACD
+TRGSTTRAAAAAAAACAAGARTCVTAGTAAGATAWATGVHAAKATWGAAAAGTYAHVTAC
+TCTGRTGTCAWGATRVAAKTCGCAAVCGASWGGTTRTCSAMCCTAACASGWKKAWDAATG
+ACRCBACTATGTGTCTTCAAAHGSCTATATTTCGTVWAGAAGTAYCKGARAKSGKAGTAN
+TTTCYACATWATGTCTAAAADMDTWCAATSTKDACAMAADADBSAAATAGGCTHAHAGTA
+CGACVGAATTATAAAGAHCCVAYHGHTTTACATSTTTATGNCCMTAGCATATGATAVAAG
+>THREE Homo sapiens frequency
+ATATTTATCTTTTCACTTCCTACATTGGTCAGACCATTATTCGACACGTGGCGTCATTTT
+GTCATACCGGGTAATGTTGGAAACAAAACGTACTGATAAAATACTGAGTTGTAAACTCTA
+ATCAGATAACGCGCTTGGATATTAAGATTCACACAGGGGTTTCGGCTGTAAAAAAACTTG
+TGGAGCTGTTCTGGGACAGATAAGTTGTACCTCGTACTTAGCTAATTAATGAACCAACTG
+ATTACGATAGAACAATTCTGAGGCCGCCAGGACAGCCAAATTTTAATCTTATAAAGCTGG
+AAACAGCCGGTATTAGCTTCTCGCATACTTTGCCTGCATTGGTACCTTACAGATATCAGC
+GTAGTCATATACACCTCGGTCTCAGCTAAGCTTGTATCTCTTAGAGTAGTTCAAAGATAG
+TGGACAATACCTGTGGAATCGATTGCAGATATGGATTTATTTAACTACTGAGTCTCATTC
+ACAAGCTAAGCAAGGAGCACGTTTTGGTGCCGGCATACCGATTTGCTATCATGTCAGCAA
+ATTTGCGTTGTATTCCTAGTTGCACCCATTAAGGCCACACTCCGAACCTAATTATTACAT
+CGCAAAGACATGTACGAAGGACCCGATGTCGAATAGAAGGGAGGACTGTTCATTGGAAGC
+TAGACCAGAGGAATCGCAAAGATGCAACTCTTACAATAAAAATCTAATTTCAGTCAACAC
+GCAATTTCTATAAGGTTTCCGATAATAATGAACCGTCTTCCACAGGGGAATTTGCCATGC
+TCGTAAAAGTAGTTAATCCAAGTAGAAGAAATTTTGATAATGTTTTAAGTTGGCACGAAG
+GAATTCAGAGAGATCTTACCTAACAAAGGCATTAGTAGATGTTCCTTGGTTCACACTCGG
+TCAATCAGAGCACATACTACGGGCGATACCGGGAATGACACAACATCAATGAGATTGTTA
+AGTGAGGTAATTGACTTTAGAGGACTCGATCAGTATACTGTCACTATGAACATCGTATTA
+ATTGTTATCCGATATATACACCACCGATTTGCTTGTGCAAGGTTACAGACCCATTCGATA
+AATACAAACACGGAGCGATATTATTTAAGGAGTGCTGTCTTCAAAAGAATTATTCCCACA
+CCGACATAAGAACTTCGCTCCGTCATTCCAGATTTAAATAACATAACGTAACGCTTTGCT
+GATAACATAACATAACCGAGAATTTGCTTAGGAAATTTGGAGCAATATTGCATTGTTTCT
+CAGTCATCACAAGGCCCGCCAAAGAACTCTGAGAATCAGGATTCAACATGATTGGTAAGA
+CTCTATATATATAACTTAATTCTTGTGTCCGGAGATAGAAAGAGGACGAGAGATACTACG
+AAAGAAAGTGTACTTCGATGTATCAATTCAGACGCCTTCTCTATCATCAACATTATAGGT
+CTCGTATATGCTCGGCGCGATCTGCTTCTCTCCGCCAATAGCCCCATAGTGTATTTCAAG
+CGCAGTAACAGTGAAATCGTTACGAAGGTAGGGATGTTGCTTATAATTGTCGTAACTTAT
+CGCTTATGTATCTTTCAAGAATGAACGGCAGCATATACATACGTTCTACCTTTAGCTACA
+AAGCATCCATATACTCCCTCTCATGATTGAAACTCTTCCCTATTTTGTAGCCAATAGTGA
+AAGCGTATTAGTATAAATTCGTCGGTTTTTCACTCGCAACTGTTATACTCTGCAAACAAA
+CGAAAGCCTCATAGTACAAACCTAAAGCTACATACTTCATCATTGGCAGACCAGTGGCGG
+TATTTCTACGGAAGCATCACTATAGATATAAAGTTTCCCTTCATGTACGTCTGTTAACCA
+TATCACAAGAAACTGCTATCTCTGTCACGTAACAATTCACGCGCCTTATCGCCAAATGTT
+CATATATGCGCGGTATACGTATGAACGAATACTAATTAGTATAACGGAGGATTCACGGGA
+GGGATACTTGGGGCATTTATAAATCGTCTAAAAATTTTCTATCAGCACTTGCGGGTTATA
+GTGGATTACTAGGCAACATAATATTCTGTATTGGTCCAAATGACGCTATAGATAAATTAG
+CAAAATACATTGTTTCCATTTATGTAAGTCGAAACTCCAGGACTCCCGGGAACCAGTTAA
+ACCGTCTGGAAAAGACACATTGTGAGCGGGACTTCAATGATAGCTTTCAATGAGCTTCTC
+ATGCTTGGGGTCTGTACATATATGTTGGCGAAATTATCGTCTGTATTCTGTTATGCTTTG
+ATCATGGGTTATTAGTATAGTGTCCGGTTAAGTACCAATACCGCTAGAGACCCGACCTAA
+GTCGATAACTAACGATCATCGACGTAAGGATCGTCTCGATCAGTACTTCAGTCTAGATCT
+GGGAATAGTAACTCGTTAGTGAACTATGTCGTGTCATAACTCTAAAATGCAATCAAATCT
+TATTATTGAGTATTGATTATATAAAGCATCCGCTTAGCTTTACCCTCAAATGTTATATGC
+AATTTAAAGCGCTTGATATCGTCTACTCAAGTTCAGGTTTCACATGGCCGCAACGTGACG
+TTATTAGAGGTGGGTCATCATCTCTGAGGCTAGTGATGTTGAATACTCATTGAATGGGAA
+GTGGAATACCATGCTCGTAGGTAACAGCATGACCTATAAAATATACTATGGGTGTGTGGT
+AGATCAATATTGTTCAAGCATATCGTAACAATAACGGCTGAAATGTTACTGACATGAAAG
+AGGGAGTCCAAACCATTCTAACAGCTGATCAAGTCGTCTAAAAACGCCTGGTTCAGCCTT
+AAGAGTTATAAGCCAGACAAATTGTATCAATAGAGAATCCGTAAATTCCTCGGCCAACCT
+CTTGCAAAGACATCACTATCAATATACTACCGTGATCTTAATTAGTGAACTTATATAAAT
+ATCTACAACCAGATTCAACGGAAAAGCTTTAGTGGATTAGAAATTGCCAAGAATCACATT
+CATGTGGGTTCGAATGCTTTAGTAATACCATTTCGCCGAGTAGTCACTTCGCTGAACTGT
+CGTAAATTGCTATGACATAATCGAAAAGGATTGTCAAGAGTCGATTACTGCGGACTAATA
+ATCCCCACGGGGGTGGTCTCATGTCTCCCCAGGCGAGTGGGGACGGTTGATAAACACGCT
+GCATCGCGGACTGATGTTCCCAGTATTACATAGTCACATTGGATTGCGAGTAGTCTACCT
+ATTTATGAGCGAGAGATGCCTCTAACTACTTCGACTTTTAAAACCTTTCCACGCCAGTAT
+TCGGCGAAAGGGAAGTATTAAGGGTTGTCATAATTAAGCTGATACCACTTCAGACTTTGC
+TCTACTTCTGTCTTTCATTGGTTTAGTAAAGTCTGTCCATTCGTCGAGACCGTCTTTTGC
+AGCCTCATTCTACCAACTGCTCCGACTCTTAGTCTGCTTCTCCCAGCGTTATAACAAGAG
+GCATTTTGTCATCCTTAAAACAATAATAAAGAACTCGGAGCACTGATATAATGACTGAAT
+TAGAACCGCTTAAAAATACAACGAATAGATAAGACTATCGGATAAGATCTAATATGTAGT
+GATTAAGCCCTTTATTAATTAATAATAGTTACCCTTTCTGATGTAACGCGACATATTACG
+ATTTAGTGGCACGTCTGAATTGCAAAGCAGATCTCTACCCGATTTTTATTATAAATCCCG
+TATACATCTTGACTTGAGTAATTGTTCATCTTTTTATATCTCTTCGTACTACAAATAATT
+AATATCTCAACCCGTATTGTGTGATTCTAATTACCAACAGAATACGAGGAGGTTTTTGCT
+TAGGGCCATATATAATGAATCTATCTCGTTTATTCGCGGAACCCGAGATAACATTACGAT
+GTAACTATTTTAGAGAACTTAATACAAGAAACATTGCTGATTACTCATAACTAAATGCTT
+GGTAATATATCCTCAGTGCCCCTACCATCTTTTACGCAGGGATGTAATTACTTAGGATTC
+ATTGTGTAAGAATTACAATGAACGATGGATATGAAGGCATGTTGCGAGGTGTTCCTTGGT
+ATGTGAAGTTCGCAGGGCAACAAAAATTTCGCAGAATAGGCCTCAAAGTATTGGTAAAGA
+AGACAACTAATCATCACGAGCTTCTGATATCAATACGAACGAGTCCTGTGATGGATGAAA
+GAAAGTCGTATCGAAAATGTCAAGAGTCTGCCCAATGTAACTTACTTCAAAAAATAACGC
+TTCCGCCAAGTACGTTCGAATAAACGTAATTTTAAAAATACATAAGGGGTGTTAGAAAGT
+AAGCGACGGGATATAAGTTAGACTCAAGATTCCGCCGTAAAACGAGACTGATTCCGAAGA
+TTGTTCGTGGATCTGGTCATGACTTTCACTGAGTAAGGAGTTTCGACATATGTCAATAAA
+CACAAAAATAGAAGCTATTCGATCTGAAAAATATTAGGACAAGAAACTATCTCACGCTAG
+CCCAGAATATTCACTCACCCACGGGCGATACTAAAGCACTATATAGTCGCGTGATTACTA
+TACATATGGTACACATAAGAATCACGATCAGGTTCTCAATTTTCAACAATATATGTTTAT
+TTGCATAGGTAATATTAGGCCTTTAAGAGAAGGATGGGTGAGATACTCCGGGGATGGCGG
+CAATAAAGAAAAACACGATATGAGTAATAGGATCCTAATATCTTGGCGAGAGACTTAAGG
+TACGAATTTTGCGCAATCTATTTTTTACTTGGCCAGAATTCATGTATGGTATAAGTACGA
+ACTTTTTTGATCACTTTCATGGCTACCTGATTAGGATAGTTTGAGGAATTTCCCAAATAT
+ACCGATTTAATATACACTAGGGCTTGTCACTTTGAGTCAGAAAAAGAATATAATTACTTA
+GGGTAATGCTGCATACATATTCTTATATTGCAAAGGTTCTCTGGGTAATCTTGAGCCTTC
+ACGATACCTGGTGAAGTGTT
diff --git a/test/pending/shootout/revcomp.scala-2.scala b/test/pending/shootout/revcomp.scala-2.scala
new file mode 100644
index 0000000000..92260ad021
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-2.scala
@@ -0,0 +1,92 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+import java.io._
+import scala.collection.mutable.Stack
+
+object revcomp {
+
+ val IUB = IUBCodeComplements
+
+ def IUBCodeComplements() = {
+ val code = "ABCDGHKMNRSTVWYabcdghkmnrstvwy".getBytes
+ val comp = "TVGHCDMKNYSABWRTVGHCDMKNYSABWR".getBytes
+ val a: Array[Byte] = new Array( 'z'.toByte )
+
+ for (indexValue <- code zip comp)
+ indexValue match { case Pair(i,v) => a(i) = v }
+
+ a
+ }
+
+
+ type LineStack = Stack[Array[Byte]]
+
+ def main(args: Array[String]) = {
+ val r = new BufferedReader(new InputStreamReader(System.in))
+ val w = new BufferedOutputStream(System.out)
+
+ var lines: LineStack = new Stack
+ var desc = ""
+
+ var line = r.readLine
+ while (line != null) {
+ val c = line.charAt(0)
+ if (c == '>'){
+ if (desc.length > 0){
+ complementReverseWrite(desc, lines, w)
+ lines = new Stack
+ }
+ desc = line
+ } else {
+ if (c != ';') lines += line.getBytes
+ }
+ line = r.readLine
+ }
+ r.close
+
+ if (desc.length > 0) complementReverseWrite(desc, lines, w)
+ w.close
+ }
+
+
+ def complementReverseWrite(desc: String, lines: LineStack,
+ w: BufferedOutputStream) = {
+
+ def inplaceComplementReverse(b: Array[Byte]) = {
+ var i = 0
+ var j = b.length - 1
+ while (i < j){
+ val swap = b(i)
+ b(i) = IUB( b(j) )
+ b(j) = IUB( swap )
+ i = i + 1
+ j = j - 1
+ }
+ if (i == j) b(i) = IUB( b(i) )
+ }
+
+ val nl = '\n'.toByte
+ w.write(desc.getBytes); w.write(nl)
+
+ val n = 60
+ val k = if (lines.isEmpty) 0 else lines.top.length
+ val isSplitLine = k < n
+ var isFirstLine = true
+
+ while (!lines.isEmpty) {
+ val line = lines.pop
+ inplaceComplementReverse(line)
+
+ if (isSplitLine){
+ if (isFirstLine){ w.write(line); isFirstLine = false }
+ else { w.write(line,0,n-k); w.write(nl); w.write(line,n-k,k) }
+ }
+ else { w.write(line); w.write(nl) }
+ }
+ if (isSplitLine && !isFirstLine) w.write(nl)
+ }
+
+}
diff --git a/test/pending/shootout/revcomp.scala-2.scala.runner b/test/pending/shootout/revcomp.scala-2.scala.runner
new file mode 100644
index 0000000000..f51d6170c8
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-2.scala.runner
@@ -0,0 +1,6 @@
+object Test extends Application {
+ for(n <- List(25000,250000,2500000)) {
+ System.setIn(new java.io.FileInputStream(System.getProperty("partest.cwd")+"/revcomp-input"+n+".txt"))
+ revcomp.main(Array(n.toString))
+ }
+}
diff --git a/test/pending/shootout/revcomp.scala-3.check b/test/pending/shootout/revcomp.scala-3.check
new file mode 100644
index 0000000000..14d792ade8
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-3.check
@@ -0,0 +1,171 @@
+>ONE Homo sapiens alu
+CGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAAC
+CTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACA
+GGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCAT
+GTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAA
+AGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTC
+TGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGG
+GTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACC
+ACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTG
+GTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTA
+CAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCT
+GGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTC
+TCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCCCGGCTAAT
+TTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTCGAACTCCT
+GACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCA
+CCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGC
+GCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCC
+TCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTA
+GTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGAT
+CCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCT
+TTTTGAGACGGAGTCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTC
+ACTGCAACCTCCGCCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTG
+GGATTACAGGCGCGCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGT
+TTCACCATGTTGGCCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGG
+CCTCCCAAAGTGCTGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAG
+TCTCGCTCTGTCGCCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCG
+CCTCCCGGGTTCAAGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGC
+GCGCCACCACGCCCGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGG
+CCAGGCTGGTCTCGAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGC
+TGGGATTACAGGCGTGAGCCACCGCGCCCGGCCTTTTTGAGACGGAGTCTCGCTCTGTCG
+CCCAGGCTGGAGTGCAGTGGCGCGATCTCGGCTCACTGCAACCTCCGCCTCCCGGGTTCA
+AGCGATTCTCCTGCCTCAGCCTCCCGAGTAGCTGGGATTACAGGCGCGCGCCACCACGCC
+CGGCTAATTTTTGTATTTTTAGTAGAGACGGGGTTTCACCATGTTGGCCAGGCTGGTCTC
+GAACTCCTGACCTCAGGTGATCCGCCCGCCTCGGCCTCCCAAAGTGCTGGGATTACAGGC
+GTGAGCCACCGCGCCCGGCC
+>TWO IUB ambiguity codes
+TAGGDHACHATCRGTRGVTGAGWTATGYTGCTGTCABACDWVTRTAAGAVVAGATTTNDA
+GASMTCTGCATBYTTCAAKTTACMTATTACTTCATARGGYACMRTGTTTTYTATACVAAT
+TTCTAKGDACKADACTATATNTANTCGTTCACGBCGYSCBHTANGGTGATCGTAAAGTAA
+CTATBAAAAGATSTGWATBCSGAKHTTABBAACGTSYCATGCAAVATKTSKTASCGGAAT
+WVATTTNTCCTTCTTCTTDDAGTGGTTGGATACVGTTAYMTMTBTACTTTHAGCTAGBAA
+AAGAGKAAGTTRATWATCAGATTMDDTTTAAAVAAATATTKTCYTAAATTVCNKTTRACG
+ADTATATTTATGATSADSCAATAWAGCGRTAGTGTAAGTGACVGRADYGTGCTACHVSDT
+CTVCARCSYTTAATATARAAAATTTAATTTACDAATTGBACAGTAYAABATBTGCAGBVG
+TGATGGDCAAAATBNMSTTABKATTGGSTCCTAGBTTACTTGTTTAGTTTATHCGATSTA
+AAGTCGAKAAASTGTTTTAWAKCAGATATACTTTTMTTTTGBATAGAGGAGCMATGATRA
+AAGGNCAYDCCDDGAAAGTHGBTAATCKYTBTACBGTBCTTTTTGDTAASSWTAAWAARA
+TTGGCTAAGWGRADTYACATAGCTCBTAGATAWAGCAATNGTATMATGTTKMMAGTAWTC
+CCNTSGAAWATWCAAAAMACTGAADNTYGATNAATCCGAYWNCTAACGTTAGAGDTTTTC
+ATCTGGKRTAVGAABVCTGWGBTCTDVGKATTBTCTAAGGVADAAAVWTCTAGGGGAGGG
+TTAGAACAATTAAHTAATNAAATGCATKATCTAAYRTDTCAGSAYTTYHGATRTTWAVTA
+BGNTCDACAGBCCRCAGWCRTCABTGMMAWGMCTCAACCGATRTGBCAVAATCGTDWDAA
+CAYAWAATWCTGGTAHCCCTAAGATAACSCTTAGTGSAACAWTBGTCDTTDGACWDBAAC
+HTTTNGSKTYYAAYGGATNTGATTTAARTTAMBAATCTAAGTBTCATYTAACTTADTGTT
+TCGATACGAAHGGCYATATACCWDTKYATDCSHTDTCAAAATGTGBACTGSCCVGATGTA
+TCMMAGCCTTDAAABAATGAAGAGTAACTHATMGVTTAATAACCCGGTTVSANTGCAATT
+GTGAGATTTAMGTTTAMAAYGCTGACAYAAAAAGGCACAMYTAAGVGGCTGGAABVTACG
+GATTSTYGTBVAKTATWACCGTGTKAGTDTGTATGTTTAAAGGAAAAAGTAACATARAAA
+GGTYCAMNYAAABTATAGNTSATANAGTCATCCTATWADKAACTRGTMSACDGTATSAYT
+AAHSHGTAABYGACTYTATADTGSTATAGAGAAATCGNTAAAGGAAATCAGTTGTNCYMV
+TNACDRTATBNATATASTAGAAMSCGGGANRCKKMCAAACATTNAGTCTRMAATBMTACC
+CGTACTTCTBGDSYAATWGAAAATGACADDCHAKAAAYATATTKTTTTCACANACWAGAA
+AKATCCTTATTAYKHKCTAAACARTATTTTDATBTVWCYGCAATACTAGGKAAASTTDGA
+MGGCHTTHAATVCAHDRYAGGRCTATACGTCMAGAGAGCTBTHGNACARTCCBDCTAAGA
+GCGGCTTTARTAAAGAATCCNAGTAWBTGACTTGAATTACWTVACAGAAABCAATNAAAC
+CGTNTRANTTGAYCMAWBADTANABRGGTKTHTWTAGTTVCTMBKTAGMTVKCCAGCANT
+TVAGSWTTAGCCGCRHTTTCCTTHNTATTAAGAAGAATAGGMTRAARTCTABGTACDTTT
+TATAAVDHAHTATAGATCCTAGTAAGYTWATDWCATGAGGGATAGTAAMDMNGBASTWAM
+TSTATRBAYDABATGTATATYCGCACTGTTTTAACMCWBTATAWAGTATBTSTATVTTAR
+CCTMTTAAKADATCAACTAATYTSVTAKGDATTATGCKTCAYCAKAATACTTKAANGAGT
+ATTSDAGATCGGAAATACTTAAYAAVGTATMCGCTTGTGTDCTAATYTATTTTATTTWAA
+CAGWRCTATGTAGMTGTTTGTTYKTNGTTKTCAGAACNTRACCTACKTGSRATGTGGGGG
+CTGTCATTAAGTAAATNGSTTABCCCCTCGCAGCTCWHTCGCGAAGCAVATGCKACGHCA
+ACAKTTAATAACASAAADATTWNYTGTAATTGTTCGTMHACHTWATGTGCWTTTTGAAHY
+ACTTTGTAYAMSAAACTTAADAAATATAGTABMATATYAATGSGGTAGTTTGTGTBYGGT
+TWSGSVGWMATTDMTCCWWCABTCSVACAGBAATGTTKATBGTCAATAATCTTCTTAAAC
+ARVAATHAGYBWCTRWCABGTWWAATCTAAGTCASTAAAKTAAGVKBAATTBGABACGTA
+AGGTTAAATAAAAACTRMDTWBCTTTTTAATAAAAGATMGCCTACKAKNTBAGYRASTGT
+ASSTCGTHCGAAKTTATTATATTYTTTGTAGAACATGTCAAAACTWTWTHGKTCCYAATA
+AAGTGGAYTMCYTAARCSTAAATWAKTGAATTTRAGTCTSSATACGACWAKAASATDAAA
+TGYYACTSAACAAHAKTSHYARGASTATTATTHAGGYGGASTTTBGAKGATSANAACACD
+TRGSTTRAAAAAAAACAAGARTCVTAGTAAGATAWATGVHAAKATWGAAAAGTYAHVTAC
+TCTGRTGTCAWGATRVAAKTCGCAAVCGASWGGTTRTCSAMCCTAACASGWKKAWDAATG
+ACRCBACTATGTGTCTTCAAAHGSCTATATTTCGTVWAGAAGTAYCKGARAKSGKAGTAN
+TTTCYACATWATGTCTAAAADMDTWCAATSTKDACAMAADADBSAAATAGGCTHAHAGTA
+CGACVGAATTATAAAGAHCCVAYHGHTTTACATSTTTATGNCCMTAGCATATGATAVAAG
+>THREE Homo sapiens frequency
+ATATTTATCTTTTCACTTCCTACATTGGTCAGACCATTATTCGACACGTGGCGTCATTTT
+GTCATACCGGGTAATGTTGGAAACAAAACGTACTGATAAAATACTGAGTTGTAAACTCTA
+ATCAGATAACGCGCTTGGATATTAAGATTCACACAGGGGTTTCGGCTGTAAAAAAACTTG
+TGGAGCTGTTCTGGGACAGATAAGTTGTACCTCGTACTTAGCTAATTAATGAACCAACTG
+ATTACGATAGAACAATTCTGAGGCCGCCAGGACAGCCAAATTTTAATCTTATAAAGCTGG
+AAACAGCCGGTATTAGCTTCTCGCATACTTTGCCTGCATTGGTACCTTACAGATATCAGC
+GTAGTCATATACACCTCGGTCTCAGCTAAGCTTGTATCTCTTAGAGTAGTTCAAAGATAG
+TGGACAATACCTGTGGAATCGATTGCAGATATGGATTTATTTAACTACTGAGTCTCATTC
+ACAAGCTAAGCAAGGAGCACGTTTTGGTGCCGGCATACCGATTTGCTATCATGTCAGCAA
+ATTTGCGTTGTATTCCTAGTTGCACCCATTAAGGCCACACTCCGAACCTAATTATTACAT
+CGCAAAGACATGTACGAAGGACCCGATGTCGAATAGAAGGGAGGACTGTTCATTGGAAGC
+TAGACCAGAGGAATCGCAAAGATGCAACTCTTACAATAAAAATCTAATTTCAGTCAACAC
+GCAATTTCTATAAGGTTTCCGATAATAATGAACCGTCTTCCACAGGGGAATTTGCCATGC
+TCGTAAAAGTAGTTAATCCAAGTAGAAGAAATTTTGATAATGTTTTAAGTTGGCACGAAG
+GAATTCAGAGAGATCTTACCTAACAAAGGCATTAGTAGATGTTCCTTGGTTCACACTCGG
+TCAATCAGAGCACATACTACGGGCGATACCGGGAATGACACAACATCAATGAGATTGTTA
+AGTGAGGTAATTGACTTTAGAGGACTCGATCAGTATACTGTCACTATGAACATCGTATTA
+ATTGTTATCCGATATATACACCACCGATTTGCTTGTGCAAGGTTACAGACCCATTCGATA
+AATACAAACACGGAGCGATATTATTTAAGGAGTGCTGTCTTCAAAAGAATTATTCCCACA
+CCGACATAAGAACTTCGCTCCGTCATTCCAGATTTAAATAACATAACGTAACGCTTTGCT
+GATAACATAACATAACCGAGAATTTGCTTAGGAAATTTGGAGCAATATTGCATTGTTTCT
+CAGTCATCACAAGGCCCGCCAAAGAACTCTGAGAATCAGGATTCAACATGATTGGTAAGA
+CTCTATATATATAACTTAATTCTTGTGTCCGGAGATAGAAAGAGGACGAGAGATACTACG
+AAAGAAAGTGTACTTCGATGTATCAATTCAGACGCCTTCTCTATCATCAACATTATAGGT
+CTCGTATATGCTCGGCGCGATCTGCTTCTCTCCGCCAATAGCCCCATAGTGTATTTCAAG
+CGCAGTAACAGTGAAATCGTTACGAAGGTAGGGATGTTGCTTATAATTGTCGTAACTTAT
+CGCTTATGTATCTTTCAAGAATGAACGGCAGCATATACATACGTTCTACCTTTAGCTACA
+AAGCATCCATATACTCCCTCTCATGATTGAAACTCTTCCCTATTTTGTAGCCAATAGTGA
+AAGCGTATTAGTATAAATTCGTCGGTTTTTCACTCGCAACTGTTATACTCTGCAAACAAA
+CGAAAGCCTCATAGTACAAACCTAAAGCTACATACTTCATCATTGGCAGACCAGTGGCGG
+TATTTCTACGGAAGCATCACTATAGATATAAAGTTTCCCTTCATGTACGTCTGTTAACCA
+TATCACAAGAAACTGCTATCTCTGTCACGTAACAATTCACGCGCCTTATCGCCAAATGTT
+CATATATGCGCGGTATACGTATGAACGAATACTAATTAGTATAACGGAGGATTCACGGGA
+GGGATACTTGGGGCATTTATAAATCGTCTAAAAATTTTCTATCAGCACTTGCGGGTTATA
+GTGGATTACTAGGCAACATAATATTCTGTATTGGTCCAAATGACGCTATAGATAAATTAG
+CAAAATACATTGTTTCCATTTATGTAAGTCGAAACTCCAGGACTCCCGGGAACCAGTTAA
+ACCGTCTGGAAAAGACACATTGTGAGCGGGACTTCAATGATAGCTTTCAATGAGCTTCTC
+ATGCTTGGGGTCTGTACATATATGTTGGCGAAATTATCGTCTGTATTCTGTTATGCTTTG
+ATCATGGGTTATTAGTATAGTGTCCGGTTAAGTACCAATACCGCTAGAGACCCGACCTAA
+GTCGATAACTAACGATCATCGACGTAAGGATCGTCTCGATCAGTACTTCAGTCTAGATCT
+GGGAATAGTAACTCGTTAGTGAACTATGTCGTGTCATAACTCTAAAATGCAATCAAATCT
+TATTATTGAGTATTGATTATATAAAGCATCCGCTTAGCTTTACCCTCAAATGTTATATGC
+AATTTAAAGCGCTTGATATCGTCTACTCAAGTTCAGGTTTCACATGGCCGCAACGTGACG
+TTATTAGAGGTGGGTCATCATCTCTGAGGCTAGTGATGTTGAATACTCATTGAATGGGAA
+GTGGAATACCATGCTCGTAGGTAACAGCATGACCTATAAAATATACTATGGGTGTGTGGT
+AGATCAATATTGTTCAAGCATATCGTAACAATAACGGCTGAAATGTTACTGACATGAAAG
+AGGGAGTCCAAACCATTCTAACAGCTGATCAAGTCGTCTAAAAACGCCTGGTTCAGCCTT
+AAGAGTTATAAGCCAGACAAATTGTATCAATAGAGAATCCGTAAATTCCTCGGCCAACCT
+CTTGCAAAGACATCACTATCAATATACTACCGTGATCTTAATTAGTGAACTTATATAAAT
+ATCTACAACCAGATTCAACGGAAAAGCTTTAGTGGATTAGAAATTGCCAAGAATCACATT
+CATGTGGGTTCGAATGCTTTAGTAATACCATTTCGCCGAGTAGTCACTTCGCTGAACTGT
+CGTAAATTGCTATGACATAATCGAAAAGGATTGTCAAGAGTCGATTACTGCGGACTAATA
+ATCCCCACGGGGGTGGTCTCATGTCTCCCCAGGCGAGTGGGGACGGTTGATAAACACGCT
+GCATCGCGGACTGATGTTCCCAGTATTACATAGTCACATTGGATTGCGAGTAGTCTACCT
+ATTTATGAGCGAGAGATGCCTCTAACTACTTCGACTTTTAAAACCTTTCCACGCCAGTAT
+TCGGCGAAAGGGAAGTATTAAGGGTTGTCATAATTAAGCTGATACCACTTCAGACTTTGC
+TCTACTTCTGTCTTTCATTGGTTTAGTAAAGTCTGTCCATTCGTCGAGACCGTCTTTTGC
+AGCCTCATTCTACCAACTGCTCCGACTCTTAGTCTGCTTCTCCCAGCGTTATAACAAGAG
+GCATTTTGTCATCCTTAAAACAATAATAAAGAACTCGGAGCACTGATATAATGACTGAAT
+TAGAACCGCTTAAAAATACAACGAATAGATAAGACTATCGGATAAGATCTAATATGTAGT
+GATTAAGCCCTTTATTAATTAATAATAGTTACCCTTTCTGATGTAACGCGACATATTACG
+ATTTAGTGGCACGTCTGAATTGCAAAGCAGATCTCTACCCGATTTTTATTATAAATCCCG
+TATACATCTTGACTTGAGTAATTGTTCATCTTTTTATATCTCTTCGTACTACAAATAATT
+AATATCTCAACCCGTATTGTGTGATTCTAATTACCAACAGAATACGAGGAGGTTTTTGCT
+TAGGGCCATATATAATGAATCTATCTCGTTTATTCGCGGAACCCGAGATAACATTACGAT
+GTAACTATTTTAGAGAACTTAATACAAGAAACATTGCTGATTACTCATAACTAAATGCTT
+GGTAATATATCCTCAGTGCCCCTACCATCTTTTACGCAGGGATGTAATTACTTAGGATTC
+ATTGTGTAAGAATTACAATGAACGATGGATATGAAGGCATGTTGCGAGGTGTTCCTTGGT
+ATGTGAAGTTCGCAGGGCAACAAAAATTTCGCAGAATAGGCCTCAAAGTATTGGTAAAGA
+AGACAACTAATCATCACGAGCTTCTGATATCAATACGAACGAGTCCTGTGATGGATGAAA
+GAAAGTCGTATCGAAAATGTCAAGAGTCTGCCCAATGTAACTTACTTCAAAAAATAACGC
+TTCCGCCAAGTACGTTCGAATAAACGTAATTTTAAAAATACATAAGGGGTGTTAGAAAGT
+AAGCGACGGGATATAAGTTAGACTCAAGATTCCGCCGTAAAACGAGACTGATTCCGAAGA
+TTGTTCGTGGATCTGGTCATGACTTTCACTGAGTAAGGAGTTTCGACATATGTCAATAAA
+CACAAAAATAGAAGCTATTCGATCTGAAAAATATTAGGACAAGAAACTATCTCACGCTAG
+CCCAGAATATTCACTCACCCACGGGCGATACTAAAGCACTATATAGTCGCGTGATTACTA
+TACATATGGTACACATAAGAATCACGATCAGGTTCTCAATTTTCAACAATATATGTTTAT
+TTGCATAGGTAATATTAGGCCTTTAAGAGAAGGATGGGTGAGATACTCCGGGGATGGCGG
+CAATAAAGAAAAACACGATATGAGTAATAGGATCCTAATATCTTGGCGAGAGACTTAAGG
+TACGAATTTTGCGCAATCTATTTTTTACTTGGCCAGAATTCATGTATGGTATAAGTACGA
+ACTTTTTTGATCACTTTCATGGCTACCTGATTAGGATAGTTTGAGGAATTTCCCAAATAT
+ACCGATTTAATATACACTAGGGCTTGTCACTTTGAGTCAGAAAAAGAATATAATTACTTA
+GGGTAATGCTGCATACATATTCTTATATTGCAAAGGTTCTCTGGGTAATCTTGAGCCTTC
+ACGATACCTGGTGAAGTGTT
diff --git a/test/pending/shootout/revcomp.scala-3.scala b/test/pending/shootout/revcomp.scala-3.scala
new file mode 100644
index 0000000000..ae12f0499b
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-3.scala
@@ -0,0 +1,147 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy
+*/
+
+import java.io._
+import scala.collection.mutable.Stack
+
+object revcomp {
+ def main(args: Array[String]) = {
+ val out = new FastaOutputStream(System.out)
+ val in = new FastaInputStream(System.in)
+
+ out.writeReverseComplement( in.readSequenceStack )
+ out.writeReverseComplement( in.readSequenceStack )
+ out.writeReverseComplement( in.readSequenceStack )
+
+ in.close
+ out.close
+ }
+}
+
+
+trait FastaByteStream {
+ val nl = '\n'.toByte
+
+ type Line = Array[Byte]
+ type LineStack = Stack[Line]
+}
+
+
+// extend the Java BufferedInputStream class
+
+final class FastaInputStream(in: InputStream)
+ extends BufferedInputStream(in) with FastaByteStream {
+
+ val gt = '>'.toByte
+ val sc = ';'.toByte
+
+ def readSequenceStack(): Pair[Line,LineStack] = {
+ var header: Line = null
+ val lines: LineStack = new Stack
+
+ var line = readLine()
+ while (line != null) {
+ val c = line(0)
+ if (c == gt){ // '>'
+ if (header == null){
+ header = line
+ } else {
+ pos = pos - line.length - 1 // reposition to start of line
+ return Pair(header,lines)
+ }
+ } else {
+ if (c != sc) lines push line // ';'
+ }
+ line = readLine()
+ }
+ return Pair(header,lines)
+ }
+
+ def readLine() = {
+ var bytes: Line = null
+ if (in == null) bytes
+ else {
+ mark(128) // mark the start of the line
+ if (count == 0) read() // fill buffer
+
+ var i = markpos
+ while (i < count && buf(i) != nl) i = i + 1
+
+ if (i >= count){ // line extends past end of buffer
+ pos = i; read(); i = pos; // fill buffer again
+ while (i < count && buf(i) != nl) i = i + 1
+ }
+
+ if (i < count){
+ bytes = new Array(i - markpos)
+ System.arraycopy(buf, markpos, bytes, 0, i - markpos);
+ pos = i+1
+ }
+ }
+ bytes
+ }
+}
+
+
+// extend the Java BufferedOutputStream class
+
+final class FastaOutputStream(in: OutputStream)
+ extends BufferedOutputStream(in) with FastaByteStream {
+
+ private val IUB = IUBCodeComplements
+
+ private def IUBCodeComplements() = {
+ val code = "ABCDGHKMNRSTVWYabcdghkmnrstvwy".getBytes
+ val comp = "TVGHCDMKNYSABWRTVGHCDMKNYSABWR".getBytes
+ val iub: Array[Byte] = new Array( 'z'.toByte )
+
+ for (indexValue <- code zip comp)
+ indexValue match { case Pair(i,v) => iub(i) = v }
+
+ iub
+ }
+
+ def writeReverseComplement(sequence: Pair[Line,LineStack]) = {
+
+ def inplaceComplementReverse(b: Array[Byte]) = {
+ var i = 0
+ var j = b.length - 1
+ while (i < j){
+ val swap = b(i)
+ b(i) = IUB( b(j) )
+ b(j) = IUB( swap )
+ i = i + 1
+ j = j - 1
+ }
+ if (i == j) b(i) = IUB( b(i) )
+ }
+
+ sequence match {
+ case Pair(header,lines) => {
+
+ write(header); write(nl)
+
+ val k = if (lines.isEmpty) 0 else lines.top.length
+ val LineLength = 60
+ val isSplitLine = k < LineLength
+ var isFirstLine = true
+
+ while (!lines.isEmpty) {
+ val line = lines.pop
+ inplaceComplementReverse(line)
+
+ if (isSplitLine){
+ if (isFirstLine){ write(line); isFirstLine = false }
+ else { write(line,0,LineLength-k); write(nl); write(line,LineLength-k,k) }
+ }
+ else { write(line); write(nl) }
+ }
+
+ if (isSplitLine && !isFirstLine) write(nl)
+ }
+ }
+ }
+
+}
diff --git a/test/pending/shootout/revcomp.scala-3.scala.runner b/test/pending/shootout/revcomp.scala-3.scala.runner
new file mode 100644
index 0000000000..f51d6170c8
--- /dev/null
+++ b/test/pending/shootout/revcomp.scala-3.scala.runner
@@ -0,0 +1,6 @@
+object Test extends Application {
+ for(n <- List(25000,250000,2500000)) {
+ System.setIn(new java.io.FileInputStream(System.getProperty("partest.cwd")+"/revcomp-input"+n+".txt"))
+ revcomp.main(Array(n.toString))
+ }
+}
diff --git a/test/pending/shootout/sieve.scala b/test/pending/shootout/sieve.scala
new file mode 100644
index 0000000000..b494980ee4
--- /dev/null
+++ b/test/pending/shootout/sieve.scala
@@ -0,0 +1,43 @@
+/* The Computer Language Shootout
+ http://shootout.alioth.debian.org/
+ contributed by Isaac Gouy (Scala novice)
+*/
+
+object sieve {
+ def main(args: Array[String]) = {
+ var n = toPositiveInt(args);
+ val start = 2;
+ val stop = 8192;
+ val isPrime = new Array[Boolean](stop+1);
+ var count: Int = 0;
+
+ while (n>0) {
+ count = 0;
+
+ for (i <- Iterator.range(start,stop+1))
+ isPrime(i)=true;
+
+ for (i <- Iterator.range(start,stop+1)) {
+ if( isPrime(i) ) {
+ var k = i+i;
+ while (k<=stop) { isPrime(k)=false; k=k+i; }
+ count = count+1;
+ }
+ }
+ n=n-1;
+ }
+
+ Console.println("Count: " + count);
+ }
+
+
+ private def toPositiveInt(s: Array[String]) = {
+ val i =
+ try { Integer.parseInt(s(0)); }
+ catch { case _ => 1 }
+ if (i>0) i; else 1;
+ }
+}
+
+
+
diff --git a/test/pending/shootout/sieve.scala.runner b/test/pending/shootout/sieve.scala.runner
new file mode 100644
index 0000000000..893c3abe90
--- /dev/null
+++ b/test/pending/shootout/sieve.scala.runner
@@ -0,0 +1,3 @@
+object Test extends Application {
+ for(n <- List(300,600,900,1200)) sieve.main(Array(n.toString))
+}
diff --git a/test/scaladoc/scala/IndexTest.scala b/test/scaladoc/scala/IndexTest.scala
index 7679bab0c6..2d731643da 100644
--- a/test/scaladoc/scala/IndexTest.scala
+++ b/test/scaladoc/scala/IndexTest.scala
@@ -16,7 +16,7 @@ object Test extends Properties("Index") {
val morepaths = Thread.currentThread.getContextClassLoader.getParent.asInstanceOf[URLClassLoader].getURLs.map(_.getPath)
(paths ++ morepaths).mkString(java.io.File.pathSeparator)
}
-
+
val docFactory = {
val settings = new doc.Settings({Console.err.println(_)})
@@ -27,9 +27,9 @@ object Test extends Properties("Index") {
new doc.DocFactory(reporter, settings)
}
-
+
val indexModelFactory = doc.model.IndexModelFactory
-
+
def createIndex(path: String): Option[Index] = {
val maybeUniverse = {
diff --git a/test/scaladoc/scala/html/HtmlFactoryTest.scala b/test/scaladoc/scala/html/HtmlFactoryTest.scala
index f265ddc8cf..9d40996799 100644
--- a/test/scaladoc/scala/html/HtmlFactoryTest.scala
+++ b/test/scaladoc/scala/html/HtmlFactoryTest.scala
@@ -229,7 +229,7 @@ object Test extends Properties("HtmlFactory") {
case _ => false
}
}
-
+
property("Trac #4420 - no whitespace at end of line") = {
val files = createTemplates("Trac4420.scala")
@@ -247,7 +247,7 @@ object Test extends Properties("HtmlFactory") {
val lines = """
|type Bar = AnyRef { type Dingus <: T forSome { type T <: String } }
|type Foo = AnyRef { ... /* 3 definitions in type refinement */ }
- |def g (x: T forSome { type T <: String }): String
+ |def g (x: T forSome { type T <: String }): String
|def h (x: Float): AnyRef { def quux(x: Int,y: Int): Int }
|def hh (x: Float): AnyRef { def quux(x: Int,y: Int): Int }
|def j (x: Int): Bar
diff --git a/test/support/annotations/NestedAnnotations.java b/test/support/annotations/NestedAnnotations.java
index 8f2327dcce..c4a98a0af3 100644
--- a/test/support/annotations/NestedAnnotations.java
+++ b/test/support/annotations/NestedAnnotations.java
@@ -10,14 +10,14 @@ public class NestedAnnotations {
@OuterAnno(inner=@InnerAnno(name="inner"))
String field;
-
- @Target({FIELD})
+
+ @Target({FIELD})
@Retention(RUNTIME)
public static @interface InnerAnno {
String name();
}
-
- @Target({FIELD})
+
+ @Target({FIELD})
@Retention(RUNTIME)
public static @interface OuterAnno {
InnerAnno inner();