aboutsummaryrefslogtreecommitdiff
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
...
* | | Names are no longer SeqsMartin Odersky2017-04-1116-139/+124
| | | | | | | | | | | | | | | | | | | | | | | | Drop Seq implementation of name. This implementation was always problematic because it entailed potentially very costly conversions to toSimpleName. We now have better control over when we convert a name to a simple name.
* | | Run compileStdLib only as junit testMartin Odersky2017-04-111-1/+3
| | | | | | | | | | | | It fails without any test output in partest
* | | Cleanups of NameOpsMartin Odersky2017-04-116-100/+15
| | | | | | | | | | | | Remove unused functionality
* | | Make outer select names semanticMartin Odersky2017-04-119-24/+27
| | |
* | | Make module var names semanticMartin Odersky2017-04-115-25/+5
| | |
* | | Avoid duplicate hashCode/equalsMartin Odersky2017-04-113-5/+4
| | |
* | | Fix dropModule logicMartin Odersky2017-04-112-3/+3
| | |
* | | Fix ParallelTesting NPEMartin Odersky2017-04-111-1/+2
| | |
* | | Make field names semanticMartin Odersky2017-04-114-22/+12
| | |
* | | Make "direct names" semanticMartin Odersky2017-04-114-5/+7
| | |
* | | Revise qualified namesMartin Odersky2017-04-118-87/+63
| | | | | | | | | | | | | | | 1. Fix problem in fullNameSeparated 2. Revise expandedName operations
* | | Fix inner class name table emission with semantic namesGuillaume Martres2017-04-111-1/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | The backend contains: val outerName = innerClassSym.rawowner.javaBinaryName // Java compatibility. See the big comment in BTypes that summarizes the InnerClass spec. val outerNameModule = if (innerClassSym.rawowner.isTopLevelModuleClass) outerName.dropModule Where `dropModule` is defined in the backend interface as: def dropModule: Name = n.stripModuleClassSuffix This will only work as expected if `javaBinaryName` returns a name with proper semantic information, but before this commit we just used the output of `fullNameSeparated` which contains no semantic information.
* | | New unmangling for ExpandedNameMartin Odersky2017-04-113-45/+40
| | |
* | | Decentralize unmangling, add new nameKindsMartin Odersky2017-04-1110-58/+62
| | | | | | | | | | | | | | | | | | | | | Start scheme where unmangling is done by NameKinds instead of in NameOps. Also add namekinds for protected accessors.
* | | Fix rebase breakageMartin Odersky2017-04-111-0/+1
| | |
* | | Rename NameExtractor -> NameKindMartin Odersky2017-04-1134-123/+121
| | |
* | | Make freshName semanticMartin Odersky2017-04-1128-173/+244
| | |
* | | Redefine definesNewNameMartin Odersky2017-04-113-8/+18
| | | | | | | | | | | | | | | | | | | | | Make it a method of info instead of a convention over tags, because it's less fragile that way. Also, add UniqueName extractor.
* | | Add ShadowedName and AvoidClashNameMartin Odersky2017-04-1111-32/+26
| | |
* | | Streamline pickling and unpickling of namesMartin Odersky2017-04-113-24/+18
| | |
* | | Get rid of SuperAccessor flagMartin Odersky2017-04-1112-17/+23
| | |
* | | Get rid of ExpandedName flagMartin Odersky2017-04-1120-48/+57
| | |
* | | Fix PrefixNameExtractor mkStringMartin Odersky2017-04-111-1/+3
| | |
* | | Drop Config.semanticNames optionMartin Odersky2017-04-1111-185/+97
| | | | | | | | | | | | | | | We now handle only semantic names. Also, name extractor tags and TASTY name tags are now aligned.
* | | Add missing fileMartin Odersky2017-04-111-0/+148
| | |
* | | Eliminate TastyNamesMartin Odersky2017-04-1111-219/+107
| | |
* | | Add NameExtractorsMartin Odersky2017-04-119-202/+90
| | | | | | | | | | | | | | | Use a new scheme for creating and accessing semantic names which is based on semantic name extractors with nested info classes.
* | | Don't forget ExpandedName when unpickling SuperAccessorsMartin Odersky2017-04-111-1/+1
| | |
* | | Fix to fieldName for trait settersMartin Odersky2017-04-111-1/+1
| | |
* | | Properly integrate TraitSetter namesMartin Odersky2017-04-113-13/+28
| | |
* | | Fix testMartin Odersky2017-04-111-1/+1
| | |
* | | Semantic SuperAccessor and Initializer namesMartin Odersky2017-04-116-58/+122
| | |
* | | Turn on semantic namesMartin Odersky2017-04-111-1/+1
| | |
* | | Add Variant NameInfoMartin Odersky2017-04-1111-21/+42
| | | | | | | | | | | | Plus further bug fixes.
* | | Add default getter namesMartin Odersky2017-04-119-57/+169
| | | | | | | | | | | | Plus various bug fixes and filling in missing functionality
* | | Handle expansion and flatteningMartin Odersky2017-04-1112-49/+131
| | |
* | | PolishingsMartin Odersky2017-04-114-38/+47
| | |
* | | Bug fixesMartin Odersky2017-04-1112-65/+115
| | | | | | | | | | | | nameddefaults.scala now compiles without crashing
* | | Implement startsWith/encode/decode for derived names.Martin Odersky2017-04-115-18/+34
| | |
* | | Disentangle Names from SeqsMartin Odersky2017-04-1110-83/+71
| | | | | | | | | | | | | | | | | | | | | | | | | | | Structured names are not Seqs anymmore. But the Seq behavior is required in many places that mangle names. As an intermediate step we drop the Seq basetype but add Seq behavior through a decorator. Most Seq operations only work on SimpleTermNames and their TypeName analogue, will throw an exception wehn called on structured names.
* | | Use system hashcode for all names except SimpleTermNamesMartin Odersky2017-04-111-4/+2
| | | | | | | | | | | | Keep start as a hash for SimpleTermNames because it distributed better.
* | | Fix typos and redundant statements in previous commitsMartin Odersky2017-04-113-6/+2
| | |
* | | Deug info in classfile parserMartin Odersky2017-04-111-1/+8
| | |
* | | Unmangle class names in ClassfileParserMartin Odersky2017-04-111-1/+1
| | |
* | | Self-checked structured qualified namesMartin Odersky2017-04-111-4/+27
| | | | | | | | | | | | | | | | | | This is a temporary step. If semanticNames is true we construct structured qualified names, but check they have the same string representation as the unstructured names.
* | | Start to use structured ModuleNamesMartin Odersky2017-04-114-8/+31
| | | | | | | | | | | | Subject to flags Config.semanticNames.
* | | Fix handling of qualified namesMartin Odersky2017-04-112-19/+42
| | | | | | | | | | | | | | | These always construct a new name, other derivations should not commute with Qualified.
* | | Fix @sharable problemMartin Odersky2017-04-111-1/+1
| | |
* | | Add derived name machineryMartin Odersky2017-04-113-11/+114
| | | | | | | | | | | | Add machinery to define and hash cons derived names.
* | | Cleanup of simple namesMartin Odersky2017-04-111-45/+39
| | | | | | | | | | | | | | | Reduce # of creation methods and make TypeNames simple derived names from TermNames.