|
34 | 34 | * compatible, thus CINDEX_VERSION_MAJOR is expected to remain stable.
|
35 | 35 | */
|
36 | 36 | #define CINDEX_VERSION_MAJOR 0
|
37 |
| -#define CINDEX_VERSION_MINOR 35 |
| 37 | +#define CINDEX_VERSION_MINOR 37 |
38 | 38 |
|
39 | 39 | #define CINDEX_VERSION_ENCODE(major, minor) ( \
|
40 | 40 | ((major) * 10000) \
|
@@ -328,7 +328,7 @@ clang_isFileMultipleIncludeGuarded(CXTranslationUnit tu, CXFile file);
|
328 | 328 | *
|
329 | 329 | * \param tu the translation unit
|
330 | 330 | *
|
331 |
| -* \param file_name the name of the file. |
| 331 | + * \param file_name the name of the file. |
332 | 332 | *
|
333 | 333 | * \returns the file handle for the named file in the translation unit \p tu,
|
334 | 334 | * or a NULL file handle if the file was not a part of this translation unit.
|
@@ -628,6 +628,15 @@ typedef struct {
|
628 | 628 | CINDEX_LINKAGE CXSourceRangeList *clang_getSkippedRanges(CXTranslationUnit tu,
|
629 | 629 | CXFile file);
|
630 | 630 |
|
| 631 | +/** |
| 632 | + * \brief Retrieve all ranges from all files that were skipped by the |
| 633 | + * preprocessor. |
| 634 | + * |
| 635 | + * The preprocessor will skip lines when they are surrounded by an |
| 636 | + * if/ifdef/ifndef directive whose condition does not evaluate to true. |
| 637 | + */ |
| 638 | +CINDEX_LINKAGE CXSourceRangeList *clang_getAllSkippedRanges(CXTranslationUnit tu); |
| 639 | + |
631 | 640 | /**
|
632 | 641 | * \brief Destroy the given \c CXSourceRangeList.
|
633 | 642 | */
|
@@ -2327,7 +2336,47 @@ enum CXCursorKind {
|
2327 | 2336 | */
|
2328 | 2337 | CXCursor_OMPTargetParallelForSimdDirective = 269,
|
2329 | 2338 |
|
2330 |
| - CXCursor_LastStmt = CXCursor_OMPTargetParallelForSimdDirective, |
| 2339 | + /** \brief OpenMP target simd directive. |
| 2340 | + */ |
| 2341 | + CXCursor_OMPTargetSimdDirective = 270, |
| 2342 | + |
| 2343 | + /** \brief OpenMP teams distribute directive. |
| 2344 | + */ |
| 2345 | + CXCursor_OMPTeamsDistributeDirective = 271, |
| 2346 | + |
| 2347 | + /** \brief OpenMP teams distribute simd directive. |
| 2348 | + */ |
| 2349 | + CXCursor_OMPTeamsDistributeSimdDirective = 272, |
| 2350 | + |
| 2351 | + /** \brief OpenMP teams distribute parallel for simd directive. |
| 2352 | + */ |
| 2353 | + CXCursor_OMPTeamsDistributeParallelForSimdDirective = 273, |
| 2354 | + |
| 2355 | + /** \brief OpenMP teams distribute parallel for directive. |
| 2356 | + */ |
| 2357 | + CXCursor_OMPTeamsDistributeParallelForDirective = 274, |
| 2358 | + |
| 2359 | + /** \brief OpenMP target teams directive. |
| 2360 | + */ |
| 2361 | + CXCursor_OMPTargetTeamsDirective = 275, |
| 2362 | + |
| 2363 | + /** \brief OpenMP target teams distribute directive. |
| 2364 | + */ |
| 2365 | + CXCursor_OMPTargetTeamsDistributeDirective = 276, |
| 2366 | + |
| 2367 | + /** \brief OpenMP target teams distribute parallel for directive. |
| 2368 | + */ |
| 2369 | + CXCursor_OMPTargetTeamsDistributeParallelForDirective = 277, |
| 2370 | + |
| 2371 | + /** \brief OpenMP target teams distribute parallel for simd directive. |
| 2372 | + */ |
| 2373 | + CXCursor_OMPTargetTeamsDistributeParallelForSimdDirective = 278, |
| 2374 | + |
| 2375 | + /** \brief OpenMP target teams distribute simd directive. |
| 2376 | + */ |
| 2377 | + CXCursor_OMPTargetTeamsDistributeSimdDirective = 279, |
| 2378 | + |
| 2379 | + CXCursor_LastStmt = CXCursor_OMPTargetTeamsDistributeSimdDirective, |
2331 | 2380 |
|
2332 | 2381 | /**
|
2333 | 2382 | * \brief Cursor that represents the translation unit itself.
|
@@ -2385,8 +2434,12 @@ enum CXCursorKind {
|
2385 | 2434 | * \brief A static_assert or _Static_assert node
|
2386 | 2435 | */
|
2387 | 2436 | CXCursor_StaticAssert = 602,
|
| 2437 | + /** |
| 2438 | + * \brief a friend declaration. |
| 2439 | + */ |
| 2440 | + CXCursor_FriendDecl = 603, |
2388 | 2441 | CXCursor_FirstExtraDecl = CXCursor_ModuleImportDecl,
|
2389 |
| - CXCursor_LastExtraDecl = CXCursor_StaticAssert, |
| 2442 | + CXCursor_LastExtraDecl = CXCursor_FriendDecl, |
2390 | 2443 |
|
2391 | 2444 | /**
|
2392 | 2445 | * \brief A code completion overload candidate.
|
@@ -3003,7 +3056,7 @@ enum CXCallingConv {
|
3003 | 3056 | CXCallingConv_X86Pascal = 5,
|
3004 | 3057 | CXCallingConv_AAPCS = 6,
|
3005 | 3058 | CXCallingConv_AAPCS_VFP = 7,
|
3006 |
| - /* Value 8 was PnaclCall, but it was never used, so it could safely be re-used. */ |
| 3059 | + CXCallingConv_X86RegCall = 8, |
3007 | 3060 | CXCallingConv_IntelOclBicc = 9,
|
3008 | 3061 | CXCallingConv_X86_64Win64 = 10,
|
3009 | 3062 | CXCallingConv_X86_64SysV = 11,
|
@@ -3493,11 +3546,8 @@ enum CXRefQualifierKind {
|
3493 | 3546 | };
|
3494 | 3547 |
|
3495 | 3548 | /**
|
3496 |
| - * \brief Returns the number of template arguments for given class template |
3497 |
| - * specialization, or -1 if type \c T is not a class template specialization. |
3498 |
| - * |
3499 |
| - * Variadic argument packs count as only one argument, and can not be inspected |
3500 |
| - * further. |
| 3549 | + * \brief Returns the number of template arguments for given template |
| 3550 | + * specialization, or -1 if type \c T is not a template specialization. |
3501 | 3551 | */
|
3502 | 3552 | CINDEX_LINKAGE int clang_Type_getNumTemplateArguments(CXType T);
|
3503 | 3553 |
|
@@ -5241,6 +5291,25 @@ CINDEX_LINKAGE CXEvalResultKind clang_EvalResult_getKind(CXEvalResult E);
|
5241 | 5291 | */
|
5242 | 5292 | CINDEX_LINKAGE int clang_EvalResult_getAsInt(CXEvalResult E);
|
5243 | 5293 |
|
| 5294 | +/** |
| 5295 | + * \brief Returns the evaluation result as a long long integer if the |
| 5296 | + * kind is Int. This prevents overflows that may happen if the result is |
| 5297 | + * returned with clang_EvalResult_getAsInt. |
| 5298 | + */ |
| 5299 | +CINDEX_LINKAGE long long clang_EvalResult_getAsLongLong(CXEvalResult E); |
| 5300 | + |
| 5301 | +/** |
| 5302 | + * \brief Returns a non-zero value if the kind is Int and the evaluation |
| 5303 | + * result resulted in an unsigned integer. |
| 5304 | + */ |
| 5305 | +CINDEX_LINKAGE unsigned clang_EvalResult_isUnsignedInt(CXEvalResult E); |
| 5306 | + |
| 5307 | +/** |
| 5308 | + * \brief Returns the evaluation result as an unsigned integer if |
| 5309 | + * the kind is Int and clang_EvalResult_isUnsignedInt is non-zero. |
| 5310 | + */ |
| 5311 | +CINDEX_LINKAGE unsigned long long clang_EvalResult_getAsUnsigned(CXEvalResult E); |
| 5312 | + |
5244 | 5313 | /**
|
5245 | 5314 | * \brief Returns the evaluation result as double if the
|
5246 | 5315 | * kind is double.
|
|
0 commit comments