From 9a7d036b33a4c37589f750273f2d5be9fc212389 Mon Sep 17 00:00:00 2001 From: Svyatoslav Scherbina Date: Mon, 20 Feb 2017 11:12:29 +0700 Subject: [PATCH] build, Interop/Indexer: update LLVM and clang to 3.9.0 --- Interop/Indexer/build.gradle | 6 +- .../c/{clangbridge.c => clangstubs.c} | 296 +++--- .../nativeInteropStubs/kotlin/clang/Clang.kt | 864 +++++++++++------- .../kotlin/native/interop/indexer/Indexer.kt | 2 + backend.native/build.gradle | 3 +- backend.native/konan.properties | 8 +- gradle.properties | 2 +- 7 files changed, 721 insertions(+), 460 deletions(-) rename Interop/Indexer/prebuilt/nativeInteropStubs/c/{clangbridge.c => clangstubs.c} (78%) diff --git a/Interop/Indexer/build.gradle b/Interop/Indexer/build.gradle index 1b7443aaea7..e3566980490 100644 --- a/Interop/Indexer/build.gradle +++ b/Interop/Indexer/build.gradle @@ -20,7 +20,7 @@ def compilerArgsForJniIncludes = ["", "linux", "darwin"].collect { "-I$javaHome/ model { components { - clangbridge(NativeLibrarySpec) { + clangstubs(NativeLibrarySpec) { sources { c.source.srcDir 'prebuilt/nativeInteropStubs/c' } @@ -52,9 +52,9 @@ dependencies { } task nativelibs(type: Copy) { - dependsOn 'clangbridgeSharedLibrary' + dependsOn 'clangstubsSharedLibrary' - from "$buildDir/libs/clangbridge/shared/" + from "$buildDir/libs/clangstubs/shared/" into "$buildDir/nativelibs/" } diff --git a/Interop/Indexer/prebuilt/nativeInteropStubs/c/clangbridge.c b/Interop/Indexer/prebuilt/nativeInteropStubs/c/clangstubs.c similarity index 78% rename from Interop/Indexer/prebuilt/nativeInteropStubs/c/clangbridge.c rename to Interop/Indexer/prebuilt/nativeInteropStubs/c/clangstubs.c index 25074e076f2..27979e4fd6a 100644 --- a/Interop/Indexer/prebuilt/nativeInteropStubs/c/clangbridge.c +++ b/Interop/Indexer/prebuilt/nativeInteropStubs/c/clangstubs.c @@ -9,28 +9,31 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clock (JNIEnv *env, jobject obj) { return (jlong) (clock()); } JNIEXPORT jlong JNICALL Java_clang_externals_ctime (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (ctime((intptr_t*)arg0)); + return (jlong) (ctime((time_t*)arg0)); +} +JNIEXPORT jdouble JNICALL Java_clang_externals_difftime (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { + return (jdouble) (difftime((time_t)arg0, (time_t)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_getdate (JNIEnv *env, jobject obj, jlong arg0) { return (jlong) (getdate((char*)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_gmtime (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (gmtime((intptr_t*)arg0)); + return (jlong) (gmtime((time_t*)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_localtime (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (localtime((intptr_t*)arg0)); + return (jlong) (localtime((time_t*)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_mktime (JNIEnv *env, jobject obj, jlong arg0) { return (jlong) (mktime((struct tm*)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_strftime (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong arg2, jlong arg3) { - return (jlong) (strftime((char*)arg0, (uintptr_t)arg1, (char*)arg2, (struct tm*)arg3)); + return (jlong) (strftime((char*)arg0, (size_t)arg1, (char*)arg2, (struct tm*)arg3)); } JNIEXPORT jlong JNICALL Java_clang_externals_strptime (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong arg2) { return (jlong) (strptime((char*)arg0, (char*)arg1, (struct tm*)arg2)); } JNIEXPORT jlong JNICALL Java_clang_externals_time (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (time((intptr_t*)arg0)); + return (jlong) (time((time_t*)arg0)); } JNIEXPORT void JNICALL Java_clang_externals_tzset (JNIEnv *env, jobject obj) { tzset(); @@ -39,22 +42,22 @@ JNIEXPORT jlong JNICALL Java_clang_externals_asctime_1r (JNIEnv *env, jobject ob return (jlong) (asctime_r((struct tm*)arg0, (char*)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_ctime_1r (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - return (jlong) (ctime_r((intptr_t*)arg0, (char*)arg1)); + return (jlong) (ctime_r((time_t*)arg0, (char*)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_gmtime_1r (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - return (jlong) (gmtime_r((intptr_t*)arg0, (struct tm*)arg1)); + return (jlong) (gmtime_r((time_t*)arg0, (struct tm*)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_localtime_1r (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - return (jlong) (localtime_r((intptr_t*)arg0, (struct tm*)arg1)); + return (jlong) (localtime_r((time_t*)arg0, (struct tm*)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_posix2time (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (posix2time((intptr_t)arg0)); + return (jlong) (posix2time((time_t)arg0)); } JNIEXPORT void JNICALL Java_clang_externals_tzsetwall (JNIEnv *env, jobject obj) { tzsetwall(); } JNIEXPORT jlong JNICALL Java_clang_externals_time2posix (JNIEnv *env, jobject obj, jlong arg0) { - return (jlong) (time2posix((intptr_t)arg0)); + return (jlong) (time2posix((time_t)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_timelocal (JNIEnv *env, jobject obj, jlong arg0) { return (jlong) (timelocal((struct tm*)arg0)); @@ -62,8 +65,20 @@ JNIEXPORT jlong JNICALL Java_clang_externals_timelocal (JNIEnv *env, jobject obj JNIEXPORT jlong JNICALL Java_clang_externals_timegm (JNIEnv *env, jobject obj, jlong arg0) { return (jlong) (timegm((struct tm*)arg0)); } -JNIEXPORT jint JNICALL Java_clang_externals_nanosleep (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - return (jint) (nanosleep((struct timespec*)arg0, (struct timespec*)arg1)); +JNIEXPORT jint JNICALL Java_clang_externals_nanosleep (JNIEnv *env, jobject obj, jlong __rqtp, jlong __rmtp) { + return (jint) (nanosleep((struct timespec*)__rqtp, (struct timespec*)__rmtp)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clock_1getres (JNIEnv *env, jobject obj, jint __clock_id, jlong __res) { + return (jint) (clock_getres((clockid_t)__clock_id, (struct timespec*)__res)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clock_1gettime (JNIEnv *env, jobject obj, jint __clock_id, jlong __tp) { + return (jint) (clock_gettime((clockid_t)__clock_id, (struct timespec*)__tp)); +} +JNIEXPORT jlong JNICALL Java_clang_externals_clock_1gettime_1nsec_1np (JNIEnv *env, jobject obj, jint __clock_id) { + return (jlong) (clock_gettime_nsec_np((clockid_t)__clock_id)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clock_1settime (JNIEnv *env, jobject obj, jint __clock_id, jlong __tp) { + return (jint) (clock_settime((clockid_t)__clock_id, (struct timespec*)__tp)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCString (JNIEnv *env, jobject obj, jlong string) { return (jlong) (clang_getCString(*(CXString*)string)); @@ -81,65 +96,65 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1VirtualFileOverlay_1create ( return (jlong) (clang_VirtualFileOverlay_create((unsigned int)options)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1VirtualFileOverlay_1addFileMapping (JNIEnv *env, jobject obj, jlong arg0, jlong virtualPath, jlong realPath) { - return (jint) (clang_VirtualFileOverlay_addFileMapping((struct CXVirtualFileOverlayImpl*)arg0, (char*)virtualPath, (char*)realPath)); + return (jint) (clang_VirtualFileOverlay_addFileMapping((CXVirtualFileOverlay)arg0, (char*)virtualPath, (char*)realPath)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1VirtualFileOverlay_1setCaseSensitivity (JNIEnv *env, jobject obj, jlong arg0, jint caseSensitive) { - return (jint) (clang_VirtualFileOverlay_setCaseSensitivity((struct CXVirtualFileOverlayImpl*)arg0, (int)caseSensitive)); + return (jint) (clang_VirtualFileOverlay_setCaseSensitivity((CXVirtualFileOverlay)arg0, (int)caseSensitive)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1VirtualFileOverlay_1writeToBuffer (JNIEnv *env, jobject obj, jlong arg0, jint options, jlong out_buffer_ptr, jlong out_buffer_size) { - return (jint) (clang_VirtualFileOverlay_writeToBuffer((struct CXVirtualFileOverlayImpl*)arg0, (unsigned int)options, (char**)out_buffer_ptr, (unsigned int*)out_buffer_size)); + return (jint) (clang_VirtualFileOverlay_writeToBuffer((CXVirtualFileOverlay)arg0, (unsigned int)options, (char**)out_buffer_ptr, (unsigned int*)out_buffer_size)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1free (JNIEnv *env, jobject obj, jlong buffer) { clang_free((void*)buffer); } JNIEXPORT void JNICALL Java_clang_externals_clang_1VirtualFileOverlay_1dispose (JNIEnv *env, jobject obj, jlong arg0) { - clang_VirtualFileOverlay_dispose((struct CXVirtualFileOverlayImpl*)arg0); + clang_VirtualFileOverlay_dispose((CXVirtualFileOverlay)arg0); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1ModuleMapDescriptor_1create (JNIEnv *env, jobject obj, jint options) { return (jlong) (clang_ModuleMapDescriptor_create((unsigned int)options)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1ModuleMapDescriptor_1setFrameworkModuleName (JNIEnv *env, jobject obj, jlong arg0, jlong name) { - return (jint) (clang_ModuleMapDescriptor_setFrameworkModuleName((struct CXModuleMapDescriptorImpl*)arg0, (char*)name)); + return (jint) (clang_ModuleMapDescriptor_setFrameworkModuleName((CXModuleMapDescriptor)arg0, (char*)name)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1ModuleMapDescriptor_1setUmbrellaHeader (JNIEnv *env, jobject obj, jlong arg0, jlong name) { - return (jint) (clang_ModuleMapDescriptor_setUmbrellaHeader((struct CXModuleMapDescriptorImpl*)arg0, (char*)name)); + return (jint) (clang_ModuleMapDescriptor_setUmbrellaHeader((CXModuleMapDescriptor)arg0, (char*)name)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1ModuleMapDescriptor_1writeToBuffer (JNIEnv *env, jobject obj, jlong arg0, jint options, jlong out_buffer_ptr, jlong out_buffer_size) { - return (jint) (clang_ModuleMapDescriptor_writeToBuffer((struct CXModuleMapDescriptorImpl*)arg0, (unsigned int)options, (char**)out_buffer_ptr, (unsigned int*)out_buffer_size)); + return (jint) (clang_ModuleMapDescriptor_writeToBuffer((CXModuleMapDescriptor)arg0, (unsigned int)options, (char**)out_buffer_ptr, (unsigned int*)out_buffer_size)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1ModuleMapDescriptor_1dispose (JNIEnv *env, jobject obj, jlong arg0) { - clang_ModuleMapDescriptor_dispose((struct CXModuleMapDescriptorImpl*)arg0); + clang_ModuleMapDescriptor_dispose((CXModuleMapDescriptor)arg0); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1createIndex (JNIEnv *env, jobject obj, jint excludeDeclarationsFromPCH, jint displayDiagnostics) { return (jlong) (clang_createIndex((int)excludeDeclarationsFromPCH, (int)displayDiagnostics)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeIndex (JNIEnv *env, jobject obj, jlong index) { - clang_disposeIndex((void*)index); + clang_disposeIndex((CXIndex)index); } JNIEXPORT void JNICALL Java_clang_externals_clang_1CXIndex_1setGlobalOptions (JNIEnv *env, jobject obj, jlong arg0, jint options) { - clang_CXIndex_setGlobalOptions((void*)arg0, (unsigned int)options); + clang_CXIndex_setGlobalOptions((CXIndex)arg0, (unsigned int)options); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXIndex_1getGlobalOptions (JNIEnv *env, jobject obj, jlong arg0) { - return (jint) (clang_CXIndex_getGlobalOptions((void*)arg0)); + return (jint) (clang_CXIndex_getGlobalOptions((CXIndex)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getFileName (JNIEnv *env, jobject obj, jlong SFile, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getFileName((void*)SFile); + *(CXString*)retValPlacement = clang_getFileName((CXFile)SFile); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getFileTime (JNIEnv *env, jobject obj, jlong SFile) { - return (jlong) (clang_getFileTime((void*)SFile)); + return (jlong) (clang_getFileTime((CXFile)SFile)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getFileUniqueID (JNIEnv *env, jobject obj, jlong file, jlong outID) { - return (jint) (clang_getFileUniqueID((void*)file, (CXFileUniqueID*)outID)); + return (jint) (clang_getFileUniqueID((CXFile)file, (CXFileUniqueID*)outID)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1isFileMultipleIncludeGuarded (JNIEnv *env, jobject obj, jlong tu, jlong file) { - return (jint) (clang_isFileMultipleIncludeGuarded((struct CXTranslationUnitImpl*)tu, (void*)file)); + return (jint) (clang_isFileMultipleIncludeGuarded((CXTranslationUnit)tu, (CXFile)file)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getFile (JNIEnv *env, jobject obj, jlong tu, jlong file_name) { - return (jlong) (clang_getFile((struct CXTranslationUnitImpl*)tu, (char*)file_name)); + return (jlong) (clang_getFile((CXTranslationUnit)tu, (char*)file_name)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1File_1isEqual (JNIEnv *env, jobject obj, jlong file1, jlong file2) { - return (jint) (clang_File_isEqual((void*)file1, (void*)file2)); + return (jint) (clang_File_isEqual((CXFile)file1, (CXFile)file2)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getNullLocation (JNIEnv *env, jobject obj, jlong retValPlacement) { *(CXSourceLocation*)retValPlacement = clang_getNullLocation(); @@ -149,11 +164,11 @@ JNIEXPORT jint JNICALL Java_clang_externals_clang_1equalLocations (JNIEnv *env, return (jint) (clang_equalLocations(*(CXSourceLocation*)loc1, *(CXSourceLocation*)loc2)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getLocation (JNIEnv *env, jobject obj, jlong tu, jlong file, jint line, jint column, jlong retValPlacement) { - *(CXSourceLocation*)retValPlacement = clang_getLocation((struct CXTranslationUnitImpl*)tu, (void*)file, (unsigned int)line, (unsigned int)column); + *(CXSourceLocation*)retValPlacement = clang_getLocation((CXTranslationUnit)tu, (CXFile)file, (unsigned int)line, (unsigned int)column); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getLocationForOffset (JNIEnv *env, jobject obj, jlong tu, jlong file, jint offset, jlong retValPlacement) { - *(CXSourceLocation*)retValPlacement = clang_getLocationForOffset((struct CXTranslationUnitImpl*)tu, (void*)file, (unsigned int)offset); + *(CXSourceLocation*)retValPlacement = clang_getLocationForOffset((CXTranslationUnit)tu, (CXFile)file, (unsigned int)offset); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1Location_1isInSystemHeader (JNIEnv *env, jobject obj, jlong location) { @@ -177,19 +192,19 @@ JNIEXPORT jint JNICALL Java_clang_externals_clang_1Range_1isNull (JNIEnv *env, j return (jint) (clang_Range_isNull(*(CXSourceRange*)range)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getExpansionLocation (JNIEnv *env, jobject obj, jlong location, jlong file, jlong line, jlong column, jlong offset) { - clang_getExpansionLocation(*(CXSourceLocation*)location, (void**)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); + clang_getExpansionLocation(*(CXSourceLocation*)location, (CXFile*)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getPresumedLocation (JNIEnv *env, jobject obj, jlong location, jlong filename, jlong line, jlong column) { clang_getPresumedLocation(*(CXSourceLocation*)location, (CXString*)filename, (unsigned int*)line, (unsigned int*)column); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getInstantiationLocation (JNIEnv *env, jobject obj, jlong location, jlong file, jlong line, jlong column, jlong offset) { - clang_getInstantiationLocation(*(CXSourceLocation*)location, (void**)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); + clang_getInstantiationLocation(*(CXSourceLocation*)location, (CXFile*)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getSpellingLocation (JNIEnv *env, jobject obj, jlong location, jlong file, jlong line, jlong column, jlong offset) { - clang_getSpellingLocation(*(CXSourceLocation*)location, (void**)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); + clang_getSpellingLocation(*(CXSourceLocation*)location, (CXFile*)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getFileLocation (JNIEnv *env, jobject obj, jlong location, jlong file, jlong line, jlong column, jlong offset) { - clang_getFileLocation(*(CXSourceLocation*)location, (void**)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); + clang_getFileLocation(*(CXSourceLocation*)location, (CXFile*)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getRangeStart (JNIEnv *env, jobject obj, jlong range, jlong retValPlacement) { *(CXSourceLocation*)retValPlacement = clang_getRangeStart(*(CXSourceRange*)range); @@ -200,130 +215,130 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getRangeEnd (JNIEnv *env, jo return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getSkippedRanges (JNIEnv *env, jobject obj, jlong tu, jlong file) { - return (jlong) (clang_getSkippedRanges((struct CXTranslationUnitImpl*)tu, (void*)file)); + return (jlong) (clang_getSkippedRanges((CXTranslationUnit)tu, (CXFile)file)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeSourceRangeList (JNIEnv *env, jobject obj, jlong ranges) { clang_disposeSourceRangeList((CXSourceRangeList*)ranges); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getNumDiagnosticsInSet (JNIEnv *env, jobject obj, jlong Diags) { - return (jint) (clang_getNumDiagnosticsInSet((void*)Diags)); + return (jint) (clang_getNumDiagnosticsInSet((CXDiagnosticSet)Diags)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticInSet (JNIEnv *env, jobject obj, jlong Diags, jint Index) { - return (jlong) (clang_getDiagnosticInSet((void*)Diags, (unsigned int)Index)); + return (jlong) (clang_getDiagnosticInSet((CXDiagnosticSet)Diags, (unsigned int)Index)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1loadDiagnostics (JNIEnv *env, jobject obj, jlong file, jlong error, jlong errorString) { return (jlong) (clang_loadDiagnostics((char*)file, (enum CXLoadDiag_Error*)error, (CXString*)errorString)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeDiagnosticSet (JNIEnv *env, jobject obj, jlong Diags) { - clang_disposeDiagnosticSet((void*)Diags); + clang_disposeDiagnosticSet((CXDiagnosticSet)Diags); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getChildDiagnostics (JNIEnv *env, jobject obj, jlong D) { - return (jlong) (clang_getChildDiagnostics((void*)D)); + return (jlong) (clang_getChildDiagnostics((CXDiagnostic)D)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getNumDiagnostics (JNIEnv *env, jobject obj, jlong Unit) { - return (jint) (clang_getNumDiagnostics((struct CXTranslationUnitImpl*)Unit)); + return (jint) (clang_getNumDiagnostics((CXTranslationUnit)Unit)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnostic (JNIEnv *env, jobject obj, jlong Unit, jint Index) { - return (jlong) (clang_getDiagnostic((struct CXTranslationUnitImpl*)Unit, (unsigned int)Index)); + return (jlong) (clang_getDiagnostic((CXTranslationUnit)Unit, (unsigned int)Index)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticSetFromTU (JNIEnv *env, jobject obj, jlong Unit) { - return (jlong) (clang_getDiagnosticSetFromTU((struct CXTranslationUnitImpl*)Unit)); + return (jlong) (clang_getDiagnosticSetFromTU((CXTranslationUnit)Unit)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeDiagnostic (JNIEnv *env, jobject obj, jlong Diagnostic) { - clang_disposeDiagnostic((void*)Diagnostic); + clang_disposeDiagnostic((CXDiagnostic)Diagnostic); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1formatDiagnostic (JNIEnv *env, jobject obj, jlong Diagnostic, jint Options, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_formatDiagnostic((void*)Diagnostic, (unsigned int)Options); + *(CXString*)retValPlacement = clang_formatDiagnostic((CXDiagnostic)Diagnostic, (unsigned int)Options); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1defaultDiagnosticDisplayOptions (JNIEnv *env, jobject obj) { return (jint) (clang_defaultDiagnosticDisplayOptions()); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getDiagnosticSeverity (JNIEnv *env, jobject obj, jlong arg0) { - return (jint) (clang_getDiagnosticSeverity((void*)arg0)); + return (jint) (clang_getDiagnosticSeverity((CXDiagnostic)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticLocation (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { - *(CXSourceLocation*)retValPlacement = clang_getDiagnosticLocation((void*)arg0); + *(CXSourceLocation*)retValPlacement = clang_getDiagnosticLocation((CXDiagnostic)arg0); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticSpelling (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getDiagnosticSpelling((void*)arg0); + *(CXString*)retValPlacement = clang_getDiagnosticSpelling((CXDiagnostic)arg0); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticOption (JNIEnv *env, jobject obj, jlong Diag, jlong Disable, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getDiagnosticOption((void*)Diag, (CXString*)Disable); + *(CXString*)retValPlacement = clang_getDiagnosticOption((CXDiagnostic)Diag, (CXString*)Disable); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getDiagnosticCategory (JNIEnv *env, jobject obj, jlong arg0) { - return (jint) (clang_getDiagnosticCategory((void*)arg0)); + return (jint) (clang_getDiagnosticCategory((CXDiagnostic)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticCategoryName (JNIEnv *env, jobject obj, jint Category, jlong retValPlacement) { *(CXString*)retValPlacement = clang_getDiagnosticCategoryName((unsigned int)Category); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticCategoryText (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getDiagnosticCategoryText((void*)arg0); + *(CXString*)retValPlacement = clang_getDiagnosticCategoryText((CXDiagnostic)arg0); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getDiagnosticNumRanges (JNIEnv *env, jobject obj, jlong arg0) { - return (jint) (clang_getDiagnosticNumRanges((void*)arg0)); + return (jint) (clang_getDiagnosticNumRanges((CXDiagnostic)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticRange (JNIEnv *env, jobject obj, jlong Diagnostic, jint Range, jlong retValPlacement) { - *(CXSourceRange*)retValPlacement = clang_getDiagnosticRange((void*)Diagnostic, (unsigned int)Range); + *(CXSourceRange*)retValPlacement = clang_getDiagnosticRange((CXDiagnostic)Diagnostic, (unsigned int)Range); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getDiagnosticNumFixIts (JNIEnv *env, jobject obj, jlong Diagnostic) { - return (jint) (clang_getDiagnosticNumFixIts((void*)Diagnostic)); + return (jint) (clang_getDiagnosticNumFixIts((CXDiagnostic)Diagnostic)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDiagnosticFixIt (JNIEnv *env, jobject obj, jlong Diagnostic, jint FixIt, jlong ReplacementRange, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getDiagnosticFixIt((void*)Diagnostic, (unsigned int)FixIt, (CXSourceRange*)ReplacementRange); + *(CXString*)retValPlacement = clang_getDiagnosticFixIt((CXDiagnostic)Diagnostic, (unsigned int)FixIt, (CXSourceRange*)ReplacementRange); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTranslationUnitSpelling (JNIEnv *env, jobject obj, jlong CTUnit, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getTranslationUnitSpelling((struct CXTranslationUnitImpl*)CTUnit); + *(CXString*)retValPlacement = clang_getTranslationUnitSpelling((CXTranslationUnit)CTUnit); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1createTranslationUnitFromSourceFile (JNIEnv *env, jobject obj, jlong CIdx, jlong source_filename, jint num_clang_command_line_args, jlong clang_command_line_args, jint num_unsaved_files, jlong unsaved_files) { - return (jlong) (clang_createTranslationUnitFromSourceFile((void*)CIdx, (char*)source_filename, (int)num_clang_command_line_args, (char**)clang_command_line_args, (unsigned int)num_unsaved_files, (struct CXUnsavedFile*)unsaved_files)); + return (jlong) (clang_createTranslationUnitFromSourceFile((CXIndex)CIdx, (char*)source_filename, (int)num_clang_command_line_args, (char**)clang_command_line_args, (unsigned int)num_unsaved_files, (struct CXUnsavedFile*)unsaved_files)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1createTranslationUnit (JNIEnv *env, jobject obj, jlong CIdx, jlong ast_filename) { - return (jlong) (clang_createTranslationUnit((void*)CIdx, (char*)ast_filename)); + return (jlong) (clang_createTranslationUnit((CXIndex)CIdx, (char*)ast_filename)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1createTranslationUnit2 (JNIEnv *env, jobject obj, jlong CIdx, jlong ast_filename, jlong out_TU) { - return (jint) (clang_createTranslationUnit2((void*)CIdx, (char*)ast_filename, (struct CXTranslationUnitImpl**)out_TU)); + return (jint) (clang_createTranslationUnit2((CXIndex)CIdx, (char*)ast_filename, (CXTranslationUnit*)out_TU)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1defaultEditingTranslationUnitOptions (JNIEnv *env, jobject obj) { return (jint) (clang_defaultEditingTranslationUnitOptions()); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1parseTranslationUnit (JNIEnv *env, jobject obj, jlong CIdx, jlong source_filename, jlong command_line_args, jint num_command_line_args, jlong unsaved_files, jint num_unsaved_files, jint options) { - return (jlong) (clang_parseTranslationUnit((void*)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options)); + return (jlong) (clang_parseTranslationUnit((CXIndex)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1parseTranslationUnit2 (JNIEnv *env, jobject obj, jlong CIdx, jlong source_filename, jlong command_line_args, jint num_command_line_args, jlong unsaved_files, jint num_unsaved_files, jint options, jlong out_TU) { - return (jint) (clang_parseTranslationUnit2((void*)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options, (struct CXTranslationUnitImpl**)out_TU)); + return (jint) (clang_parseTranslationUnit2((CXIndex)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options, (CXTranslationUnit*)out_TU)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1parseTranslationUnit2FullArgv (JNIEnv *env, jobject obj, jlong CIdx, jlong source_filename, jlong command_line_args, jint num_command_line_args, jlong unsaved_files, jint num_unsaved_files, jint options, jlong out_TU) { - return (jint) (clang_parseTranslationUnit2FullArgv((void*)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options, (struct CXTranslationUnitImpl**)out_TU)); + return (jint) (clang_parseTranslationUnit2FullArgv((CXIndex)CIdx, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options, (CXTranslationUnit*)out_TU)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1defaultSaveOptions (JNIEnv *env, jobject obj, jlong TU) { - return (jint) (clang_defaultSaveOptions((struct CXTranslationUnitImpl*)TU)); + return (jint) (clang_defaultSaveOptions((CXTranslationUnit)TU)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1saveTranslationUnit (JNIEnv *env, jobject obj, jlong TU, jlong FileName, jint options) { - return (jint) (clang_saveTranslationUnit((struct CXTranslationUnitImpl*)TU, (char*)FileName, (unsigned int)options)); + return (jint) (clang_saveTranslationUnit((CXTranslationUnit)TU, (char*)FileName, (unsigned int)options)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeTranslationUnit (JNIEnv *env, jobject obj, jlong arg0) { - clang_disposeTranslationUnit((struct CXTranslationUnitImpl*)arg0); + clang_disposeTranslationUnit((CXTranslationUnit)arg0); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1defaultReparseOptions (JNIEnv *env, jobject obj, jlong TU) { - return (jint) (clang_defaultReparseOptions((struct CXTranslationUnitImpl*)TU)); + return (jint) (clang_defaultReparseOptions((CXTranslationUnit)TU)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1reparseTranslationUnit (JNIEnv *env, jobject obj, jlong TU, jint num_unsaved_files, jlong unsaved_files, jint options) { - return (jint) (clang_reparseTranslationUnit((struct CXTranslationUnitImpl*)TU, (unsigned int)num_unsaved_files, (struct CXUnsavedFile*)unsaved_files, (unsigned int)options)); + return (jint) (clang_reparseTranslationUnit((CXTranslationUnit)TU, (unsigned int)num_unsaved_files, (struct CXUnsavedFile*)unsaved_files, (unsigned int)options)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTUResourceUsageName (JNIEnv *env, jobject obj, jint kind) { return (jlong) (clang_getTUResourceUsageName((enum CXTUResourceUsageKind)kind)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCXTUResourceUsage (JNIEnv *env, jobject obj, jlong TU, jlong retValPlacement) { - *(struct CXTUResourceUsage*)retValPlacement = clang_getCXTUResourceUsage((struct CXTranslationUnitImpl*)TU); + *(struct CXTUResourceUsage*)retValPlacement = clang_getCXTUResourceUsage((CXTranslationUnit)TU); return (jlong) retValPlacement; } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeCXTUResourceUsage (JNIEnv *env, jobject obj, jlong usage) { @@ -334,7 +349,7 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getNullCursor (JNIEnv *env, return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTranslationUnitCursor (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { - *(CXCursor*)retValPlacement = clang_getTranslationUnitCursor((struct CXTranslationUnitImpl*)arg0); + *(CXCursor*)retValPlacement = clang_getTranslationUnitCursor((CXTranslationUnit)arg0); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1equalCursors (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { @@ -364,6 +379,9 @@ JNIEXPORT jint JNICALL Java_clang_externals_clang_1isStatement (JNIEnv *env, job JNIEXPORT jint JNICALL Java_clang_externals_clang_1isAttribute (JNIEnv *env, jobject obj, jint arg0) { return (jint) (clang_isAttribute((enum CXCursorKind)arg0)); } +JNIEXPORT jint JNICALL Java_clang_externals_clang_1Cursor_1hasAttrs (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_Cursor_hasAttrs(*(CXCursor*)C)); +} JNIEXPORT jint JNICALL Java_clang_externals_clang_1isInvalid (JNIEnv *env, jobject obj, jint arg0) { return (jint) (clang_isInvalid((enum CXCursorKind)arg0)); } @@ -401,13 +419,13 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1createCXCursorSet (JNIEnv *e return (jlong) (clang_createCXCursorSet()); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeCXCursorSet (JNIEnv *env, jobject obj, jlong cset) { - clang_disposeCXCursorSet((struct CXCursorSetImpl*)cset); + clang_disposeCXCursorSet((CXCursorSet)cset); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXCursorSet_1contains (JNIEnv *env, jobject obj, jlong cset, jlong cursor) { - return (jint) (clang_CXCursorSet_contains((struct CXCursorSetImpl*)cset, *(CXCursor*)cursor)); + return (jint) (clang_CXCursorSet_contains((CXCursorSet)cset, *(CXCursor*)cursor)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXCursorSet_1insert (JNIEnv *env, jobject obj, jlong cset, jlong cursor) { - return (jint) (clang_CXCursorSet_insert((struct CXCursorSetImpl*)cset, *(CXCursor*)cursor)); + return (jint) (clang_CXCursorSet_insert((CXCursorSet)cset, *(CXCursor*)cursor)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursorSemanticParent (JNIEnv *env, jobject obj, jlong cursor, jlong retValPlacement) { *(CXCursor*)retValPlacement = clang_getCursorSemanticParent(*(CXCursor*)cursor); @@ -427,7 +445,7 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getIncludedFile (JNIEnv *env return (jlong) (clang_getIncludedFile(*(CXCursor*)cursor)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursor (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong retValPlacement) { - *(CXCursor*)retValPlacement = clang_getCursor((struct CXTranslationUnitImpl*)arg0, *(CXSourceLocation*)arg1); + *(CXCursor*)retValPlacement = clang_getCursor((CXTranslationUnit)arg0, *(CXSourceLocation*)arg1); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursorLocation (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { @@ -496,6 +514,15 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCanonicalType (JNIEnv *en JNIEXPORT jint JNICALL Java_clang_externals_clang_1isConstQualifiedType (JNIEnv *env, jobject obj, jlong T) { return (jint) (clang_isConstQualifiedType(*(CXType*)T)); } +JNIEXPORT jint JNICALL Java_clang_externals_clang_1Cursor_1isMacroFunctionLike (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_Cursor_isMacroFunctionLike(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1Cursor_1isMacroBuiltin (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_Cursor_isMacroBuiltin(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1Cursor_1isFunctionInlined (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_Cursor_isFunctionInlined(*(CXCursor*)C)); +} JNIEXPORT jint JNICALL Java_clang_externals_clang_1isVolatileQualifiedType (JNIEnv *env, jobject obj, jlong T) { return (jint) (clang_isVolatileQualifiedType(*(CXType*)T)); } @@ -514,6 +541,10 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getDeclObjCTypeEncoding (JNI *(CXString*)retValPlacement = clang_getDeclObjCTypeEncoding(*(CXCursor*)C); return (jlong) retValPlacement; } +JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Type_1getObjCEncoding (JNIEnv *env, jobject obj, jlong type, jlong retValPlacement) { + *(CXString*)retValPlacement = clang_Type_getObjCEncoding(*(CXType*)type); + return (jlong) retValPlacement; +} JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTypeKindSpelling (JNIEnv *env, jobject obj, jint K, jlong retValPlacement) { *(CXString*)retValPlacement = clang_getTypeKindSpelling((enum CXTypeKind)K); return (jlong) retValPlacement; @@ -556,6 +587,10 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getArrayElementType (JNIEnv JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getArraySize (JNIEnv *env, jobject obj, jlong T) { return (jlong) (clang_getArraySize(*(CXType*)T)); } +JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Type_1getNamedType (JNIEnv *env, jobject obj, jlong T, jlong retValPlacement) { + *(CXType*)retValPlacement = clang_Type_getNamedType(*(CXType*)T); + return (jlong) retValPlacement; +} JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Type_1getAlignOf (JNIEnv *env, jobject obj, jlong T) { return (jlong) (clang_Type_getAlignOf(*(CXType*)T)); } @@ -609,7 +644,7 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getIBOutletCollectionType (J return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1visitChildren (JNIEnv *env, jobject obj, jlong parent, jlong visitor, jlong client_data) { - return (jint) (clang_visitChildren(*(CXCursor*)parent, (enum CXChildVisitResult (*)(CXCursor, CXCursor, void*))visitor, (void*)client_data)); + return (jint) (clang_visitChildren(*(CXCursor*)parent, (CXCursorVisitor)visitor, (CXClientData)client_data)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursorUSR (JNIEnv *env, jobject obj, jlong arg0, jlong retValPlacement) { *(CXString*)retValPlacement = clang_getCursorUSR(*(CXCursor*)arg0); @@ -711,34 +746,49 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Cursor_1getModule (JNIEnv *e return (jlong) (clang_Cursor_getModule(*(CXCursor*)C)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getModuleForFile (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - return (jlong) (clang_getModuleForFile((struct CXTranslationUnitImpl*)arg0, (void*)arg1)); + return (jlong) (clang_getModuleForFile((CXTranslationUnit)arg0, (CXFile)arg1)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Module_1getASTFile (JNIEnv *env, jobject obj, jlong Module) { - return (jlong) (clang_Module_getASTFile((void*)Module)); + return (jlong) (clang_Module_getASTFile((CXModule)Module)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Module_1getParent (JNIEnv *env, jobject obj, jlong Module) { - return (jlong) (clang_Module_getParent((void*)Module)); + return (jlong) (clang_Module_getParent((CXModule)Module)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Module_1getName (JNIEnv *env, jobject obj, jlong Module, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_Module_getName((void*)Module); + *(CXString*)retValPlacement = clang_Module_getName((CXModule)Module); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Module_1getFullName (JNIEnv *env, jobject obj, jlong Module, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_Module_getFullName((void*)Module); + *(CXString*)retValPlacement = clang_Module_getFullName((CXModule)Module); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1Module_1isSystem (JNIEnv *env, jobject obj, jlong Module) { - return (jint) (clang_Module_isSystem((void*)Module)); + return (jint) (clang_Module_isSystem((CXModule)Module)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1Module_1getNumTopLevelHeaders (JNIEnv *env, jobject obj, jlong arg0, jlong Module) { - return (jint) (clang_Module_getNumTopLevelHeaders((struct CXTranslationUnitImpl*)arg0, (void*)Module)); + return (jint) (clang_Module_getNumTopLevelHeaders((CXTranslationUnit)arg0, (CXModule)Module)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Module_1getTopLevelHeader (JNIEnv *env, jobject obj, jlong arg0, jlong Module, jint Index) { - return (jlong) (clang_Module_getTopLevelHeader((struct CXTranslationUnitImpl*)arg0, (void*)Module, (unsigned int)Index)); + return (jlong) (clang_Module_getTopLevelHeader((CXTranslationUnit)arg0, (CXModule)Module, (unsigned int)Index)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXConstructor_1isConvertingConstructor (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_CXXConstructor_isConvertingConstructor(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXConstructor_1isCopyConstructor (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_CXXConstructor_isCopyConstructor(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXConstructor_1isDefaultConstructor (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_CXXConstructor_isDefaultConstructor(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXConstructor_1isMoveConstructor (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_CXXConstructor_isMoveConstructor(*(CXCursor*)C)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXField_1isMutable (JNIEnv *env, jobject obj, jlong C) { return (jint) (clang_CXXField_isMutable(*(CXCursor*)C)); } +JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXMethod_1isDefaulted (JNIEnv *env, jobject obj, jlong C) { + return (jint) (clang_CXXMethod_isDefaulted(*(CXCursor*)C)); +} JNIEXPORT jint JNICALL Java_clang_externals_clang_1CXXMethod_1isPureVirtual (JNIEnv *env, jobject obj, jlong C) { return (jint) (clang_CXXMethod_isPureVirtual(*(CXCursor*)C)); } @@ -766,25 +816,25 @@ JNIEXPORT jint JNICALL Java_clang_externals_clang_1getTokenKind (JNIEnv *env, jo return (jint) (clang_getTokenKind(*(CXToken*)arg0)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTokenSpelling (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getTokenSpelling((struct CXTranslationUnitImpl*)arg0, *(CXToken*)arg1); + *(CXString*)retValPlacement = clang_getTokenSpelling((CXTranslationUnit)arg0, *(CXToken*)arg1); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTokenLocation (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong retValPlacement) { - *(CXSourceLocation*)retValPlacement = clang_getTokenLocation((struct CXTranslationUnitImpl*)arg0, *(CXToken*)arg1); + *(CXSourceLocation*)retValPlacement = clang_getTokenLocation((CXTranslationUnit)arg0, *(CXToken*)arg1); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getTokenExtent (JNIEnv *env, jobject obj, jlong arg0, jlong arg1, jlong retValPlacement) { - *(CXSourceRange*)retValPlacement = clang_getTokenExtent((struct CXTranslationUnitImpl*)arg0, *(CXToken*)arg1); + *(CXSourceRange*)retValPlacement = clang_getTokenExtent((CXTranslationUnit)arg0, *(CXToken*)arg1); return (jlong) retValPlacement; } JNIEXPORT void JNICALL Java_clang_externals_clang_1tokenize (JNIEnv *env, jobject obj, jlong TU, jlong Range, jlong Tokens, jlong NumTokens) { - clang_tokenize((struct CXTranslationUnitImpl*)TU, *(CXSourceRange*)Range, (CXToken**)Tokens, (unsigned int*)NumTokens); + clang_tokenize((CXTranslationUnit)TU, *(CXSourceRange*)Range, (CXToken**)Tokens, (unsigned int*)NumTokens); } JNIEXPORT void JNICALL Java_clang_externals_clang_1annotateTokens (JNIEnv *env, jobject obj, jlong TU, jlong Tokens, jint NumTokens, jlong Cursors) { - clang_annotateTokens((struct CXTranslationUnitImpl*)TU, (CXToken*)Tokens, (unsigned int)NumTokens, (CXCursor*)Cursors); + clang_annotateTokens((CXTranslationUnit)TU, (CXToken*)Tokens, (unsigned int)NumTokens, (CXCursor*)Cursors); } JNIEXPORT void JNICALL Java_clang_externals_clang_1disposeTokens (JNIEnv *env, jobject obj, jlong TU, jlong Tokens, jint NumTokens) { - clang_disposeTokens((struct CXTranslationUnitImpl*)TU, (CXToken*)Tokens, (unsigned int)NumTokens); + clang_disposeTokens((CXTranslationUnit)TU, (CXToken*)Tokens, (unsigned int)NumTokens); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursorKindSpelling (JNIEnv *env, jobject obj, jint Kind, jlong retValPlacement) { *(CXString*)retValPlacement = clang_getCursorKindSpelling((enum CXCursorKind)Kind); @@ -800,37 +850,37 @@ JNIEXPORT void JNICALL Java_clang_externals_clang_1executeOnThread (JNIEnv *env, clang_executeOnThread((void (*)(void*))fn, (void*)user_data, (unsigned int)stack_size); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getCompletionChunkKind (JNIEnv *env, jobject obj, jlong completion_string, jint chunk_number) { - return (jint) (clang_getCompletionChunkKind((void*)completion_string, (unsigned int)chunk_number)); + return (jint) (clang_getCompletionChunkKind((CXCompletionString)completion_string, (unsigned int)chunk_number)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCompletionChunkText (JNIEnv *env, jobject obj, jlong completion_string, jint chunk_number, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getCompletionChunkText((void*)completion_string, (unsigned int)chunk_number); + *(CXString*)retValPlacement = clang_getCompletionChunkText((CXCompletionString)completion_string, (unsigned int)chunk_number); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCompletionChunkCompletionString (JNIEnv *env, jobject obj, jlong completion_string, jint chunk_number) { - return (jlong) (clang_getCompletionChunkCompletionString((void*)completion_string, (unsigned int)chunk_number)); + return (jlong) (clang_getCompletionChunkCompletionString((CXCompletionString)completion_string, (unsigned int)chunk_number)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getNumCompletionChunks (JNIEnv *env, jobject obj, jlong completion_string) { - return (jint) (clang_getNumCompletionChunks((void*)completion_string)); + return (jint) (clang_getNumCompletionChunks((CXCompletionString)completion_string)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getCompletionPriority (JNIEnv *env, jobject obj, jlong completion_string) { - return (jint) (clang_getCompletionPriority((void*)completion_string)); + return (jint) (clang_getCompletionPriority((CXCompletionString)completion_string)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getCompletionAvailability (JNIEnv *env, jobject obj, jlong completion_string) { - return (jint) (clang_getCompletionAvailability((void*)completion_string)); + return (jint) (clang_getCompletionAvailability((CXCompletionString)completion_string)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1getCompletionNumAnnotations (JNIEnv *env, jobject obj, jlong completion_string) { - return (jint) (clang_getCompletionNumAnnotations((void*)completion_string)); + return (jint) (clang_getCompletionNumAnnotations((CXCompletionString)completion_string)); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCompletionAnnotation (JNIEnv *env, jobject obj, jlong completion_string, jint annotation_number, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getCompletionAnnotation((void*)completion_string, (unsigned int)annotation_number); + *(CXString*)retValPlacement = clang_getCompletionAnnotation((CXCompletionString)completion_string, (unsigned int)annotation_number); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCompletionParent (JNIEnv *env, jobject obj, jlong completion_string, jlong kind, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getCompletionParent((void*)completion_string, (enum CXCursorKind*)kind); + *(CXString*)retValPlacement = clang_getCompletionParent((CXCompletionString)completion_string, (enum CXCursorKind*)kind); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCompletionBriefComment (JNIEnv *env, jobject obj, jlong completion_string, jlong retValPlacement) { - *(CXString*)retValPlacement = clang_getCompletionBriefComment((void*)completion_string); + *(CXString*)retValPlacement = clang_getCompletionBriefComment((CXCompletionString)completion_string); return (jlong) retValPlacement; } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getCursorCompletionString (JNIEnv *env, jobject obj, jlong cursor) { @@ -840,7 +890,7 @@ JNIEXPORT jint JNICALL Java_clang_externals_clang_1defaultCodeCompleteOptions (J return (jint) (clang_defaultCodeCompleteOptions()); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1codeCompleteAt (JNIEnv *env, jobject obj, jlong TU, jlong complete_filename, jint complete_line, jint complete_column, jlong unsaved_files, jint num_unsaved_files, jint options) { - return (jlong) (clang_codeCompleteAt((struct CXTranslationUnitImpl*)TU, (char*)complete_filename, (unsigned int)complete_line, (unsigned int)complete_column, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options)); + return (jlong) (clang_codeCompleteAt((CXTranslationUnit)TU, (char*)complete_filename, (unsigned int)complete_line, (unsigned int)complete_column, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (unsigned int)options)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1sortCodeCompletionResults (JNIEnv *env, jobject obj, jlong Results, jint NumResults) { clang_sortCodeCompletionResults((CXCompletionResult*)Results, (unsigned int)NumResults); @@ -876,7 +926,25 @@ JNIEXPORT void JNICALL Java_clang_externals_clang_1toggleCrashRecovery (JNIEnv * clang_toggleCrashRecovery((unsigned int)isEnabled); } JNIEXPORT void JNICALL Java_clang_externals_clang_1getInclusions (JNIEnv *env, jobject obj, jlong tu, jlong visitor, jlong client_data) { - clang_getInclusions((struct CXTranslationUnitImpl*)tu, (void (*)(void*, CXSourceLocation*, unsigned int, void*))visitor, (void*)client_data); + clang_getInclusions((CXTranslationUnit)tu, (CXInclusionVisitor)visitor, (CXClientData)client_data); +} +JNIEXPORT jlong JNICALL Java_clang_externals_clang_1Cursor_1Evaluate (JNIEnv *env, jobject obj, jlong C) { + return (jlong) (clang_Cursor_Evaluate(*(CXCursor*)C)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1EvalResult_1getKind (JNIEnv *env, jobject obj, jlong E) { + return (jint) (clang_EvalResult_getKind((CXEvalResult)E)); +} +JNIEXPORT jint JNICALL Java_clang_externals_clang_1EvalResult_1getAsInt (JNIEnv *env, jobject obj, jlong E) { + return (jint) (clang_EvalResult_getAsInt((CXEvalResult)E)); +} +JNIEXPORT jdouble JNICALL Java_clang_externals_clang_1EvalResult_1getAsDouble (JNIEnv *env, jobject obj, jlong E) { + return (jdouble) (clang_EvalResult_getAsDouble((CXEvalResult)E)); +} +JNIEXPORT jlong JNICALL Java_clang_externals_clang_1EvalResult_1getAsStr (JNIEnv *env, jobject obj, jlong E) { + return (jlong) (clang_EvalResult_getAsStr((CXEvalResult)E)); +} +JNIEXPORT void JNICALL Java_clang_externals_clang_1EvalResult_1dispose (JNIEnv *env, jobject obj, jlong E) { + clang_EvalResult_dispose((CXEvalResult)E); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getRemappings (JNIEnv *env, jobject obj, jlong path) { return (jlong) (clang_getRemappings((char*)path)); @@ -885,19 +953,19 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1getRemappingsFromFileList (J return (jlong) (clang_getRemappingsFromFileList((char**)filePaths, (unsigned int)numFiles)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1remap_1getNumFiles (JNIEnv *env, jobject obj, jlong arg0) { - return (jint) (clang_remap_getNumFiles((void*)arg0)); + return (jint) (clang_remap_getNumFiles((CXRemapping)arg0)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1remap_1getFilenames (JNIEnv *env, jobject obj, jlong arg0, jint index, jlong original, jlong transformed) { - clang_remap_getFilenames((void*)arg0, (unsigned int)index, (CXString*)original, (CXString*)transformed); + clang_remap_getFilenames((CXRemapping)arg0, (unsigned int)index, (CXString*)original, (CXString*)transformed); } JNIEXPORT void JNICALL Java_clang_externals_clang_1remap_1dispose (JNIEnv *env, jobject obj, jlong arg0) { - clang_remap_dispose((void*)arg0); + clang_remap_dispose((CXRemapping)arg0); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1findReferencesInFile (JNIEnv *env, jobject obj, jlong cursor, jlong file, jlong visitor) { - return (jint) (clang_findReferencesInFile(*(CXCursor*)cursor, (void*)file, *(CXCursorAndRangeVisitor*)visitor)); + return (jint) (clang_findReferencesInFile(*(CXCursor*)cursor, (CXFile)file, *(struct CXCursorAndRangeVisitor*)visitor)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1findIncludesInFile (JNIEnv *env, jobject obj, jlong TU, jlong file, jlong visitor) { - return (jint) (clang_findIncludesInFile((struct CXTranslationUnitImpl*)TU, (void*)file, *(CXCursorAndRangeVisitor*)visitor)); + return (jint) (clang_findIncludesInFile((CXTranslationUnit)TU, (CXFile)file, *(struct CXCursorAndRangeVisitor*)visitor)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1index_1isEntityObjCContainerKind (JNIEnv *env, jobject obj, jint arg0) { return (jint) (clang_index_isEntityObjCContainerKind((CXIdxEntityKind)arg0)); @@ -927,36 +995,36 @@ JNIEXPORT jlong JNICALL Java_clang_externals_clang_1index_1getClientContainer (J return (jlong) (clang_index_getClientContainer((CXIdxContainerInfo*)arg0)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1index_1setClientContainer (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - clang_index_setClientContainer((CXIdxContainerInfo*)arg0, (void*)arg1); + clang_index_setClientContainer((CXIdxContainerInfo*)arg0, (CXIdxClientContainer)arg1); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1index_1getClientEntity (JNIEnv *env, jobject obj, jlong arg0) { return (jlong) (clang_index_getClientEntity((CXIdxEntityInfo*)arg0)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1index_1setClientEntity (JNIEnv *env, jobject obj, jlong arg0, jlong arg1) { - clang_index_setClientEntity((CXIdxEntityInfo*)arg0, (void*)arg1); + clang_index_setClientEntity((CXIdxEntityInfo*)arg0, (CXIdxClientEntity)arg1); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1IndexAction_1create (JNIEnv *env, jobject obj, jlong CIdx) { - return (jlong) (clang_IndexAction_create((void*)CIdx)); + return (jlong) (clang_IndexAction_create((CXIndex)CIdx)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1IndexAction_1dispose (JNIEnv *env, jobject obj, jlong arg0) { - clang_IndexAction_dispose((void*)arg0); + clang_IndexAction_dispose((CXIndexAction)arg0); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1indexSourceFile (JNIEnv *env, jobject obj, jlong arg0, jlong client_data, jlong index_callbacks, jint index_callbacks_size, jint index_options, jlong source_filename, jlong command_line_args, jint num_command_line_args, jlong unsaved_files, jint num_unsaved_files, jlong out_TU, jint TU_options) { - return (jint) (clang_indexSourceFile((void*)arg0, (void*)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (struct CXTranslationUnitImpl**)out_TU, (unsigned int)TU_options)); + return (jint) (clang_indexSourceFile((CXIndexAction)arg0, (CXClientData)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (CXTranslationUnit*)out_TU, (unsigned int)TU_options)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1indexSourceFileFullArgv (JNIEnv *env, jobject obj, jlong arg0, jlong client_data, jlong index_callbacks, jint index_callbacks_size, jint index_options, jlong source_filename, jlong command_line_args, jint num_command_line_args, jlong unsaved_files, jint num_unsaved_files, jlong out_TU, jint TU_options) { - return (jint) (clang_indexSourceFileFullArgv((void*)arg0, (void*)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (struct CXTranslationUnitImpl**)out_TU, (unsigned int)TU_options)); + return (jint) (clang_indexSourceFileFullArgv((CXIndexAction)arg0, (CXClientData)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (char*)source_filename, (char**)command_line_args, (int)num_command_line_args, (struct CXUnsavedFile*)unsaved_files, (unsigned int)num_unsaved_files, (CXTranslationUnit*)out_TU, (unsigned int)TU_options)); } JNIEXPORT jint JNICALL Java_clang_externals_clang_1indexTranslationUnit (JNIEnv *env, jobject obj, jlong arg0, jlong client_data, jlong index_callbacks, jint index_callbacks_size, jint index_options, jlong arg5) { - return (jint) (clang_indexTranslationUnit((void*)arg0, (void*)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (struct CXTranslationUnitImpl*)arg5)); + return (jint) (clang_indexTranslationUnit((CXIndexAction)arg0, (CXClientData)client_data, (IndexerCallbacks*)index_callbacks, (unsigned int)index_callbacks_size, (unsigned int)index_options, (CXTranslationUnit)arg5)); } JNIEXPORT void JNICALL Java_clang_externals_clang_1indexLoc_1getFileLocation (JNIEnv *env, jobject obj, jlong loc, jlong indexFile, jlong file, jlong line, jlong column, jlong offset) { - clang_indexLoc_getFileLocation(*(CXIdxLoc*)loc, (void**)indexFile, (void**)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); + clang_indexLoc_getFileLocation(*(CXIdxLoc*)loc, (CXIdxClientFile*)indexFile, (CXFile*)file, (unsigned int*)line, (unsigned int*)column, (unsigned int*)offset); } JNIEXPORT jlong JNICALL Java_clang_externals_clang_1indexLoc_1getCXSourceLocation (JNIEnv *env, jobject obj, jlong loc, jlong retValPlacement) { *(CXSourceLocation*)retValPlacement = clang_indexLoc_getCXSourceLocation(*(CXIdxLoc*)loc); return (jlong) retValPlacement; } JNIEXPORT jint JNICALL Java_clang_externals_clang_1Type_1visitFields (JNIEnv *env, jobject obj, jlong T, jlong visitor, jlong client_data) { - return (jint) (clang_Type_visitFields(*(CXType*)T, (enum CXVisitorResult (*)(CXCursor, void*))visitor, (void*)client_data)); + return (jint) (clang_Type_visitFields(*(CXType*)T, (CXFieldVisitor)visitor, (CXClientData)client_data)); } diff --git a/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/Clang.kt b/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/Clang.kt index 8dff8851951..813a6f3f8a0 100644 --- a/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/Clang.kt +++ b/Interop/Indexer/prebuilt/nativeInteropStubs/kotlin/clang/Clang.kt @@ -19,11 +19,18 @@ fun ctime(arg0: CPointer?): CPointer? { return CPointer.createNullable(res) } +fun difftime(arg0: time_t, arg1: time_t): Double { + val _arg0 = arg0 + val _arg1 = arg1 + val res = externals.difftime(_arg0, _arg1) + return res +} + fun getdate(arg0: String?): CPointer? { - memScoped { + return memScoped { val _arg0 = arg0?.toCString(memScope).rawPtr val res = externals.getdate(_arg0) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -46,23 +53,23 @@ fun mktime(arg0: CPointer?): time_t { } fun strftime(arg0: String?, arg1: size_t, arg2: String?, arg3: CPointer?): size_t { - memScoped { + return memScoped { val _arg0 = arg0?.toCString(memScope).rawPtr val _arg1 = arg1 val _arg2 = arg2?.toCString(memScope).rawPtr val _arg3 = arg3.rawValue val res = externals.strftime(_arg0, _arg1, _arg2, _arg3) - return res + res } } fun strptime(arg0: String?, arg1: String?, arg2: CPointer?): CPointer? { - memScoped { + return memScoped { val _arg0 = arg0?.toCString(memScope).rawPtr val _arg1 = arg1?.toCString(memScope).rawPtr val _arg2 = arg2.rawValue val res = externals.strptime(_arg0, _arg1, _arg2) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -78,20 +85,20 @@ fun tzset(): Unit { } fun asctime_r(arg0: CPointer?, arg1: String?): CPointer? { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _arg1 = arg1?.toCString(memScope).rawPtr val res = externals.asctime_r(_arg0, _arg1) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } fun ctime_r(arg0: CPointer?, arg1: String?): CPointer? { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _arg1 = arg1?.toCString(memScope).rawPtr val res = externals.ctime_r(_arg0, _arg1) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -202,12 +209,12 @@ fun clang_VirtualFileOverlay_create(options: Int): CXVirtualFileOverlay? { } fun clang_VirtualFileOverlay_addFileMapping(arg0: CXVirtualFileOverlay?, virtualPath: String?, realPath: String?): CXErrorCode { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _virtualPath = virtualPath?.toCString(memScope).rawPtr val _realPath = realPath?.toCString(memScope).rawPtr val res = externals.clang_VirtualFileOverlay_addFileMapping(_arg0, _virtualPath, _realPath) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } @@ -246,20 +253,20 @@ fun clang_ModuleMapDescriptor_create(options: Int): CXModuleMapDescriptor? { } fun clang_ModuleMapDescriptor_setFrameworkModuleName(arg0: CXModuleMapDescriptor?, name: String?): CXErrorCode { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _name = name?.toCString(memScope).rawPtr val res = externals.clang_ModuleMapDescriptor_setFrameworkModuleName(_arg0, _name) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } fun clang_ModuleMapDescriptor_setUmbrellaHeader(arg0: CXModuleMapDescriptor?, name: String?): CXErrorCode { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _name = name?.toCString(memScope).rawPtr val res = externals.clang_ModuleMapDescriptor_setUmbrellaHeader(_arg0, _name) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } @@ -332,11 +339,11 @@ fun clang_isFileMultipleIncludeGuarded(tu: CXTranslationUnit?, file: CXFile?): I } fun clang_getFile(tu: CXTranslationUnit?, file_name: String?): CXFile? { - memScoped { + return memScoped { val _tu = tu.rawValue val _file_name = file_name?.toCString(memScope).rawPtr val res = externals.clang_getFile(_tu, _file_name) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -508,12 +515,12 @@ fun clang_getDiagnosticInSet(Diags: CXDiagnosticSet?, Index: Int): CXDiagnostic? } fun clang_loadDiagnostics(file: String?, error: CPointer?, errorString: CPointer?): CXDiagnosticSet? { - memScoped { + return memScoped { val _file = file?.toCString(memScope).rawPtr val _error = error.rawValue val _errorString = errorString.rawValue val res = externals.clang_loadDiagnostics(_file, _error, _errorString) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -652,7 +659,7 @@ fun clang_getTranslationUnitSpelling(CTUnit: CXTranslationUnit?, retValPlacement } fun clang_createTranslationUnitFromSourceFile(CIdx: CXIndex?, source_filename: String?, num_clang_command_line_args: Int, clang_command_line_args: CPointer>?, num_unsaved_files: Int, unsaved_files: CPointer?): CXTranslationUnit? { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _source_filename = source_filename?.toCString(memScope).rawPtr val _num_clang_command_line_args = num_clang_command_line_args @@ -660,26 +667,26 @@ fun clang_createTranslationUnitFromSourceFile(CIdx: CXIndex?, source_filename: S val _num_unsaved_files = num_unsaved_files val _unsaved_files = unsaved_files.rawValue val res = externals.clang_createTranslationUnitFromSourceFile(_CIdx, _source_filename, _num_clang_command_line_args, _clang_command_line_args, _num_unsaved_files, _unsaved_files) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } fun clang_createTranslationUnit(CIdx: CXIndex?, ast_filename: String?): CXTranslationUnit? { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _ast_filename = ast_filename?.toCString(memScope).rawPtr val res = externals.clang_createTranslationUnit(_CIdx, _ast_filename) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } fun clang_createTranslationUnit2(CIdx: CXIndex?, ast_filename: String?, out_TU: CPointer?): CXErrorCode { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _ast_filename = ast_filename?.toCString(memScope).rawPtr val _out_TU = out_TU.rawValue val res = externals.clang_createTranslationUnit2(_CIdx, _ast_filename, _out_TU) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } @@ -689,7 +696,7 @@ fun clang_defaultEditingTranslationUnitOptions(): Int { } fun clang_parseTranslationUnit(CIdx: CXIndex?, source_filename: String?, command_line_args: CPointer>?, num_command_line_args: Int, unsaved_files: CPointer?, num_unsaved_files: Int, options: Int): CXTranslationUnit? { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _source_filename = source_filename?.toCString(memScope).rawPtr val _command_line_args = command_line_args.rawValue @@ -698,12 +705,12 @@ fun clang_parseTranslationUnit(CIdx: CXIndex?, source_filename: String?, command val _num_unsaved_files = num_unsaved_files val _options = options val res = externals.clang_parseTranslationUnit(_CIdx, _source_filename, _command_line_args, _num_command_line_args, _unsaved_files, _num_unsaved_files, _options) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } fun clang_parseTranslationUnit2(CIdx: CXIndex?, source_filename: String?, command_line_args: CPointer>?, num_command_line_args: Int, unsaved_files: CPointer?, num_unsaved_files: Int, options: Int, out_TU: CPointer?): CXErrorCode { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _source_filename = source_filename?.toCString(memScope).rawPtr val _command_line_args = command_line_args.rawValue @@ -713,12 +720,12 @@ fun clang_parseTranslationUnit2(CIdx: CXIndex?, source_filename: String?, comman val _options = options val _out_TU = out_TU.rawValue val res = externals.clang_parseTranslationUnit2(_CIdx, _source_filename, _command_line_args, _num_command_line_args, _unsaved_files, _num_unsaved_files, _options, _out_TU) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } fun clang_parseTranslationUnit2FullArgv(CIdx: CXIndex?, source_filename: String?, command_line_args: CPointer>?, num_command_line_args: Int, unsaved_files: CPointer?, num_unsaved_files: Int, options: Int, out_TU: CPointer?): CXErrorCode { - memScoped { + return memScoped { val _CIdx = CIdx.rawValue val _source_filename = source_filename?.toCString(memScope).rawPtr val _command_line_args = command_line_args.rawValue @@ -728,7 +735,7 @@ fun clang_parseTranslationUnit2FullArgv(CIdx: CXIndex?, source_filename: String? val _options = options val _out_TU = out_TU.rawValue val res = externals.clang_parseTranslationUnit2FullArgv(_CIdx, _source_filename, _command_line_args, _num_command_line_args, _unsaved_files, _num_unsaved_files, _options, _out_TU) - return CXErrorCode.byValue(res) + CXErrorCode.byValue(res) } } @@ -739,12 +746,12 @@ fun clang_defaultSaveOptions(TU: CXTranslationUnit?): Int { } fun clang_saveTranslationUnit(TU: CXTranslationUnit?, FileName: String?, options: Int): Int { - memScoped { + return memScoped { val _TU = TU.rawValue val _FileName = FileName?.toCString(memScope).rawPtr val _options = options val res = externals.clang_saveTranslationUnit(_TU, _FileName, _options) - return res + res } } @@ -856,6 +863,12 @@ fun clang_isAttribute(arg0: CXCursorKind): Int { return res } +fun clang_Cursor_hasAttrs(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_Cursor_hasAttrs(_C) + return res +} + fun clang_isInvalid(arg0: CXCursorKind): Int { val _arg0 = arg0.value val res = externals.clang_isInvalid(_arg0) @@ -1124,6 +1137,24 @@ fun clang_isConstQualifiedType(T: CXType): Int { return res } +fun clang_Cursor_isMacroFunctionLike(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_Cursor_isMacroFunctionLike(_C) + return res +} + +fun clang_Cursor_isMacroBuiltin(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_Cursor_isMacroBuiltin(_C) + return res +} + +fun clang_Cursor_isFunctionInlined(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_Cursor_isFunctionInlined(_C) + return res +} + fun clang_isVolatileQualifiedType(T: CXType): Int { val _T = T.rawPtr val res = externals.clang_isVolatileQualifiedType(_T) @@ -1157,6 +1188,13 @@ fun clang_getDeclObjCTypeEncoding(C: CXCursor, retValPlacement: NativePlacement) return interpretPointed(res) } +fun clang_Type_getObjCEncoding(type: CXType, retValPlacement: NativePlacement): CXString { + val _type = type.rawPtr + val _retValPlacement = retValPlacement.alloc().rawPtr + val res = externals.clang_Type_getObjCEncoding(_type, _retValPlacement) + return interpretPointed(res) +} + fun clang_getTypeKindSpelling(K: CXTypeKind, retValPlacement: NativePlacement): CXString { val _K = K.value val _retValPlacement = retValPlacement.alloc().rawPtr @@ -1236,6 +1274,13 @@ fun clang_getArraySize(T: CXType): Long { return res } +fun clang_Type_getNamedType(T: CXType, retValPlacement: NativePlacement): CXType { + val _T = T.rawPtr + val _retValPlacement = retValPlacement.alloc().rawPtr + val res = externals.clang_Type_getNamedType(_T, _retValPlacement) + return interpretPointed(res) +} + fun clang_Type_getAlignOf(T: CXType): Long { val _T = T.rawPtr val res = externals.clang_Type_getAlignOf(_T) @@ -1256,11 +1301,11 @@ fun clang_Type_getSizeOf(T: CXType): Long { } fun clang_Type_getOffsetOf(T: CXType, S: String?): Long { - memScoped { + return memScoped { val _T = T.rawPtr val _S = S?.toCString(memScope).rawPtr val res = externals.clang_Type_getOffsetOf(_T, _S) - return res + res } } @@ -1357,61 +1402,61 @@ fun clang_getCursorUSR(arg0: CXCursor, retValPlacement: NativePlacement): CXStri } fun clang_constructUSR_ObjCClass(class_name: String?, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _class_name = class_name?.toCString(memScope).rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCClass(_class_name, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } fun clang_constructUSR_ObjCCategory(class_name: String?, category_name: String?, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _class_name = class_name?.toCString(memScope).rawPtr val _category_name = category_name?.toCString(memScope).rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCCategory(_class_name, _category_name, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } fun clang_constructUSR_ObjCProtocol(protocol_name: String?, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _protocol_name = protocol_name?.toCString(memScope).rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCProtocol(_protocol_name, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } fun clang_constructUSR_ObjCIvar(name: String?, classUSR: CXString, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _name = name?.toCString(memScope).rawPtr val _classUSR = classUSR.rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCIvar(_name, _classUSR, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } fun clang_constructUSR_ObjCMethod(name: String?, isInstanceMethod: Int, classUSR: CXString, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _name = name?.toCString(memScope).rawPtr val _isInstanceMethod = isInstanceMethod val _classUSR = classUSR.rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCMethod(_name, _isInstanceMethod, _classUSR, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } fun clang_constructUSR_ObjCProperty(property: String?, classUSR: CXString, retValPlacement: NativePlacement): CXString { - memScoped { + return memScoped { val _property = property?.toCString(memScope).rawPtr val _classUSR = classUSR.rawPtr val _retValPlacement = retValPlacement.alloc().rawPtr val res = externals.clang_constructUSR_ObjCProperty(_property, _classUSR, _retValPlacement) - return interpretPointed(res) + interpretPointed(res) } } @@ -1603,12 +1648,42 @@ fun clang_Module_getTopLevelHeader(arg0: CXTranslationUnit?, Module: CXModule?, return CPointer.createNullable(res) } +fun clang_CXXConstructor_isConvertingConstructor(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_CXXConstructor_isConvertingConstructor(_C) + return res +} + +fun clang_CXXConstructor_isCopyConstructor(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_CXXConstructor_isCopyConstructor(_C) + return res +} + +fun clang_CXXConstructor_isDefaultConstructor(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_CXXConstructor_isDefaultConstructor(_C) + return res +} + +fun clang_CXXConstructor_isMoveConstructor(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_CXXConstructor_isMoveConstructor(_C) + return res +} + fun clang_CXXField_isMutable(C: CXCursor): Int { val _C = C.rawPtr val res = externals.clang_CXXField_isMutable(_C) return res } +fun clang_CXXMethod_isDefaulted(C: CXCursor): Int { + val _C = C.rawPtr + val res = externals.clang_CXXMethod_isDefaulted(_C) + return res +} + fun clang_CXXMethod_isPureVirtual(C: CXCursor): Int { val _C = C.rawPtr val res = externals.clang_CXXMethod_isPureVirtual(_C) @@ -1824,7 +1899,7 @@ fun clang_defaultCodeCompleteOptions(): Int { } fun clang_codeCompleteAt(TU: CXTranslationUnit?, complete_filename: String?, complete_line: Int, complete_column: Int, unsaved_files: CPointer?, num_unsaved_files: Int, options: Int): CPointer? { - memScoped { + return memScoped { val _TU = TU.rawValue val _complete_filename = complete_filename?.toCString(memScope).rawPtr val _complete_line = complete_line @@ -1833,7 +1908,7 @@ fun clang_codeCompleteAt(TU: CXTranslationUnit?, complete_filename: String?, com val _num_unsaved_files = num_unsaved_files val _options = options val res = externals.clang_codeCompleteAt(_TU, _complete_filename, _complete_line, _complete_column, _unsaved_files, _num_unsaved_files, _options) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -1910,11 +1985,47 @@ fun clang_getInclusions(tu: CXTranslationUnit?, visitor: CXInclusionVisitor?, cl return res } +fun clang_Cursor_Evaluate(C: CXCursor): CXEvalResult? { + val _C = C.rawPtr + val res = externals.clang_Cursor_Evaluate(_C) + return CPointer.createNullable(res) +} + +fun clang_EvalResult_getKind(E: CXEvalResult?): CXEvalResultKind { + val _E = E.rawValue + val res = externals.clang_EvalResult_getKind(_E) + return CXEvalResultKind.byValue(res) +} + +fun clang_EvalResult_getAsInt(E: CXEvalResult?): Int { + val _E = E.rawValue + val res = externals.clang_EvalResult_getAsInt(_E) + return res +} + +fun clang_EvalResult_getAsDouble(E: CXEvalResult?): Double { + val _E = E.rawValue + val res = externals.clang_EvalResult_getAsDouble(_E) + return res +} + +fun clang_EvalResult_getAsStr(E: CXEvalResult?): CPointer? { + val _E = E.rawValue + val res = externals.clang_EvalResult_getAsStr(_E) + return CPointer.createNullable(res) +} + +fun clang_EvalResult_dispose(E: CXEvalResult?): Unit { + val _E = E.rawValue + val res = externals.clang_EvalResult_dispose(_E) + return res +} + fun clang_getRemappings(path: String?): CXRemapping? { - memScoped { + return memScoped { val _path = path?.toCString(memScope).rawPtr val res = externals.clang_getRemappings(_path) - return CPointer.createNullable(res) + CPointer.createNullable(res) } } @@ -2049,7 +2160,7 @@ fun clang_IndexAction_dispose(arg0: CXIndexAction?): Unit { } fun clang_indexSourceFile(arg0: CXIndexAction?, client_data: CXClientData?, index_callbacks: CPointer?, index_callbacks_size: Int, index_options: Int, source_filename: String?, command_line_args: CPointer>?, num_command_line_args: Int, unsaved_files: CPointer?, num_unsaved_files: Int, out_TU: CPointer?, TU_options: Int): Int { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _client_data = client_data.rawValue val _index_callbacks = index_callbacks.rawValue @@ -2063,12 +2174,12 @@ fun clang_indexSourceFile(arg0: CXIndexAction?, client_data: CXClientData?, inde val _out_TU = out_TU.rawValue val _TU_options = TU_options val res = externals.clang_indexSourceFile(_arg0, _client_data, _index_callbacks, _index_callbacks_size, _index_options, _source_filename, _command_line_args, _num_command_line_args, _unsaved_files, _num_unsaved_files, _out_TU, _TU_options) - return res + res } } fun clang_indexSourceFileFullArgv(arg0: CXIndexAction?, client_data: CXClientData?, index_callbacks: CPointer?, index_callbacks_size: Int, index_options: Int, source_filename: String?, command_line_args: CPointer>?, num_command_line_args: Int, unsaved_files: CPointer?, num_unsaved_files: Int, out_TU: CPointer?, TU_options: Int): Int { - memScoped { + return memScoped { val _arg0 = arg0.rawValue val _client_data = client_data.rawValue val _index_callbacks = index_callbacks.rawValue @@ -2082,7 +2193,7 @@ fun clang_indexSourceFileFullArgv(arg0: CXIndexAction?, client_data: CXClientDat val _out_TU = out_TU.rawValue val _TU_options = TU_options val res = externals.clang_indexSourceFileFullArgv(_arg0, _client_data, _index_callbacks, _index_callbacks_size, _index_options, _source_filename, _command_line_args, _num_command_line_args, _unsaved_files, _num_unsaved_files, _out_TU, _TU_options) - return res + res } } @@ -2340,8 +2451,6 @@ class CXVirtualFileOverlayImpl(override val rawPtr: NativePtr) : COpaque class CXModuleMapDescriptorImpl(override val rawPtr: NativePtr) : COpaque -class CXTranslationUnitImpl(override val rawPtr: NativePtr) : COpaque - class CXUnsavedFile(override val rawPtr: NativePtr) : CStructVar() { companion object : Type(24, 8) @@ -2381,6 +2490,8 @@ class CXFileUniqueID(override val rawPtr: NativePtr) : CStructVar() { } +class CXTranslationUnitImpl(override val rawPtr: NativePtr) : COpaque + class CXSourceLocation(override val rawPtr: NativePtr) : CStructVar() { companion object : Type(24, 8) @@ -3045,6 +3156,7 @@ enum class CXTranslationUnit_Flags(val value: Int) { CXTranslationUnit_SkipFunctionBodies(64), CXTranslationUnit_IncludeBriefCommentsInCodeCompletion(128), CXTranslationUnit_CreatePreambleOnFirstParse(256), + CXTranslationUnit_KeepGoing(512), ; companion object { @@ -3253,7 +3365,8 @@ enum class CXCursorKind(val value: Int) { CXCursor_ObjCBoolLiteralExpr(145), CXCursor_ObjCSelfExpr(146), CXCursor_OMPArraySectionExpr(147), - CXCursor_LastExpr(147), + CXCursor_ObjCAvailabilityCheckExpr(148), + CXCursor_LastExpr(148), CXCursor_FirstStmt(200), CXCursor_UnexposedStmt(200), CXCursor_LabelStmt(201), @@ -3317,7 +3430,16 @@ enum class CXCursorKind(val value: Int) { CXCursor_OMPTaskLoopDirective(258), CXCursor_OMPTaskLoopSimdDirective(259), CXCursor_OMPDistributeDirective(260), - CXCursor_LastStmt(260), + CXCursor_OMPTargetEnterDataDirective(261), + CXCursor_OMPTargetExitDataDirective(262), + CXCursor_OMPTargetParallelDirective(263), + CXCursor_OMPTargetParallelForDirective(264), + CXCursor_OMPTargetUpdateDirective(265), + CXCursor_OMPDistributeParallelForDirective(266), + CXCursor_OMPDistributeParallelForSimdDirective(267), + CXCursor_OMPDistributeSimdDirective(268), + CXCursor_OMPTargetParallelForSimdDirective(269), + CXCursor_LastStmt(269), CXCursor_TranslationUnit(300), CXCursor_FirstAttr(400), CXCursor_UnexposedAttr(400), @@ -3350,8 +3472,9 @@ enum class CXCursorKind(val value: Int) { CXCursor_LastPreprocessing(503), CXCursor_ModuleImportDecl(600), CXCursor_TypeAliasTemplateDecl(601), + CXCursor_StaticAssert(602), CXCursor_FirstExtraDecl(600), - CXCursor_LastExtraDecl(601), + CXCursor_LastExtraDecl(602), CXCursor_OverloadCandidate(700), ; @@ -3456,6 +3579,7 @@ enum class CXTypeKind(val value: Int) { CXType_ObjCId(27), CXType_ObjCClass(28), CXType_ObjCSel(29), + CXType_Float128(30), CXType_FirstBuiltin(2), CXType_LastBuiltin(29), CXType_Complex(100), @@ -3477,6 +3601,7 @@ enum class CXTypeKind(val value: Int) { CXType_DependentSizedArray(116), CXType_MemberPointer(117), CXType_Auto(118), + CXType_Elaborated(119), ; companion object { @@ -3504,6 +3629,9 @@ enum class CXCallingConv(val value: Int) { CXCallingConv_X86_64Win64(10), CXCallingConv_X86_64SysV(11), CXCallingConv_X86VectorCall(12), + CXCallingConv_Swift(13), + CXCallingConv_PreserveMost(14), + CXCallingConv_PreserveAll(15), CXCallingConv_Invalid(100), CXCallingConv_Unexposed(200), ; @@ -3657,6 +3785,7 @@ enum class CXObjCPropertyAttrKind(val value: Int) { CXObjCPropertyAttr_weak(512), CXObjCPropertyAttr_strong(1024), CXObjCPropertyAttr_unsafe_unretained(2048), + CXObjCPropertyAttr_class(4096), ; companion object { @@ -3824,6 +3953,28 @@ enum class CXCompletionContext(val value: Int) { } } +enum class CXEvalResultKind(val value: Int) { + CXEval_Int(1), + CXEval_Float(2), + CXEval_ObjCStrLiteral(3), + CXEval_StrLiteral(4), + CXEval_CFStr(5), + CXEval_Other(6), + CXEval_UnExposed(0), + ; + + companion object { + fun byValue(value: Int) = CXEvalResultKind.values().find { it.value == value }!! + } + + class Var(override val rawPtr: NativePtr) : CEnumVar() { + companion object : Type(CInt32Var.size.toInt()) + var value: CXEvalResultKind + get() = byValue(this.reinterpret().value) + set(value) { this.reinterpret().value = value.value } + } +} + enum class CXVisitorResult(val value: Int) { CXVisit_Break(0), CXVisit_Continue(1), @@ -4090,6 +4241,9 @@ typealias CXCompletionString = COpaquePointer typealias CXInclusionVisitorVar = CPointerVarWithValueMappedTo typealias CXInclusionVisitor = CFunctionPointer +typealias CXEvalResultVar = CPointerVarWithValueMappedTo +typealias CXEvalResult = COpaquePointer + typealias CXRemappingVar = CPointerVarWithValueMappedTo typealias CXRemapping = COpaquePointer @@ -4195,36 +4349,38 @@ object CFunctionType13 : CAdaptedFunctionTypeImpl<(COpaquePointer?, CPointer convertType(clang_Type_getNamedType(type, memScope)) + CXType_Unexposed -> { val canonicalType = clang_getCanonicalType(type, memScope) if (canonicalType.kind.value != CXType_Unexposed) { diff --git a/backend.native/build.gradle b/backend.native/build.gradle index cd106cbace0..f6dbf70c3bc 100644 --- a/backend.native/build.gradle +++ b/backend.native/build.gradle @@ -113,7 +113,8 @@ List llvmLinkerOpts() { '-lLLVMBitReader', '-lLLVMMC', '-lLLVMCore', - '-lLLVMSupport' + '-lLLVMSupport', + '-lLLVMDebugInfoCodeView' ] final List res = new ArrayList<>() diff --git a/backend.native/konan.properties b/backend.native/konan.properties index 56e630975a5..e217c877a97 100644 --- a/backend.native/konan.properties +++ b/backend.native/konan.properties @@ -4,7 +4,7 @@ // macbook arch.osx = x86_64 sysRoot.osx = target-sysroot-1-darwin-macos -llvmHome.osx = clang+llvm-3.8.0-darwin-macos +llvmHome.osx = clang+llvm-3.9.0-darwin-macos llvmLtoFlags.osx = -O3 -function-sections -exported-symbol=_main llvmLlcFlags.osx = -mtriple=x86_64-apple-macosx10.10.0 linkerKonanFlags.osx = -lc++ @@ -15,7 +15,7 @@ osVersionMin.osx = -macosx_version_min 10.10.0 arch.osx-ios = arm64 sysRoot.osx-ios = target-sysroot-1-darwin-macos targetSysRoot.osx-ios = target-sysroot-1-darwin-ios -llvmHome.osx-ios = clang+llvm-3.8.0-darwin-macos +llvmHome.osx-ios = clang+llvm-3.9.0-darwin-macos llvmLtoFlags.osx-ios = -O3 -function-sections -exported-symbol=_main llvmLlcFlags.osx-ios = -mtriple=arm64-apple-ios5.0.0 linkerKonanFlags.osx-ios = -lc++ @@ -26,7 +26,7 @@ osVersionMin.osx-ios = -iphoneos_version_min 5.0.0 arch.osx-ios-sim = x86_64 sysRoot.osx-ios-sim = target-sysroot-1-darwin-macos targetSysRoot.osx-ios-sim = target-sysroot-1-darwin-ios-sim -llvmHome.osx-ios-sim = clang+llvm-3.8.0-darwin-macos +llvmHome.osx-ios-sim = clang+llvm-3.9.0-darwin-macos llvmLtoFlags.osx-ios-sim = -O3 -function-sections -exported-symbol=_main llvmLlcFlags.osx-ios-sim = -mtriple=x86_64-apple-ios5.0.0 linkerKonanFlags.osx-ios-sim = -lc++ @@ -35,7 +35,7 @@ osVersionMin.osx-ios-sim = -ios_simulator_version_min 5.0.0 // linux sysRoot.linux = target-gcc-toolchain-3-linux-x86-64/x86_64-unknown-linux-gnu/sysroot -llvmHome.linux = clang+llvm-3.8.0-linux-x86-64 +llvmHome.linux = clang+llvm-3.9.0-linux-x86-64 libGcc.linux = target-gcc-toolchain-3-linux-x86-64/lib/gcc/x86_64-unknown-linux-gnu/4.8.5 llvmLtoFlags.linux = -O3 -function-sections -exported-symbol=main llvmLlcFlags.linux = -march=x86-64 diff --git a/gradle.properties b/gradle.properties index 16d25a8f970..c200f5373e4 100644 --- a/gradle.properties +++ b/gradle.properties @@ -1,4 +1,4 @@ kotlin_version=1.1-M03 -llvmVersion = 3.8.0 +llvmVersion = 3.9.0 #kotlinCompilerModule=org.jetbrains.kotlin:kotlin-compiler:1.1-SNAPSHOT kotlinCompilerModule=org.jetbrains.kotlin:kotlin-compiler:1.1-20170217.175209-427 \ No newline at end of file