I get compile errors for just including the "clang/Basic/Diagnostic.h" header file. Is that expected? Should I include anything else? Here are the errors: $ g++ main.cpp -I llvm/tools/clang/include -I llvm/include In file included from llvm/include/llvm/Support/PointerLikeTypeTraits.h:18, from llvm/tools/clang/include/clang/Basic/SourceLocation.h:17, from llvm/tools/clang/include/clang/Basic/Diagnostic.h:18, from main.cpp:1: llvm/include/llvm/Support/DataTypes.h:45:3: error: #error "Must #define __STDC_LIMIT_MACROS before #including System/DataTypes.h" llvm/include/llvm/Support/DataTypes.h:49:3: error: #error "Must #define __STDC_CONSTANT_MACROS before " "#including System/DataTypes.h" llvm/include/llvm/Support/MathExtras.h: In function ‘bool llvm::isInt(int64_t)’: llvm/include/llvm/Support/MathExtras.h:38: error: there are no arguments to ‘INT64_C’ that depend on a template parameter, so a declaration of ‘INT64_C’ must be available llvm/include/llvm/Support/MathExtras.h:38: error: (if you use ‘-fpermissive’, G++ will accept your code, but allowing the use of an undeclared name is deprecated) llvm/include/llvm/Support/MathExtras.h:38: error: there are no arguments to ‘INT64_C’ that depend on a template parameter, so a declaration of ‘INT64_C’ must be available llvm/include/llvm/Support/MathExtras.h: In function ‘bool llvm::isUInt(uint64_t)’: llvm/include/llvm/Support/MathExtras.h:57: error: there are no arguments to ‘UINT64_C’ that depend on a template parameter, so a declaration of ‘UINT64_C’ must be available llvm/include/llvm/Support/MathExtras.h: In function ‘bool llvm::isIntN(unsigned int, int64_t)’: llvm/include/llvm/Support/MathExtras.h:82: error: ‘INT64_C’ was not declared in this scope -------------- next part -------------- An HTML attachment was scrubbed... URL: <http://lists.llvm.org/pipermail/llvm-dev/attachments/20110127/be7bf986/attachment.html>