[cfe-commits] r135860 - in /cfe/trunk: include/clang-c/Index.h tools/libclang/CIndex.cpp tools/libclang/libclang.darwin.exports tools/libclang/libclang.exports

Douglas Gregor dgregor at apple.com
Sat Jul 23 12:35:14 PDT 2011


Author: dgregor
Date: Sat Jul 23 14:35:14 2011
New Revision: 135860

URL: http://llvm.org/viewvc/llvm-project?rev=135860&view=rev
Log:
Extend libclang with clang_equalRanges, from Erik Verbruggen!

Modified:
    cfe/trunk/include/clang-c/Index.h
    cfe/trunk/tools/libclang/CIndex.cpp
    cfe/trunk/tools/libclang/libclang.darwin.exports
    cfe/trunk/tools/libclang/libclang.exports

Modified: cfe/trunk/include/clang-c/Index.h
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/include/clang-c/Index.h?rev=135860&r1=135859&r2=135860&view=diff
==============================================================================
--- cfe/trunk/include/clang-c/Index.h (original)
+++ cfe/trunk/include/clang-c/Index.h Sat Jul 23 14:35:14 2011
@@ -328,6 +328,14 @@
                                             CXSourceLocation end);
 
 /**
+ * \brief Determine whether two ranges are equivalent.
+ *
+ * \returns non-zero if the ranges are the same, zero if they differ.
+ */
+CINDEX_LINKAGE unsigned clang_equalRanges(CXSourceRange range1,
+                                          CXSourceRange range2);
+
+/**
  * \brief Retrieve the file, line, column, and offset represented by
  * the given source location.
  *

Modified: cfe/trunk/tools/libclang/CIndex.cpp
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/CIndex.cpp?rev=135860&r1=135859&r2=135860&view=diff
==============================================================================
--- cfe/trunk/tools/libclang/CIndex.cpp (original)
+++ cfe/trunk/tools/libclang/CIndex.cpp Sat Jul 23 14:35:14 2011
@@ -2786,6 +2786,14 @@
                            begin.int_data, end.int_data };
   return Result;
 }
+
+unsigned clang_equalRanges(CXSourceRange range1, CXSourceRange range2)
+{
+  return range1.ptr_data[0] == range2.ptr_data[0]
+      && range1.ptr_data[1] == range2.ptr_data[1]
+      && range1.begin_int_data == range2.begin_int_data
+      && range1.end_int_data == range2.end_int_data;
+}
 } // end: extern "C"
 
 static void createNullLocation(CXFile *file, unsigned *line,

Modified: cfe/trunk/tools/libclang/libclang.darwin.exports
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/libclang.darwin.exports?rev=135860&r1=135859&r2=135860&view=diff
==============================================================================
--- cfe/trunk/tools/libclang/libclang.darwin.exports (original)
+++ cfe/trunk/tools/libclang/libclang.darwin.exports Sat Jul 23 14:35:14 2011
@@ -36,6 +36,7 @@
 _clang_enableStackTraces
 _clang_equalCursors
 _clang_equalLocations
+_clang_equalRanges
 _clang_equalTypes
 _clang_executeOnThread
 _clang_formatDiagnostic

Modified: cfe/trunk/tools/libclang/libclang.exports
URL: http://llvm.org/viewvc/llvm-project/cfe/trunk/tools/libclang/libclang.exports?rev=135860&r1=135859&r2=135860&view=diff
==============================================================================
--- cfe/trunk/tools/libclang/libclang.exports (original)
+++ cfe/trunk/tools/libclang/libclang.exports Sat Jul 23 14:35:14 2011
@@ -36,6 +36,7 @@
 clang_enableStackTraces
 clang_equalCursors
 clang_equalLocations
+clang_equalRanges
 clang_equalTypes
 clang_executeOnThread
 clang_formatDiagnostic





More information about the cfe-commits mailing list