| ... | @@ -425,6 +425,7 @@ void ZigClang_detect_enum_StmtClass(clang::Stmt::StmtClass x) { | ... | @@ -425,6 +425,7 @@ void ZigClang_detect_enum_StmtClass(clang::Stmt::StmtClass x) { |
| 425 | case clang::Stmt::OMPCriticalDirectiveClass: | 425 | case clang::Stmt::OMPCriticalDirectiveClass: |
| 426 | case clang::Stmt::OMPDepobjDirectiveClass: | 426 | case clang::Stmt::OMPDepobjDirectiveClass: |
| 427 | case clang::Stmt::OMPDispatchDirectiveClass: | 427 | case clang::Stmt::OMPDispatchDirectiveClass: |
| | 428 | case clang::Stmt::OMPErrorDirectiveClass: |
| 428 | case clang::Stmt::OMPFlushDirectiveClass: | 429 | case clang::Stmt::OMPFlushDirectiveClass: |
| 429 | case clang::Stmt::OMPInteropDirectiveClass: | 430 | case clang::Stmt::OMPInteropDirectiveClass: |
| 430 | case clang::Stmt::OMPDistributeDirectiveClass: | 431 | case clang::Stmt::OMPDistributeDirectiveClass: |
| ... | @@ -529,6 +530,7 @@ void ZigClang_detect_enum_StmtClass(clang::Stmt::StmtClass x) { | ... | @@ -529,6 +530,7 @@ void ZigClang_detect_enum_StmtClass(clang::Stmt::StmtClass x) { |
| 529 | case clang::Stmt::CXXNewExprClass: | 530 | case clang::Stmt::CXXNewExprClass: |
| 530 | case clang::Stmt::CXXNoexceptExprClass: | 531 | case clang::Stmt::CXXNoexceptExprClass: |
| 531 | case clang::Stmt::CXXNullPtrLiteralExprClass: | 532 | case clang::Stmt::CXXNullPtrLiteralExprClass: |
| | 533 | case clang::Stmt::CXXParenListInitExprClass: |
| 532 | case clang::Stmt::CXXPseudoDestructorExprClass: | 534 | case clang::Stmt::CXXPseudoDestructorExprClass: |
| 533 | case clang::Stmt::CXXRewrittenBinaryOperatorClass: | 535 | case clang::Stmt::CXXRewrittenBinaryOperatorClass: |
| 534 | case clang::Stmt::CXXScalarValueInitExprClass: | 536 | case clang::Stmt::CXXScalarValueInitExprClass: |
| ... | @@ -661,6 +663,7 @@ static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPCancellationPointDirective | ... | @@ -661,6 +663,7 @@ static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPCancellationPointDirective |
| 661 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPCriticalDirectiveClass == clang::Stmt::OMPCriticalDirectiveClass, ""); | 663 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPCriticalDirectiveClass == clang::Stmt::OMPCriticalDirectiveClass, ""); |
| 662 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDepobjDirectiveClass == clang::Stmt::OMPDepobjDirectiveClass, ""); | 664 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDepobjDirectiveClass == clang::Stmt::OMPDepobjDirectiveClass, ""); |
| 663 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDispatchDirectiveClass == clang::Stmt::OMPDispatchDirectiveClass, ""); | 665 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDispatchDirectiveClass == clang::Stmt::OMPDispatchDirectiveClass, ""); |
| | 666 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPErrorDirectiveClass == clang::Stmt::OMPErrorDirectiveClass, ""); |
| 664 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPFlushDirectiveClass == clang::Stmt::OMPFlushDirectiveClass, ""); | 667 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPFlushDirectiveClass == clang::Stmt::OMPFlushDirectiveClass, ""); |
| 665 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPInteropDirectiveClass == clang::Stmt::OMPInteropDirectiveClass, ""); | 668 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPInteropDirectiveClass == clang::Stmt::OMPInteropDirectiveClass, ""); |
| 666 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDistributeDirectiveClass == clang::Stmt::OMPDistributeDirectiveClass, ""); | 669 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_OMPDistributeDirectiveClass == clang::Stmt::OMPDistributeDirectiveClass, ""); |
| ... | @@ -765,6 +768,7 @@ static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXInheritedCtorInitExprClass | ... | @@ -765,6 +768,7 @@ static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXInheritedCtorInitExprClass |
| 765 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNewExprClass == clang::Stmt::CXXNewExprClass, ""); | 768 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNewExprClass == clang::Stmt::CXXNewExprClass, ""); |
| 766 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNoexceptExprClass == clang::Stmt::CXXNoexceptExprClass, ""); | 769 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNoexceptExprClass == clang::Stmt::CXXNoexceptExprClass, ""); |
| 767 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNullPtrLiteralExprClass == clang::Stmt::CXXNullPtrLiteralExprClass, ""); | 770 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXNullPtrLiteralExprClass == clang::Stmt::CXXNullPtrLiteralExprClass, ""); |
| | 771 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXParenListInitExprClass == clang::Stmt::CXXParenListInitExprClass, ""); |
| 768 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXPseudoDestructorExprClass == clang::Stmt::CXXPseudoDestructorExprClass, ""); | 772 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXPseudoDestructorExprClass == clang::Stmt::CXXPseudoDestructorExprClass, ""); |
| 769 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXRewrittenBinaryOperatorClass == clang::Stmt::CXXRewrittenBinaryOperatorClass, ""); | 773 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXRewrittenBinaryOperatorClass == clang::Stmt::CXXRewrittenBinaryOperatorClass, ""); |
| 770 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXScalarValueInitExprClass == clang::Stmt::CXXScalarValueInitExprClass, ""); | 774 | static_assert((clang::Stmt::StmtClass)ZigClangStmt_CXXScalarValueInitExprClass == clang::Stmt::CXXScalarValueInitExprClass, ""); |
| ... | @@ -915,11 +919,13 @@ void ZigClang_detect_enum_DeclKind(clang::Decl::Kind x) { | ... | @@ -915,11 +919,13 @@ void ZigClang_detect_enum_DeclKind(clang::Decl::Kind x) { |
| 915 | case clang::Decl::FileScopeAsm: | 919 | case clang::Decl::FileScopeAsm: |
| 916 | case clang::Decl::Friend: | 920 | case clang::Decl::Friend: |
| 917 | case clang::Decl::FriendTemplate: | 921 | case clang::Decl::FriendTemplate: |
| | 922 | case clang::Decl::ImplicitConceptSpecialization: |
| 918 | case clang::Decl::Import: | 923 | case clang::Decl::Import: |
| 919 | case clang::Decl::LifetimeExtendedTemporary: | 924 | case clang::Decl::LifetimeExtendedTemporary: |
| 920 | case clang::Decl::LinkageSpec: | 925 | case clang::Decl::LinkageSpec: |
| 921 | case clang::Decl::Using: | 926 | case clang::Decl::Using: |
| 922 | case clang::Decl::UsingEnum: | 927 | case clang::Decl::UsingEnum: |
| | 928 | case clang::Decl::HLSLBuffer: |
| 923 | case clang::Decl::Label: | 929 | case clang::Decl::Label: |
| 924 | case clang::Decl::Namespace: | 930 | case clang::Decl::Namespace: |
| 925 | case clang::Decl::NamespaceAlias: | 931 | case clang::Decl::NamespaceAlias: |
| ... | @@ -988,6 +994,7 @@ void ZigClang_detect_enum_DeclKind(clang::Decl::Kind x) { | ... | @@ -988,6 +994,7 @@ void ZigClang_detect_enum_DeclKind(clang::Decl::Kind x) { |
| 988 | case clang::Decl::PragmaDetectMismatch: | 994 | case clang::Decl::PragmaDetectMismatch: |
| 989 | case clang::Decl::RequiresExprBody: | 995 | case clang::Decl::RequiresExprBody: |
| 990 | case clang::Decl::StaticAssert: | 996 | case clang::Decl::StaticAssert: |
| | 997 | case clang::Decl::TopLevelStmt: |
| 991 | case clang::Decl::TranslationUnit: | 998 | case clang::Decl::TranslationUnit: |
| 992 | break; | 999 | break; |
| 993 | } | 1000 | } |
| ... | @@ -1003,11 +1010,13 @@ static_assert((clang::Decl::Kind)ZigClangDeclExternCContext == clang::Decl::Exte | ... | @@ -1003,11 +1010,13 @@ static_assert((clang::Decl::Kind)ZigClangDeclExternCContext == clang::Decl::Exte |
| 1003 | static_assert((clang::Decl::Kind)ZigClangDeclFileScopeAsm == clang::Decl::FileScopeAsm, ""); | 1010 | static_assert((clang::Decl::Kind)ZigClangDeclFileScopeAsm == clang::Decl::FileScopeAsm, ""); |
| 1004 | static_assert((clang::Decl::Kind)ZigClangDeclFriend == clang::Decl::Friend, ""); | 1011 | static_assert((clang::Decl::Kind)ZigClangDeclFriend == clang::Decl::Friend, ""); |
| 1005 | static_assert((clang::Decl::Kind)ZigClangDeclFriendTemplate == clang::Decl::FriendTemplate, ""); | 1012 | static_assert((clang::Decl::Kind)ZigClangDeclFriendTemplate == clang::Decl::FriendTemplate, ""); |
| | 1013 | static_assert((clang::Decl::Kind)ZigClangDeclImplicitConceptSpecialization == clang::Decl::ImplicitConceptSpecialization, ""); |
| 1006 | static_assert((clang::Decl::Kind)ZigClangDeclImport == clang::Decl::Import, ""); | 1014 | static_assert((clang::Decl::Kind)ZigClangDeclImport == clang::Decl::Import, ""); |
| 1007 | static_assert((clang::Decl::Kind)ZigClangDeclLifetimeExtendedTemporary == clang::Decl::LifetimeExtendedTemporary, ""); | 1015 | static_assert((clang::Decl::Kind)ZigClangDeclLifetimeExtendedTemporary == clang::Decl::LifetimeExtendedTemporary, ""); |
| 1008 | static_assert((clang::Decl::Kind)ZigClangDeclLinkageSpec == clang::Decl::LinkageSpec, ""); | 1016 | static_assert((clang::Decl::Kind)ZigClangDeclLinkageSpec == clang::Decl::LinkageSpec, ""); |
| 1009 | static_assert((clang::Decl::Kind)ZigClangDeclUsing == clang::Decl::Using, ""); | 1017 | static_assert((clang::Decl::Kind)ZigClangDeclUsing == clang::Decl::Using, ""); |
| 1010 | static_assert((clang::Decl::Kind)ZigClangDeclUsingEnum == clang::Decl::UsingEnum, ""); | 1018 | static_assert((clang::Decl::Kind)ZigClangDeclUsingEnum == clang::Decl::UsingEnum, ""); |
| | 1019 | static_assert((clang::Decl::Kind)ZigClangDeclHLSLBuffer == clang::Decl::HLSLBuffer, ""); |
| 1011 | static_assert((clang::Decl::Kind)ZigClangDeclLabel == clang::Decl::Label, ""); | 1020 | static_assert((clang::Decl::Kind)ZigClangDeclLabel == clang::Decl::Label, ""); |
| 1012 | static_assert((clang::Decl::Kind)ZigClangDeclNamespace == clang::Decl::Namespace, ""); | 1021 | static_assert((clang::Decl::Kind)ZigClangDeclNamespace == clang::Decl::Namespace, ""); |
| 1013 | static_assert((clang::Decl::Kind)ZigClangDeclNamespaceAlias == clang::Decl::NamespaceAlias, ""); | 1022 | static_assert((clang::Decl::Kind)ZigClangDeclNamespaceAlias == clang::Decl::NamespaceAlias, ""); |
| ... | @@ -1076,6 +1085,7 @@ static_assert((clang::Decl::Kind)ZigClangDeclPragmaComment == clang::Decl::Pragm | ... | @@ -1076,6 +1085,7 @@ static_assert((clang::Decl::Kind)ZigClangDeclPragmaComment == clang::Decl::Pragm |
| 1076 | static_assert((clang::Decl::Kind)ZigClangDeclPragmaDetectMismatch == clang::Decl::PragmaDetectMismatch, ""); | 1085 | static_assert((clang::Decl::Kind)ZigClangDeclPragmaDetectMismatch == clang::Decl::PragmaDetectMismatch, ""); |
| 1077 | static_assert((clang::Decl::Kind)ZigClangDeclRequiresExprBody == clang::Decl::RequiresExprBody, ""); | 1086 | static_assert((clang::Decl::Kind)ZigClangDeclRequiresExprBody == clang::Decl::RequiresExprBody, ""); |
| 1078 | static_assert((clang::Decl::Kind)ZigClangDeclStaticAssert == clang::Decl::StaticAssert, ""); | 1087 | static_assert((clang::Decl::Kind)ZigClangDeclStaticAssert == clang::Decl::StaticAssert, ""); |
| | 1088 | static_assert((clang::Decl::Kind)ZigClangDeclTopLevelStmt == clang::Decl::TopLevelStmt, ""); |
| 1079 | static_assert((clang::Decl::Kind)ZigClangDeclTranslationUnit == clang::Decl::TranslationUnit, ""); | 1089 | static_assert((clang::Decl::Kind)ZigClangDeclTranslationUnit == clang::Decl::TranslationUnit, ""); |
| 1080 | | 1090 | |
| 1081 | void ZigClang_detect_enum_BuiltinTypeKind(clang::BuiltinType::Kind x) { | 1091 | void ZigClang_detect_enum_BuiltinTypeKind(clang::BuiltinType::Kind x) { |
| ... | @@ -2496,14 +2506,32 @@ ZigClangASTUnit *ZigClangLoadFromCommandLine(const char **args_begin, const char | ... | @@ -2496,14 +2506,32 @@ ZigClangASTUnit *ZigClangLoadFromCommandLine(const char **args_begin, const char |
| 2496 | bool single_file_parse = false; | 2506 | bool single_file_parse = false; |
| 2497 | bool for_serialization = false; | 2507 | bool for_serialization = false; |
| 2498 | bool retain_excluded_conditional_blocks = false; | 2508 | bool retain_excluded_conditional_blocks = false; |
| | 2509 | clang::ArrayRef<clang::ASTUnit::RemappedFile> remapped_files = std::nullopt; |
| 2499 | std::unique_ptr<clang::ASTUnit> err_unit; | 2510 | std::unique_ptr<clang::ASTUnit> err_unit; |
| | 2511 | llvm::IntrusiveRefCntPtr<llvm::vfs::FileSystem> VFS = nullptr; |
| | 2512 | std::optional<llvm::StringRef> ModuleFormat = std::nullopt; |
| 2500 | clang::ASTUnit *ast_unit = clang::ASTUnit::LoadFromCommandLine( | 2513 | clang::ASTUnit *ast_unit = clang::ASTUnit::LoadFromCommandLine( |
| 2501 | args_begin, args_end, | 2514 | args_begin, args_end, |
| 2502 | pch_container_ops, diags, resources_path, | 2515 | pch_container_ops, |
| 2503 | only_local_decls, clang::CaptureDiagsKind::All, clang::None, true, 0, clang::TU_Complete, | 2516 | diags, |
| 2504 | false, false, allow_pch_with_compiler_errors, clang::SkipFunctionBodiesScope::None, | 2517 | resources_path, |
| 2505 | single_file_parse, user_files_are_volatile, for_serialization, retain_excluded_conditional_blocks, | 2518 | only_local_decls, |
| 2506 | clang::None, &err_unit, nullptr); | 2519 | clang::CaptureDiagsKind::All, |
| | 2520 | remapped_files, |
| | 2521 | true, // remapped files keep original name |
| | 2522 | 0, // precompiled preable after n parses |
| | 2523 | clang::TU_Complete, |
| | 2524 | false, // cache code completion results |
| | 2525 | false, // include brief comments in code completion |
| | 2526 | allow_pch_with_compiler_errors, |
| | 2527 | clang::SkipFunctionBodiesScope::None, |
| | 2528 | single_file_parse, |
| | 2529 | user_files_are_volatile, |
| | 2530 | for_serialization, |
| | 2531 | retain_excluded_conditional_blocks, |
| | 2532 | ModuleFormat, |
| | 2533 | &err_unit, |
| | 2534 | VFS); |
| 2507 | | 2535 | |
| 2508 | *errors_len = 0; | 2536 | *errors_len = 0; |
| 2509 | | 2537 | |
| ... | @@ -2836,9 +2864,9 @@ struct ZigClangQualType ZigClangMacroQualifiedType_getModifiedType(const struct | ... | @@ -2836,9 +2864,9 @@ struct ZigClangQualType ZigClangMacroQualifiedType_getModifiedType(const struct |
| 2836 | return bitcast(casted->getModifiedType()); | 2864 | return bitcast(casted->getModifiedType()); |
| 2837 | } | 2865 | } |
| 2838 | | 2866 | |
| 2839 | struct ZigClangQualType ZigClangTypeOfType_getUnderlyingType(const struct ZigClangTypeOfType *self) { | 2867 | struct ZigClangQualType ZigClangTypeOfType_getUnmodifiedType(const struct ZigClangTypeOfType *self) { |
| 2840 | auto casted = reinterpret_cast<const clang::TypeOfType *>(self); | 2868 | auto casted = reinterpret_cast<const clang::TypeOfType *>(self); |
| 2841 | return bitcast(casted->getUnderlyingType()); | 2869 | return bitcast(casted->getUnmodifiedType()); |
| 2842 | } | 2870 | } |
| 2843 | | 2871 | |
| 2844 | const struct ZigClangExpr *ZigClangTypeOfExprType_getUnderlyingExpr(const struct ZigClangTypeOfExprType *self) { | 2872 | const struct ZigClangExpr *ZigClangTypeOfExprType_getUnderlyingExpr(const struct ZigClangTypeOfExprType *self) { |