{
  "_class" : "hudson.matrix.MatrixRun",
  "actions" : [
    {
      
    },
    {
      "_class" : "hudson.model.CauseAction",
      "causes" : [
        {
          "_class" : "hudson.model.Cause$UpstreamCause",
          "shortDescription" : "Started by upstream project \"gluegen\" build number 797",
          "upstreamBuild" : 797,
          "upstreamProject" : "gluegen",
          "upstreamUrl" : "job/gluegen/"
        }
      ]
    },
    {
      
    },
    {
      "_class" : "hudson.plugins.git.util.BuildData",
      "buildsByBranchName" : {
        "origin/master" : {
          "_class" : "hudson.plugins.git.util.Build",
          "buildNumber" : 797,
          "buildResult" : None,
          "marked" : {
            "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
            "branch" : [
              {
                "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
                "name" : "origin/master"
              }
            ]
          },
          "revision" : {
            "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
            "branch" : [
              {
                "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
                "name" : "origin/master"
              }
            ]
          }
        }
      },
      "lastBuiltRevision" : {
        "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
        "branch" : [
          {
            "SHA1" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
            "name" : "origin/master"
          }
        ]
      },
      "remoteUrls" : [
        "git://jogamp.org/srv/scm/gluegen.git"
      ],
      "scmName" : ""
    },
    {
      "_class" : "hudson.plugins.git.GitTagAction"
    },
    {
      
    },
    {
      "_class" : "hudson.tasks.junit.TestResultAction",
      "failCount" : 0,
      "skipCount" : 0,
      "totalCount" : 181,
      "urlName" : "testReport"
    },
    {
      "_class" : "org.jenkinsci.plugins.displayurlapi.actions.RunDisplayAction"
    }
  ],
  "artifacts" : [
    
  ],
  "building" : False,
  "description" : None,
  "displayName" : "#797",
  "duration" : 120388,
  "estimatedDuration" : 398097,
  "executor" : None,
  "fullDisplayName" : "gluegen » windows-x86_64 #797",
  "id" : "2014-06-18_05-12-47",
  "inProgress" : False,
  "keepLog" : False,
  "number" : 797,
  "queueId" : -1,
  "result" : "SUCCESS",
  "timestamp" : 1403061167000,
  "url" : "https://jogamp.org/chuck/view/on%20server/job/gluegen/label=windows-x86_64/797/",
  "builtOn" : "win64-nvgtx460-win7-jogamp-x64-sgothel-011",
  "changeSet" : {
    "_class" : "hudson.plugins.git.GitChangeSetList",
    "items" : [
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/FunctionEmitter.java"
        ],
        "commitId" : "775ec79d5d719c1eba9c4687ae066f6b82696e4f",
        "timestamp" : 1400457795000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: avoid a suppressed warning annotation by using the ArrayList copy constructor\u000a\u000aclone() can't be used without warnigns and is no more efficient that the copy constructor,\u000areplace the call and kill the suppressed warning annotation.  While here, mark the\u000amodifier list as private final.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-18T17:03:15-0700",
        "id" : "775ec79d5d719c1eba9c4687ae066f6b82696e4f",
        "msg" : "gluegen: avoid a suppressed warning annotation by using the ArrayList",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/FunctionEmitter.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/FunctionEmitter.java"
        ],
        "commitId" : "5a9bee7ad9085cfd71053041aff3cabce2325f22",
        "timestamp" : 1400457823000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: remove an unreferenced writer variable\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-18T17:03:43-0700",
        "id" : "5a9bee7ad9085cfd71053041aff3cabce2325f22",
        "msg" : "gluegen: remove an unreferenced writer variable",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/FunctionEmitter.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/jgram/Test.java",
          "src/java/com/jogamp/gluegen/jgram/JavaParser.g"
        ],
        "commitId" : "b8d85c035bbd2d6fa8a37f957bcf80acab18015e",
        "timestamp" : 1400458520000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: update antlr grammer to produce annotated enum and functionName sets\u000a\u000aThe annotations are all commented out, uncomment them and reduce the type warnings\u000aduring the build.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-18T17:15:20-0700",
        "id" : "b8d85c035bbd2d6fa8a37f957bcf80acab18015e",
        "msg" : "gluegen: update antlr grammer to produce annotated enum and functionName",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/jgram/Test.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/jgram/JavaParser.g"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/jgram/JavaParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g",
          "src/java/com/jogamp/gluegen/cgram/GnuCParser.g",
          "src/java/com/jogamp/gluegen/cgram/GnuCEmitter.g",
          "make/build.xml",
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCParser.g",
          "src/main/antlr/com/jogamp/gluegen/jgram/JavaParser.g",
          "src/java/com/jogamp/gluegen/cgram/StdCParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/StdCParser.g",
          "src/java/com/jogamp/gluegen/cgram/HeaderParser.g",
          "src/java/com/jogamp/gluegen/cgram/GnuCTreeParser.g"
        ],
        "commitId" : "e8bc9edd3c39170af038ab23b8cdca9ffd6f2d56",
        "timestamp" : 1401593948000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: move all antlr grammars to a top-level directory\u000a\u000a/src/main/antlr/..\u000a\u000aThis gets the .g files unmixed from the non-generated java files for the cgram/jgram packages.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-31T20:39:08-0700",
        "id" : "e8bc9edd3c39170af038ab23b8cdca9ffd6f2d56",
        "msg" : "gluegen: move all antlr grammars to a top-level directory",
        "paths" : [
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/cgram/GnuCParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/jgram/JavaParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/cgram/GnuCTreeParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/StdCParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/cgram/HeaderParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g"
          },
          {
            "editType" : "edit",
            "file" : "make/build.xml"
          },
          {
            "editType" : "add",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/cgram/StdCParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/jgram/JavaParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/java/com/jogamp/gluegen/cgram/GnuCEmitter.g"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/build.xml"
        ],
        "commitId" : "0e54f57338e888e9835069776de32dcb47c54a17",
        "timestamp" : 1401595145000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: pair the grammer input folder with an out.dir value\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-31T20:59:05-0700",
        "id" : "0e54f57338e888e9835069776de32dcb47c54a17",
        "msg" : "gluegen: pair the grammer input folder with an out.dir value",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/build.xml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/build.xml"
        ],
        "commitId" : "38e34f378a97f3653ad160e49677a005b6f7a32f",
        "timestamp" : 1401597961000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: update the target names for generating java code\u000a\u000aAlso move the antlr-wrapping targets to be near the one place they are used.\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-31T21:46:01-0700",
        "id" : "38e34f378a97f3653ad160e49677a005b6f7a32f",
        "msg" : "gluegen: update the target names for generating java code",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/build.xml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.java",
          "src/java/com/jogamp/gluegen/GlueEmitter.java",
          "src/java/com/jogamp/gluegen/cgram/CToken.java",
          "src/java/com/jogamp/gluegen/DebugEmitter.java",
          "src/java/com/jogamp/gluegen/cgram/TNodeFactory.java"
        ],
        "commitId" : "d6a5fa9169cc3f7abdb7a23068ddd76f632eec26",
        "timestamp" : 1401599305000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: remove some unused imports\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-31T22:08:25-0700",
        "id" : "d6a5fa9169cc3f7abdb7a23068ddd76f632eec26",
        "msg" : "gluegen: remove some unused imports",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/GlueEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/procaddress/ProcAddressJavaMethodBindingEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/DebugEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/CToken.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/TNodeFactory.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g",
          "src/java/com/jogamp/gluegen/GlueGen.java"
        ],
        "commitId" : "5d802fb8dd4004039d4597253712d24fffb90a36",
        "timestamp" : 1401599321000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
          "fullName" : "Harvey Harrison"
        },
        "authorEmail" : "harvey.harrison@gmail.com",
        "comment" : "gluegen: update HeaderParser grammar to annotation EnumType map and functions list\u000a\u000aSigned-off-by: Harvey Harrison <harvey.harrison@gmail.com>\u000a",
        "date" : "2014-05-31T22:08:41-0700",
        "id" : "5d802fb8dd4004039d4597253712d24fffb90a36",
        "msg" : "gluegen: update HeaderParser grammar to annotation EnumType map and",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/GlueGen.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/JavaType.java",
          "src/java/com/jogamp/gluegen/JavaEmitter.java"
        ],
        "commitId" : "d3e2cd6432b3383d4589350d60170e02db469343",
        "timestamp" : 1402867006000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "JavaEmitter.typeToJavaType: Simplify if-else block ; JavaType.getDumpString(): Add more info ..\u000a",
        "date" : "2014-06-15T23:16:46+0200",
        "id" : "d3e2cd6432b3383d4589350d60170e02db469343",
        "msg" : "JavaEmitter.typeToJavaType: Simplify if-else block ;",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaType.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/native/common/JVMUtil.c",
          "make/scripts/setenv-build-jogl-x86_64.sh",
          "make/scripts/setenv-build-jogl-x86.sh",
          "src/java/com/jogamp/common/os/DynamicLibraryBundle.java"
        ],
        "commitId" : "56a22f2937c334320637557ef6cd9b38c4b03022",
        "timestamp" : 1402953313000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Minor edits: space, final qualifier; setenv-build-*: Add generic JDK location\u000a",
        "date" : "2014-06-16T23:15:13+0200",
        "id" : "56a22f2937c334320637557ef6cd9b38c4b03022",
        "msg" : "Minor edits: space, final qualifier; setenv-build-*: Add generic JDK",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/os/DynamicLibraryBundle.java"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/setenv-build-jogl-x86.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/native/common/JVMUtil.c"
          },
          {
            "editType" : "edit",
            "file" : "make/scripts/setenv-build-jogl-x86_64.sh"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/common/util/IOUtil.java",
          "src/java/com/jogamp/common/util/ReflectionUtil.java"
        ],
        "commitId" : "9d857ea3575ee263801741a95711d9214c156276",
        "timestamp" : 1402953411000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "ReflectionUtil.getConstructor: Add 'initializeClazz' argument, allowing to defer static class initialization\u000a",
        "date" : "2014-06-16T23:16:51+0200",
        "id" : "9d857ea3575ee263801741a95711d9214c156276",
        "msg" : "ReflectionUtil.getConstructor: Add 'initializeClazz' argument, allowing",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/IOUtil.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/common/util/ReflectionUtil.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/JavaEmitter.java",
          "make/scripts/runtest.sh",
          "src/java/com/jogamp/gluegen/JavaConfiguration.java",
          "src/java/com/jogamp/gluegen/JavaType.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c",
          "src/java/com/jogamp/gluegen/CMethodBindingEmitter.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h",
          "src/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java",
          "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java"
        ],
        "commitId" : "c3054a01990e55ab35756ea23ab7d7c05f24dd37",
        "timestamp" : 1402954528000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GlueGen: Add support for 'compound call-by-value', i.e. passing and returning struct instance\u000a\u000a'compound call-by-value' is not efficient.\u000a\u000aHowever, to allow mapping APIs utilizing passing small structs\u000aas arguments and return values - this feature has been added.\u000a\u000a+++\u000a\u000aTo return the struct value, native code needs to\u000aallocate a NIO ByteBuffer and copy the data.\u000aThe stack return value can be dismissed afterwards and the\u000aNIO buffer is returned.\u000a\u000aWe include this functionality for all generated [impl] classes,\u000anative method:\u000a  'static jobject JVMUtil_NewDirectByteBufferCopy(JNIEnv *env, void * source_address, jlong capacity)'\u000a\u000a  (See: 'JavaEmitter.initClassAccessCode')\u000a\u000aSince this code requires knowledge of java classes and methods,\u000afor which a reference needs to be acquired, a static initialization method\u000ahas been introduced for all generated [impl] classes:\u000a  'private static native boolean initializeImpl();'\u000a\u000aPer default the this method will be called in the new\u000astatic initializer block of the class,\u000awhich can be supressed via the configuration element:\u000a   'ManualStaticInit <class-name>'\u000a\u000a'ManualStaticInit' can be used to issue the 'initializeImpl()'\u000acall in a custom static initializer written by the user.\u000a\u000aHowever, at the time 'initializeImpl()' gets called\u000athe JNI native library must have been loaded, of course!\u000a\u000a+++\u000a\u000a- See tag: // FIXME: Compound call-by-value\u000a  for code changes and validation of completeness\u000a\u000aTrigger for compond call-by-value in CMethodBindingEmitter is:\u000a   !cArgType.isPointer() && javaArgType.isCompoundTypeWrapper()\u000a\u000aTrigger for compond call-by-value in JavaEmitter is:\u000a  t.isCompound()\u000a\u000a+++\u000a\u000aFurther more we do tolerate 'javaType.isCPrimitivePointerType()',\u000ai.e. adding comments for offset/size and field entries,\u000awhich are all NOP.\u000a\u000aThis allows to utilize the remaining fields of the native structure.\u000a\u000a+++\u000a\u000aTests: Added call-by-value to test1.[ch] binding test!\u000a",
        "date" : "2014-06-16T23:35:28+0200",
        "id" : "c3054a01990e55ab35756ea23ab7d7c05f24dd37",
        "msg" : "GlueGen: Add support for 'compound call-by-value', i.e. passing and",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/scripts/runtest.sh"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/Test1p1JavaEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/Test1p2ProcAddressEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/CMethodBindingEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaConfiguration.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCParser.g",
          "src/main/antlr/com/jogamp/gluegen/jgram/JavaParser.g",
          "src/antlr/com/jogamp/gluegen/cgram/StdCParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g",
          "src/antlr/com/jogamp/gluegen/jgram/JavaParser.g",
          "src/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g",
          "src/main/antlr/com/jogamp/gluegen/cgram/StdCParser.g",
          "src/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g",
          "src/antlr/com/jogamp/gluegen/cgram/GnuCParser.g",
          "src/antlr/com/jogamp/gluegen/cgram/HeaderParser.g"
        ],
        "commitId" : "33eb9484c4675423431521f2271e3e9d8d38f3b2",
        "timestamp" : 1402960769000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "gluegen: move all antlr grammars to a top-level directory (refine commit e8bc9edd3c39170af038ab23b8cdca9ffd6f2d56): src/antlr (IMHO no need for 'main')\u000a\u000a/src/main/antlr/ -> /src/antlr/\u000a",
        "date" : "2014-06-17T01:19:29+0200",
        "id" : "33eb9484c4675423431521f2271e3e9d8d38f3b2",
        "msg" : "gluegen: move all antlr grammars to a top-level directory (refine commit",
        "paths" : [
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/StdCParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/cgram/StdCParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCTreeParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/cgram/GnuCParser.g"
          },
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/jgram/JavaParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/HeaderParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/jgram/JavaParser.g"
          },
          {
            "editType" : "delete",
            "file" : "src/main/antlr/com/jogamp/gluegen/cgram/GnuCEmitter.g"
          },
          {
            "editType" : "add",
            "file" : "src/antlr/com/jogamp/gluegen/cgram/HeaderParser.g"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "make/build.xml"
        ],
        "commitId" : "1ee6e77f731b1254792ecd23c8f4b6a8affc6375",
        "timestamp" : 1402960794000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "complete commit 33eb9484c4675423431521f2271e3e9d8d38f3b2\u000a",
        "date" : "2014-06-17T01:19:54+0200",
        "id" : "1ee6e77f731b1254792ecd23c8f4b6a8affc6375",
        "msg" : "complete commit 33eb9484c4675423431521f2271e3e9d8d38f3b2",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "make/build.xml"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/junit/com/jogamp/common/util/TestVersionSemantics.java"
        ],
        "commitId" : "a75276408c9bcff77f568cf72b6c71e421a07552",
        "timestamp" : 1402960828000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "TestVersionSemantics: No more expecting BACKWARD_COMPATIBLE* (Due to bumping to 2.2.0)\u000a",
        "date" : "2014-06-17T01:20:28+0200",
        "id" : "a75276408c9bcff77f568cf72b6c71e421a07552",
        "msg" : "TestVersionSemantics: No more expecting BACKWARD_COMPATIBLE* (Due to",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/common/util/TestVersionSemantics.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/MethodBinding.java",
          "src/java/com/jogamp/gluegen/cgram/types/ArrayType.java",
          "src/java/com/jogamp/gluegen/JavaEmitter.java",
          "src/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java",
          "src/java/com/jogamp/gluegen/JavaType.java",
          "src/java/com/jogamp/gluegen/CMethodBindingEmitter.java",
          "src/java/com/jogamp/gluegen/FunctionEmitter.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c",
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h",
          "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java",
          "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java",
          "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
        ],
        "commitId" : "f4e753ff1f39be381307ffdb0fb6bb7a2d323eff",
        "timestamp" : 1402979196000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GlueGen: Add support for 'compound array call-by-value'\u000a\u000aCompleting commit c3054a01990e55ab35756ea23ab7d7c05f24dd37\u000aby allowing passing compound arrays via 'call-by-value.\u000a\u000a - Creating linear temp heap, copying NIO values into it\u000a   and passing to C function.\u000a   Copy-back if not 'const', see below.\u000a\u000a - Respect 'const' qualifier to skip write-back of\u000a   temp heap passed to C function\u000a\u000a - See tag: // FIXME: Compound and Compound-Arrays\u000a   for code changes and validation of completeness\u000a\u000a - triggers for compound arrays are:\u000a     - javaType.isArrayOfCompoundTypeWrappers()\u000a     - type.isArray()\u000a\u000a - simplified const query by c-type: FunctionEmitter.isBaseTypeConst(ctype)\u000a\u000a+++\u000a\u000aTests: Added call-by-value to test1.[ch] binding test!\u000a",
        "date" : "2014-06-17T06:26:36+0200",
        "id" : "f4e753ff1f39be381307ffdb0fb6bb7a2d323eff",
        "msg" : "GlueGen: Add support for 'compound array call-by-value'",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/CMethodBindingEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/FunctionEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/MethodBinding.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/procaddress/ProcAddressEmitter.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/FunctionType.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/cgram/types/ArrayType.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h",
          "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java",
          "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java",
          "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c"
        ],
        "commitId" : "9843e983a4fc71a64eb3de9cb364a1f4ffa56b3a",
        "timestamp" : 1403031942000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "Fix commit f4e753ff1f39be381307ffdb0fb6bb7a2d323eff: 'compound array call-by-value' JavaMethodBindingEmitter, array may still require NIO handling, also consider NIO array length.\u000a",
        "date" : "2014-06-17T21:05:42+0200",
        "id" : "9843e983a4fc71a64eb3de9cb364a1f4ffa56b3a",
        "msg" : "Fix commit f4e753ff1f39be381307ffdb0fb6bb7a2d323eff: 'compound array",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/BaseClass.java"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.h"
          },
          {
            "editType" : "edit",
            "file" : "src/junit/com/jogamp/gluegen/test/junit/generation/test1.c"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaMethodBindingEmitter.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/JavaConfiguration.java",
          "src/java/com/jogamp/gluegen/JavaEmitter.java"
        ],
        "commitId" : "1eadaf928f4f61aae4de1c8bf33c5b77bdfa882f",
        "timestamp" : 1403041748000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GlueGen: Refine compound [array] call-by-value native code injection and initialization\u000a\u000aFollow-up of commit 9843e983a4fc71a64eb3de9cb364a1f4ffa56b3a\u000a\u000aOnly add static initialization code (java, native)\u000aand hence native code 'JVMUtil_NewDirectByteBufferCopy(..)'\u000aif either required _or_ forced via configuration.\u000a\u000aThis shall reduce possible sideffects\u000aand dead code.\u000a\u000aAdd JavaConfiguration:\u000a\u000a/**\u000a * Returns true if the static initialization java code calling <code>initializeImpl()</code>\u000a * for the given class will be manually implemented by the end user\u000a * as requested via configuration directive <code>ManualStaticInitCall 'class-name'</code>.\u000a */\u000apublic boolean manualStaticInitCall(String clazzName);\u000a\u000a/**\u000a * Returns true if the static initialization java code implementing <code>initializeImpl()</code>\u000a * and the native code implementing:\u000a * <pre>\u000a *   static jobject JVMUtil_NewDirectByteBufferCopy(JNIEnv *env, void * source_address, jlong capacity);\u000a * </pre>\u000a * for the given class will be included in the generated code, always,\u000a * as requested via configuration directive <code>ForceStaticInitCode 'class-name'</code>.\u000a * <p>\u000a * If case above code has been generated, static class initialization is generated\u000a * to call <code>initializeImpl()</code>, see {@link #manualStaticInitCall(String)}.\u000a * </p>\u000a */\u000apublic boolean forceStaticInitCode(String clazzName);\u000a",
        "date" : "2014-06-17T23:49:08+0200",
        "id" : "1eadaf928f4f61aae4de1c8bf33c5b77bdfa882f",
        "msg" : "GlueGen: Refine compound [array] call-by-value native code injection and",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaConfiguration.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaEmitter.java"
          }
        ]
      },
      {
        "_class" : "hudson.plugins.git.GitChangeSet",
        "affectedPaths" : [
          "src/java/com/jogamp/gluegen/MethodBinding.java",
          "src/java/com/jogamp/gluegen/JavaEmitter.java"
        ],
        "commitId" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
        "timestamp" : 1403048798000,
        "author" : {
          "absoluteUrl" : "https://jogamp.org/chuck/user/sven%20gothel",
          "fullName" : "Sven Gothel"
        },
        "authorEmail" : "sgothel@jausoft.com",
        "comment" : "GlueGen: Refine compound [array] call-by-value native code injection and initialization\u000a\u000aFollow-up of commit 1eadaf928f4f61aae4de1c8bf33c5b77bdfa882f\u000a\u000a- Refine MethodBinding detection for 'requiresStaticInitialization',\u000a  i.e. return type is a \"compound type\" and not a pointer\u000a\u000a- JVMUtil_NewDirectByteBufferCopy: Throw FatalError if initializeImpl() has not been called\u000a",
        "date" : "2014-06-18T01:46:38+0200",
        "id" : "2f6586292cd298bbc19d8acda0f7cf303c82078b",
        "msg" : "GlueGen: Refine compound [array] call-by-value native code injection and",
        "paths" : [
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/MethodBinding.java"
          },
          {
            "editType" : "edit",
            "file" : "src/java/com/jogamp/gluegen/JavaEmitter.java"
          }
        ]
      }
    ],
    "kind" : "git"
  },
  "culprits" : [
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/sgothel",
      "fullName" : "Sven Gothel"
    },
    {
      "absoluteUrl" : "https://jogamp.org/chuck/user/hharrison",
      "fullName" : "Harvey Harrison"
    }
  ]
}