Depending on if the package was declared in source, or found on the classpath, packages can be encoded differently in TASTy
Compiler version
3.1.1
Minimized code
Example 1
If we compile this file with a clean classpath, then in TASTy we will have a package declaration for symbollic_>>
package symbollic_>>
class ::
If we instead compile the file to out, then recompile the file with out on the classpath, we will have a package declaration in TASTy for symbollic_$greater$greater.
Example 2
with example 1 from a prior compilation on the classpath, compile the following:
class Bar:
println(new symbollic_>>.::())
in TASTy all references to symbollic_>>.:: are listed as symbollic_$greater$greater.::, i.e. only the package name got encoded
Expectation
Edit: we should always see encoded unencoded package names in TASTy.
Depending on if the package was declared in source, or found on the classpath, packages can be encoded differently in TASTy
Compiler version
3.1.1
Minimized code
Example 1
If we compile this file with a clean classpath, then in TASTy we will have a package declaration for
symbollic_>>If we instead compile the file to
out, then recompile the file withouton the classpath, we will have a package declaration in TASTy forsymbollic_$greater$greater.Example 2
with example 1 from a prior compilation on the classpath, compile the following:
in TASTy all references to
symbollic_>>.::are listed assymbollic_$greater$greater.::, i.e. only the package name got encodedExpectation
Edit: we should always see
encodedunencoded package names in TASTy.