[ 
https://issues.apache.org/jira/browse/LANG-1524?focusedWorklogId=517697&page=com.atlassian.jira.plugin.system.issuetabpanels:worklog-tabpanel#worklog-517697
 ]

ASF GitHub Bot logged work on LANG-1524:
----------------------------------------

                Author: ASF GitHub Bot
            Created on: 29/Nov/20 23:23
            Start Date: 29/Nov/20 23:23
    Worklog Time Spent: 10m 
      Work Description: aakashgupta96 commented on pull request #657:
URL: https://github.com/apache/commons-lang/pull/657#issuecomment-735474553


   @garydgregory I agree that the problem is coming only because TypeUtils 
Class is trying to display the information of type parameters too. 
   Java as language allows having type parameters on inner nested classes too, 
but we surely can't display type information in these scenarios where we have 
circular reference.
   
   Both IntelliJ and Eclipse don't show type information for the classes and 
hence they never go in that cyclic loop which java as language supports. 


----------------------------------------------------------------
This is an automated message from the Apache Git Service.
To respond to the message, please log on to GitHub and use the
URL above to go to the specific comment.

For queries about this service, please contact Infrastructure at:
us...@infra.apache.org


Issue Time Tracking
-------------------

    Worklog Id:     (was: 517697)
    Time Spent: 3h  (was: 2h 50m)

> TypeUtils.toString StackOverflowError for an inner class in the inner class 
> parameterized enclosing class.
> ----------------------------------------------------------------------------------------------------------
>
>                 Key: LANG-1524
>                 URL: https://issues.apache.org/jira/browse/LANG-1524
>             Project: Commons Lang
>          Issue Type: Bug
>          Components: lang.reflect.*
>    Affects Versions: 3.9
>            Reporter: kijong.youn
>            Priority: Major
>          Time Spent: 3h
>  Remaining Estimate: 0h
>
> StackOverflowError occurred on toString for an inner class in the inner class 
> parameterized enclosing class.
>  
> source:
> {code:java}
> public class Test<T extends Inner> {
>   public static class Inner {
>   }
>   public static void main(final String[] args) {
>     System.out.println(TypeUtils.toString(Inner.class));
>   }
> } {code}
> result:
> {code:java}
> Exception in thread "main" java.lang.StackOverflowErrorException in thread 
> "main" java.lang.StackOverflowError at 
> java.lang.Class.getEnclosingMethodInfo(Class.java:1072) at 
> java.lang.Class.getEnclosingClass(Class.java:1272) at 
> org.apache.commons.lang3.reflect.TypeUtils.classToString(TypeUtils.java:1751) 
> at org.apache.commons.lang3.reflect.TypeUtils.toString(TypeUtils.java:1663) 
> at org.apache.commons.lang3.reflect.TypeUtils.toString(TypeUtils.java:1891) 
> at 
> org.apache.commons.lang3.reflect.TypeUtils.appendAllTo(TypeUtils.java:1882) 
> at 
> org.apache.commons.lang3.reflect.TypeUtils.typeVariableToString(TypeUtils.java:1775)
>  at org.apache.commons.lang3.reflect.TypeUtils.toString(TypeUtils.java:1672) 
> at org.apache.commons.lang3.reflect.TypeUtils.toString(TypeUtils.java:1891) 
> at 
> org.apache.commons.lang3.reflect.TypeUtils.appendAllTo(TypeUtils.java:1882) 
> at 
> org.apache.commons.lang3.reflect.TypeUtils.classToString(TypeUtils.java:1758) 
> at 
> org.apache.commons.lang3.reflect.TypeUtils.classToString(TypeUtils.java:1752)
> ...{code}
>  



--
This message was sent by Atlassian Jira
(v8.3.4#803005)

Reply via email to