Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Fixes testBug519493_003 - module binding on class symbol #612

Open
wants to merge 437 commits into
base: dom-with-javac
Choose a base branch
from
Open
Changes from 1 commit
Commits
Show all changes
437 commits
Select commit Hold shift + click to select a range
c341229
fix review comments
gayanper May 17, 2024
a6b5cee
DOMToIndex: restore statements
mickaelistria May 17, 2024
217b56c
fill in record components in record declaration
gayanper May 17, 2024
9c40eb0
Report Javadoc problems as warnings for most severe
akurtakov May 17, 2024
f00a7a6
[DOM based index] Prevent some deadlock
mickaelistria May 21, 2024
b07f300
Fix JavacMethodBinding for non-DOM references
mickaelistria May 21, 2024
829691f
Endless loop - nextToken() is identical for ever and ever
May 10, 2024
4c2cbe0
Fix for test0126 - String[] v[] not represented correctly when part o…
May 10, 2024
e89a377
Fix for test0126 - String v[] not represented correctly when part of …
May 10, 2024
057906d
Fix for test0314 - String v[] has off-by-one error
May 10, 2024
08c80e6
Partial Fix for test0321 - new Object[][] has off-by-one error in dim…
May 10, 2024
96e8219
Partially fix testBug531714_015 - switch(i) { case 1 -> list } needs …
May 14, 2024
8322825
Fix testBug519493_002 - TypeParameter needs a type binding
May 14, 2024
ac16c23
Add support for Module Binding
May 15, 2024
fb61014
Fix testTypeBindingMethods - type binding parameters are wrong
May 15, 2024
b64d549
Fix testBug526534_0001 - class cast exception
May 15, 2024
25697bf
Fix testBug519493_006 - module binding
May 16, 2024
539fb49
Fix testBug519493_005 - type binding needs access to module
May 16, 2024
f67805e
More work on JavacModuleBinding regarding key and annotations
May 20, 2024
ede9ff1
partial fix to testBug497719_0001 - modifiers missing on try with res…
May 21, 2024
3ebc452
Fix ASTConverter15JLS4Test.test0140 dom portion
May 21, 2024
7d8998c
Fix ASTConverter15JLS4Test.test0140 binding portion
May 21, 2024
034040f
[javac] More binding fixes
datho7561 May 21, 2024
dd14fc7
Handle version javadoc tag conversion
akurtakov May 22, 2024
e511e80
Set problem severity according to JDT settings
mickaelistria May 22, 2024
a3ef333
Support comment in Javadoc conversion
akurtakov May 23, 2024
d37a2cb
Support @value javadoc inline tag
akurtakov May 23, 2024
59ffdb0
[javac] adjust diagnostic range for error targetting method
snjeza May 23, 2024
4f27610
Process project deps sourcepath and classpath
mickaelistria May 23, 2024
2ad702f
Do not convert compiler.warn.dangling.doc.comment
akurtakov May 23, 2024
7c923c8
Add formatter settings
akurtakov May 24, 2024
4a5e99b
Ensure single instances of each binding
mickaelistria May 24, 2024
3076a15
MethodBinding fix related to JLS compliance, QualifiedName fix
datho7561 May 23, 2024
cd55191
Some improvements to JavacBindingResolver
mickaelistria May 27, 2024
e8964e2
Remove refs to AbstractUnnamedTypeDeclaration
mickaelistria May 27, 2024
2421f73
Some fix in JavacMethodBinding->IMethod resolution
mickaelistria May 27, 2024
5496575
Improve some binding->element resolution
mickaelistria May 27, 2024
cda3089
Don't use scanner tokens if the diagnostic length is non-zero
datho7561 May 27, 2024
64f1674
[Jenkins] Avoid crashing build on test failure
mickaelistria May 28, 2024
0a84f2c
Use Java 23 as latest with more consistency
akurtakov May 28, 2024
5c47e74
improve comment/javadoc positions
mickaelistria May 28, 2024
dac7021
Fix typo
mickaelistria May 29, 2024
2d5a0ba
Fix ASTConverter15JLS8Test.test0002 - method binding for annotation type
May 22, 2024
10bbd41
Fix test0026 in ASTConverter15JLS8Test
May 22, 2024
540cbf7
Fix test0027 in ASTConverter15JLS8Test
May 22, 2024
e6d3bbc
Fix remainder of test0022 in ASTConverter15JLS8Test
May 22, 2024
a1b5323
Fixes test0464 - check for null type
May 28, 2024
c12019c
Flags must be persisted when creating AST, see test0673
May 28, 2024
bf9fdca
Replace compliance/source/target 1.8 by 8
mickaelistria May 29, 2024
e3da160
Fix NPE
mickaelistria May 29, 2024
9c2b883
Set offset for permits clause
datho7561 May 29, 2024
4b151a4
Fix conversion of text blocks
datho7561 May 29, 2024
5c19f34
Fix bug in permits clause offset handling
datho7561 May 29, 2024
f663db7
Prevent StackOverflow when adjusting error ranges using tokens
datho7561 May 29, 2024
f2dad79
collect parameters as visible bindings (#400)
gayanper May 29, 2024
24ddb7e
[Releng] Force qualifier to start with `z`
mickaelistria May 29, 2024
56fe19e
Fix contructor->IMethod resolution
mickaelistria May 30, 2024
d89daeb
Avoid errors related to source versions vs preview
mickaelistria May 30, 2024
19a4bdb
Fix test0391 - typeBinding getQualifiedName for arrays
May 29, 2024
57d3ac0
Don't add null convertToType result to lists
fbricon May 31, 2024
2908b7a
Some convert/binding fixes
mickaelistria May 30, 2024
db391d5
Fix some positions for Javadoc
mickaelistria May 31, 2024
d1f542a
Fix test0292 - resolving a name to a type binding
May 31, 2024
3bba1c5
Fix testRecordConstructor001
May 30, 2024
84ca38c
Prevent StackOverflow in 'add missing methods'
datho7561 May 31, 2024
79037de
add some dom fixes while syntax errors
gayanper Jun 4, 2024
f7297d4
Collapse overlapping variable decls into one statement
datho7561 Jun 3, 2024
ad985be
Fix some tests
mickaelistria Jun 3, 2024
0afff2a
Fix testBug534009 - binding stuff
May 23, 2024
d95be8f
Further progress on unimplemented resolve and parse
May 28, 2024
7039bf0
Improve EnumDeclaration conversion
mickaelistria Jun 4, 2024
041076f
Declaring class should be null for local variables
datho7561 Jun 5, 2024
26433a3
Bump pom versions
mickaelistria Jun 8, 2024
2821e44
fix NPE due the jcVariableDecl.vartype being null
gayanper Jun 8, 2024
13f78ce
Fix npe in javac binding resolver
gayanper Jun 8, 2024
c9c1619
Fix NPE at variable type binding when syntax errors
gayanper Jun 9, 2024
985e298
Fix source range calculation when syntax errors exist
gayanper Jun 9, 2024
c4e778c
Use reflection to access the Javadoc offset
datho7561 Jun 7, 2024
bfbca4e
Fix type annotation binding resolution
gayanper Jun 10, 2024
36e3835
Fix bug in getting segments of packagebinding
datho7561 Jun 5, 2024
de341ab
Prevent IllegalArgumentException when adjusting unclosed string range
datho7561 Jun 10, 2024
c193335
Fix getExceptionTypes for JavacMethodBinding
datho7561 Jun 10, 2024
d08dcac
Fix type resolution in method parameter binding
gayanper Jun 9, 2024
cf08c6e
Wrap parse of each compilation unit in try/catch
datho7561 Jun 7, 2024
df0fd51
Handle another corner case for QualifiedName
datho7561 Jun 11, 2024
1689681
Fix binding bug with qualified names
datho7561 Jun 11, 2024
bb74cc2
Resolve parent parameterized type binding when available
mickaelistria Jun 12, 2024
31d1bd2
Handle some ArrayInitializer DOM conversion and bindings
datho7561 Jun 11, 2024
eaabb33
Fix some new array dimensions
mickaelistria Jun 12, 2024
f4991d4
Implement the extension point
Jun 12, 2024
d8ae47a
Fix modifiers for interface method bindings
mickaelistria Jun 12, 2024
c08ba4f
Fix some binding.toString()
mickaelistria Jun 13, 2024
86e3791
Improve dimensions
mickaelistria Jun 13, 2024
5f84d30
workaround some endPos issue, support any expr in try-resourecs
mickaelistria Jun 13, 2024
1a16cd9
Convert SuperMethodReference
mickaelistria Jun 13, 2024
f257695
Fix some VariableBinding.getVariableId()
mickaelistria Jun 13, 2024
4e55034
Resolve type for cast expression
mickaelistria Jun 13, 2024
bc172db
Force Javac to proceed the build process despite compilation errors
testforstephen Jun 13, 2024
a041b87
Adjust source range for this constructor invocation
datho7561 Jun 13, 2024
9abbcc9
Handle SingleVariableDeclaration with trailing [][][]
datho7561 Jun 13, 2024
b343300
Use Type.flatName to compute binding key
mickaelistria Jun 14, 2024
f653bc5
Fix some impls in JavacTypeBinding
mickaelistria Jun 14, 2024
9b04138
Improve how we lookup methods
mickaelistria Jun 14, 2024
e1491e9
Fix infix expression representation in dom tree
Jun 14, 2024
f0ad551
Fix isRecovered for annotation bindings
datho7561 Jun 14, 2024
6eb8f0b
Use most specific node when building the javac -> JDT map
datho7561 Jun 13, 2024
8bc5364
Multiple improvements to DOM-based completion
gayanper May 18, 2024
86879ca
Pass --add-exports from classpath to javac
mickaelistria Jun 17, 2024
1584ec7
Use CancelableNameEnvironment when there is a project.
datho7561 Jun 17, 2024
0131cad
Fix various javadoc ranges
mickaelistria Jun 18, 2024
9efa3b4
Do not resolve bindings on non-original ast nodes
datho7561 Jun 18, 2024
b047fb1
Implement finding implementation node by binding key
datho7561 Jun 18, 2024
d0f6e95
Adopt the new option to enable alternative compiler
testforstephen Jun 19, 2024
4ab3e06
Fix AIOOBE in diagnostic adjustment
datho7561 Jun 19, 2024
1182e7e
Resolve javadoc bindings
mickaelistria Jun 19, 2024
08c23df
Some more Javadoc fixes
mickaelistria Jun 20, 2024
d705987
On some syntax errors, name is missing, leading to blown stack
Jun 18, 2024
03de686
Some tests require binding.getSuperClass() to return null when superc…
Jun 18, 2024
2a7b260
Suspicious workaround: test0232 and 8 others require no binding for a…
Jun 18, 2024
8a37070
Fix 7 errors, convert 7 errors to failures; don't use stub empty block
Jun 20, 2024
566ecbd
Always resolve primative literals as their primative type
datho7561 Jun 20, 2024
55f2553
Fix test test0334 - multi-dimensional arrays source ranges
Jun 20, 2024
4470857
Fix some ranges
mickaelistria Jun 21, 2024
46493ee
Fixes test0360 - for( int i=0,j=0,k=0; etc) does not have preferred dom
Jun 21, 2024
d4fa0b1
Fix test0386 - switchCase has wrong source range
Jun 21, 2024
fcb2fab
Extract SwitchCase logic to own method
Jun 21, 2024
cbbef36
Fix multiple tests where a difference of void return vs null return w…
Jun 21, 2024
c696c40
Enable annotation processing in Javac compiler (#519)
testforstephen Jun 24, 2024
3065f79
Honor compilerOption JavaCore.COMPILER_DOC_COMMENT_SUPPORT
mickaelistria Jun 24, 2024
4931def
test0447 - Dom tree match better for some invalid syntax files
Jun 24, 2024
2a9220f
Fix test0463 - string literal with octal codes in it
Jun 24, 2024
9ffeadf
Better support for non-Javadoc comments
mickaelistria Jun 24, 2024
0383d61
Preference Declaration node in findDeclaringNode
mickaelistria Jun 25, 2024
23c60b7
Prevent NPE in JavacMethodBinding.findJavaElement()
mickaelistria Jun 25, 2024
071fecc
[WIP] replace ASTRequestor.compilationUnitResolver with a new interface
datho7561 Jun 17, 2024
8b11cbe
[WIP] get the tests that use the feature to work
datho7561 Jun 17, 2024
e0785f6
[WIP] create array bindings if they don't exist
datho7561 Jun 18, 2024
117fe6f
[WIP] fix compilation issues
datho7561 Jun 18, 2024
c10f8cd
[WIP] clean up the code and add docs
datho7561 Jun 18, 2024
39cf693
[WIP] another code simplification
datho7561 Jun 18, 2024
a07d8a7
[WIP] switch over to use a Function instead of a bespoke interface
datho7561 Jun 25, 2024
4b996d0
Fixes to key -> binding resolver
mickaelistria Jun 25, 2024
96142b2
Include working copies when parsing in toCompilationUnit()
datho7561 Jun 20, 2024
6d42592
Do not set recipient for annotations on formal parameters
datho7561 Jun 20, 2024
a3cade0
Fix typeMismatch problem conversion
mickaelistria Jun 27, 2024
2271a73
Adjust some parameterized vs raw vs generic binding
mickaelistria Jun 27, 2024
f71b960
Improvements to `@snippet` Javadoc
datho7561 Jun 27, 2024
874b328
Increase target version when javac cannot downcompile to specified ve…
datho7561 Jun 25, 2024
95d76c8
Fix "Add unimplemented methods" QuickFix
datho7561 Jun 27, 2024
fbbe7c7
Improve support for TypeMismatch error
mickaelistria Jun 27, 2024
f4ba98e
Add error code for uncaught checked exception
datho7561 Jun 28, 2024
8827c15
Fix the "remove abstract keywiord" and "remove body" quickfixes
datho7561 Jun 27, 2024
33350ae
refresh javac output to make sure Java project system recognize the o…
testforstephen Jun 26, 2024
1d655c5
Support more problem types
mickaelistria Jul 1, 2024
e273396
Pass XDOCLINT compiler option
mickaelistria Jun 30, 2024
7d50f2a
Some fixes in problem conversion
mickaelistria Jul 1, 2024
a2d3793
Un-static JavacProblem converter
mickaelistria Jul 2, 2024
c730adb
Fix problem position
mickaelistria Jul 2, 2024
4ec71f5
Fix various binding and problem conversion issues
mickaelistria Jul 2, 2024
aa3e0f0
Fix JavacTypeBinding.isAssignementCompatible
mickaelistria Jul 2, 2024
d29ec24
Use recovered method symbol
datho7561 Jun 27, 2024
e4d4c47
Fix "add default serial uuid" for inner classes
datho7561 Jul 3, 2024
68c01b9
fix NPE due to module names expressions being null
gayanper Jul 3, 2024
6862ffb
Fix some "wrong type" quick fixes
datho7561 Jul 3, 2024
b4f4adc
Fix regression caused by #558
datho7561 Jul 4, 2024
538a03a
fix prefixed numeric literal identification
gayanper Jul 4, 2024
69f829d
Translate some more error codes
datho7561 Jul 4, 2024
da0d690
Fix the regression of rename type quickfix
datho7561 Jul 3, 2024
6c10fa0
Fix "change visibility" for types with parameters
datho7561 Jul 3, 2024
0ddbf7f
Allow to get full AST in JavacProblemConverter
mickaelistria Jul 4, 2024
f51d2ba
Handle erroneous method types in expression binding
datho7561 Jul 5, 2024
72c42f1
add support for static field imports binding resolution.
gayanper Jul 6, 2024
ece1453
Update doc to JavacCompilerFactory
mickaelistria Jul 8, 2024
6a25f45
add import required proposal for type completions
gayanper Jul 7, 2024
ee9d5e8
Improve type completion inside expressions
gayanper Jul 7, 2024
9c909b4
Support ErrorType for methods
mickaelistria Jul 8, 2024
45716fd
Fix isNested for type parameters
datho7561 Jun 26, 2024
0662a68
Fix bindingResolver for unresolved method
mickaelistria Jul 9, 2024
41b766c
Fix diagnostic position for ParameterMismatch
mickaelistria Jul 9, 2024
6961fe7
Map some more javadoc problems
mickaelistria Jul 9, 2024
bb76440
support annotation completions
gayanper Jul 9, 2024
69d2871
Fix TypeMismatch vs ParameterMismatch
mickaelistria Jul 9, 2024
b5f4ffd
Populate the compiled types and reference info to the CompilationResu…
testforstephen Jul 10, 2024
4726656
Swith javac to Java 23
akurtakov Jul 8, 2024
e782b58
Map more pb
mickaelistria Jul 10, 2024
5b66133
Run tests on Java 23
akurtakov Jul 10, 2024
b83e9d2
[WIP] do not use recovered bindings when performing code select
datho7561 Jul 9, 2024
56047be
Jenkins javac tests should run java 23 profile
akurtakov Jul 10, 2024
d38144d
Various fixes to get a "extract method" quickfix working
datho7561 Jul 10, 2024
7cb70eb
Map some more pb
mickaelistria Jul 11, 2024
e6bfcdb
Fix error ranges and ids for "superclass lacks noargs constructor"
datho7561 Jul 11, 2024
c0cdc98
More problem mapping for modifiers
mickaelistria Jul 12, 2024
db15bbf
More modifiers problem mapping
mickaelistria Jul 15, 2024
e081f84
Better map illegal combination of modifiers
mickaelistria Jul 15, 2024
edb6a42
include enum literal annotations
gayanper Jul 14, 2024
c25bdbb
include annotation modifiers for record components
gayanper Jul 14, 2024
f42cba6
Fix NPE in getJavaElement for JavacVariableBinding
datho7561 Jul 15, 2024
ef7bc79
Run more tests with Java 23
akurtakov Jul 15, 2024
779a10f
Do not use errorneous recovered types
datho7561 Jul 15, 2024
9c99fcc
Fixes for modifier quickfixes
datho7561 Jul 11, 2024
068f540
Some support for anonymous TypeBinding.getJavaElement()
mickaelistria Jul 17, 2024
581e444
Fix ASTConverterTest.test0295 and others: an incorrect key when missi…
Jul 17, 2024
80988e1
Clean up trailing semicolons in some cases
Jul 17, 2024
5fc1178
Convert a visibility problem message
Jul 17, 2024
25eb89d
Fix error id for "annot param must be constant"
datho7561 Jul 17, 2024
457382e
Fixes test0470 - trailing semicolon should not be in source range
Jul 17, 2024
22ca78e
Fix methodBinding.getJavaElement() with varargs
mickaelistria Jul 18, 2024
ec93d5d
Forward workingCopyOwner to JavacBindingResolver
mickaelistria Jul 18, 2024
3b65935
improve completion on variable declaration to avoid $error$ binding c…
gayanper Jul 16, 2024
39308ae
improve how method and variable positions names are resolved (#597)
gayanper Jul 19, 2024
28f5219
Improve support for "var" in lambda params and bindings
mickaelistria Jul 19, 2024
44167cf
Fix quickfix for private abstract method in interface
datho7561 Jul 19, 2024
0e8d1a5
Fixed setting ASTNode.ORIGINAL on CompilationUnit
mickaelistria Jul 20, 2024
fec0b77
Improve diag mapping for unresolved
mickaelistria Jul 20, 2024
d102737
add diagnostics for module related errors
gayanper Jul 20, 2024
1f9ff01
add basic module-info file completions
gayanper Jul 20, 2024
75254dd
Add impl JavacTypeBinding.getJavaElement() for parameterized types
mickaelistria Jul 21, 2024
622f18e
Set the type root for some units where it wasn't yet
datho7561 Jun 12, 2024
485a0ca
Improve handling of "supercontructor not defined" problems
datho7561 Jul 22, 2024
0527fb9
Translate error code `compiler.err.expected4`
datho7561 Jul 22, 2024
3c49e72
Fix for `JavacTypeBinding.getWildcard()`
datho7561 Jul 22, 2024
3b8bed3
problemids for extends interface and implements non-interface
datho7561 Jul 23, 2024
ab81ee4
Fix some bugs requiring == for multiple resolutions on a node (#621)
robstryker Jul 23, 2024
533692a
Prevent NPE when collecting bindings by key
datho7561 Jul 24, 2024
3bd2fca
Fix for `JavacTypeBinding.getTypeArguments`
datho7561 Jul 22, 2024
85319ea
Report "unused ..." diagnostics (#623)
testforstephen Jul 25, 2024
042dcad
Map 1 more problem
mickaelistria Jul 25, 2024
0aadcc3
Fix some wildcard TypeBinding bound resolution
mickaelistria Jul 25, 2024
43af106
Fix Javac->DOM method name conversion for missing return type
mickaelistria Jul 25, 2024
3b629ff
Fix 2 problem ids
datho7561 Jul 25, 2024
1015232
Address the regressions (NPEs) caused by new `getTypeArgument()`
datho7561 Jul 25, 2024
9c4238f
Fix JavacTypeBinding.getTypeBound for wildcard
mickaelistria Jul 25, 2024
d740670
Map some more pb
mickaelistria Jul 25, 2024
0ca1b13
Some more attempts to fix getBounds for wildcards
mickaelistria Jul 26, 2024
ff26736
Still improvement to JavacTypeBinding.getBound()
mickaelistria Jul 26, 2024
4010fca
Various minor fixes
mickaelistria Jul 26, 2024
fe45c12
Fix resolveTypeBinding for `new ...`
mickaelistria Jul 26, 2024
7c3ab28
Fix diagnostic position for TypeMismatch with fieldAccess
mickaelistria Jul 26, 2024
1977911
Cleanup unused code in JavacConverter
mickaelistria Jul 26, 2024
9ce71e2
Better support mapping multi-field declaration in enums
mickaelistria Jul 26, 2024
06e224a
Interface have no superclass
Jul 26, 2024
0adcae5
Anonymous classes have no superclass
Jul 26, 2024
ee2dacd
Better implementation for JavacTypeBinding.getTypeParameters()
mickaelistria Jul 26, 2024
c0d50ff
Fix error range for @Override on non-inherited method
datho7561 Jul 26, 2024
ccbbec8
fix random completion errors including #634
gayanper Jul 27, 2024
d1f814c
Map some more problems
mickaelistria Jul 27, 2024
e6b9727
Fix ASTConverter_GuardedPattern_Test.testGuardedPattern001
akurtakov Jul 29, 2024
3cd2c1c
Move problem messaging mappings to test bundle
Jul 26, 2024
0a724af
Add way to getJavaElement for working copy files, and fix several
Jul 26, 2024
72837e7
Fixes testBug519493_003 - module binding on class symbol
Jul 19, 2024
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Prev Previous commit
Next Next commit
Fix testBug519493_002 - TypeParameter needs a type binding
Signed-off-by: Rob Stryker <stryker@redhat.com>
  • Loading branch information
Rob Stryker authored and akurtakov committed Jul 29, 2024
commit 8322825f833f1782efb15e558118acc6a567c817
Original file line number Diff line number Diff line change
@@ -37,6 +37,7 @@
import com.sun.tools.javac.code.Symbol.VarSymbol;
import com.sun.tools.javac.code.Types;
import com.sun.tools.javac.tree.JCTree;
import com.sun.tools.javac.tree.JCTree.JCTypeParameter;
import com.sun.tools.javac.tree.JCTree.JCArrayTypeTree;
import com.sun.tools.javac.tree.JCTree.JCClassDecl;
import com.sun.tools.javac.tree.JCTree.JCPackageDecl;
@@ -198,6 +199,14 @@ ITypeBinding resolveType(AnonymousClassDeclaration anonymousClassDecl) {
}
return null;
}
ITypeBinding resolveTypeParameter(TypeParameter typeParameter) {
resolve();
JCTree javacNode = this.converter.domToJavac.get(typeParameter);
if (javacNode instanceof JCTypeParameter jcClassDecl) {
return new JavacTypeBinding(jcClassDecl.type, this);
}
return null;
}

public IBinding getBinding(final Symbol owner, final com.sun.tools.javac.code.Type type) {
if (owner instanceof final PackageSymbol other) {
Original file line number Diff line number Diff line change
@@ -566,6 +566,7 @@ private AbstractTypeDeclaration convertClassDecl(JCClassDecl javacClassDecl, AST

private TypeParameter convert(JCTypeParameter typeParameter) {
final TypeParameter ret = new TypeParameter(this.ast);
commonSettings(ret, typeParameter);
final SimpleName simpleName = new SimpleName(this.ast);
simpleName.internalSetIdentifier(typeParameter.getName().toString());
int start = typeParameter.pos;