< prev index next >

src/jdk.incubator.jextract/share/classes/jdk/internal/clang/TranslationUnit.java

Print this page

        

@@ -85,14 +85,14 @@
         try (AllocationScope scope = new AllocationScope()) {
             MemorySegment files = inMemoryFiles.length == 0 ?
                     null :
                     scope.track(MemorySegment.allocateNative(MemoryLayout.ofSequence(inMemoryFiles.length, Index_h.CXUnsavedFile$LAYOUT)));
             for (int i = 0; i < inMemoryFiles.length; i++) {
-                MemoryAddress start = files.baseAddress().offset(i * Index_h.CXUnsavedFile$LAYOUT.byteSize());
-                Utils.setPointer(start.offset(FILENAME_OFFSET), scope.track(Utils.toNativeString(inMemoryFiles[i].file)).baseAddress());
-                Utils.setPointer(start.offset(CONTENTS_OFFSET), scope.track(Utils.toNativeString(inMemoryFiles[i].contents)).baseAddress());
-                Utils.setLong(start.offset(LENGTH_OFFSET), inMemoryFiles[i].contents.length());
+                MemoryAddress start = files.baseAddress().add(i * Index_h.CXUnsavedFile$LAYOUT.byteSize());
+                Utils.setPointer(start.add(FILENAME_OFFSET), scope.track(Utils.toNativeString(inMemoryFiles[i].file)).baseAddress());
+                Utils.setPointer(start.add(CONTENTS_OFFSET), scope.track(Utils.toNativeString(inMemoryFiles[i].contents)).baseAddress());
+                Utils.setLong(start.add(LENGTH_OFFSET), inMemoryFiles[i].contents.length());
             }
             return Index_h.clang_reparseTranslationUnit(tu, inMemoryFiles.length,
                     files == null ? MemoryAddress.NULL : files.baseAddress(),
                     Index_h.clang_defaultReparseOptions(tu));
         }

@@ -148,11 +148,11 @@
         public int size() {
             return size;
         }
 
         public MemorySegment getTokenSegment(int idx) {
-            MemoryAddress p = ar.offset(idx * Index_h.CXToken$LAYOUT.byteSize());
+            MemoryAddress p = ar.add(idx * Index_h.CXToken$LAYOUT.byteSize());
             return ForeignUnsafe.ofNativeUnchecked(p, Index_h.CXToken$LAYOUT.byteSize());
         }
 
         public Token getToken(int index) {
             return new Token(getTokenSegment(index));
< prev index next >