Skip to content
GitLab
Projects Groups Snippets
  • /
  • Help
    • Help
    • Support
    • Community forum
    • Submit feedback
    • Contribute to GitLab
  • Sign in
  • asm asm
  • Project information
    • Project information
    • Activity
    • Labels
    • Members
  • Repository
    • Repository
    • Files
    • Commits
    • Branches
    • Tags
    • Contributors
    • Graph
    • Compare
  • Issues 2
    • Issues 2
    • List
    • Boards
    • Service Desk
    • Milestones
  • Merge requests 0
    • Merge requests 0
  • CI/CD
    • CI/CD
    • Pipelines
    • Jobs
    • Schedules
  • Deployments
    • Deployments
    • Environments
    • Releases
  • Packages and registries
    • Packages and registries
    • Container Registry
  • Monitor
    • Monitor
    • Incidents
  • Analytics
    • Analytics
    • Value stream
    • CI/CD
    • Repository
  • Wiki
    • Wiki
  • Snippets
    • Snippets
  • Activity
  • Graph
  • Create a new issue
  • Jobs
  • Commits
  • Issue Boards
Collapse sidebar
  • asmasm
  • asmasm
  • Issues
  • #317586
Closed
Open
Issue created Sep 18, 2015 by jemr@jemr

VerifyError caused by LocalVariablesSorter

The LocalVariablesSorter will sometimes produce incorrect frames causing verification error.

The following method, when compiled with the eclipse compiler, will cause VerifyError, if run through the 
LocalVariablesSorter:

  void sample() throws Exception {
    try (BufferedReader reader = new BufferedReader(new StringReader("1\n2\n3\n4\n"))) {
      String line;
      while ((line = reader.readLine()) != null) {
        int columnidx = 0;
        Integer.parseInt(line);
      }
    }    
  }

the above with "Bad local variable type", if commenting out the parseInt line, then with: "Inconsistent stackmap frames"

It seems the "changed" flag in the LocalVariablesSorter isn't set, even though something is remapped?

See attached zip for sample (includes .class files as compiled with eclipse compiler).
Assignee
Assign to
Time tracking