summaryrefslogtreecommitdiffstats
path: root/clang/lib/Frontend
Commit message (Collapse)AuthorAgeFilesLines
* Added rudimentary C++0x attribute support.Alexis Hunt2009-11-212-0/+2
| | | | | | | | | | | | | | The following attributes are currently supported in C++0x attribute lists (and in GNU ones as well): - align() - semantics believed to be conformant to n3000, except for redeclarations and what entities it may apply to - final - semantics believed to be conformant to CWG issue 817's proposed wording, except for redeclarations - noreturn - semantics believed to be conformant to n3000, except for redeclarations - carries_dependency - currently ignored (this is an optimization hint) llvm-svn: 89543
* Revised Win32 include path to search highest version in registry, plus ↵John Thompson2009-11-211-55/+109
| | | | | | platform SDK path llvm-svn: 89517
* Fix refactoro, clang-cc wasn't properly reporting errors when opening an ↵Daniel Dunbar2009-11-201-5/+5
| | | | | | output file failed. llvm-svn: 89502
* Add clang -cc1 parsing of CodeGenOptions.Daniel Dunbar2009-11-201-1/+2
| | | | llvm-svn: 89464
* Fix some default in the option classes, and some CompilerInvocation argificationDaniel Dunbar2009-11-191-15/+12
| | | | | | errors. llvm-svn: 89388
* Define __WCHAR_WIDTH__ for use in stdint.h.Ken Dyck2009-11-191-0/+1
| | | | llvm-svn: 89353
* Add __WINT_WIDTH__ to paramaterize the limits of WINT_MIN and WINT_MAX in Ken Dyck2009-11-191-0/+1
| | | | | | stdint.h. llvm-svn: 89348
* Add __SIZE_WIDTH__ to eventually replace __SIZE_TYPE__ in stdint.h.Ken Dyck2009-11-191-0/+1
| | | | llvm-svn: 89346
* Restore __INTMAX_TYPE__, __UINTMAX_TYPE__, __PTRDIFF_TYPE__, andKen Dyck2009-11-191-0/+4
| | | | | | | __INTPTR_TYPE__ as the last is used in the test/CodeGen/const-init.c and all could potentially be in use in the wild. My apologies. llvm-svn: 89345
* Remove __PTRDIFF_TYPE__ as it is no longer needed by stdint.h. It has been Ken Dyck2009-11-191-1/+0
| | | | | | replaced with __PTRDIFF_WIDTH__. llvm-svn: 89344
* Add __PTRDIFF_WIDTH__ macro to eventually replace __PTRDIFF_TYPE__ in stdint.h.Ken Dyck2009-11-191-0/+1
| | | | llvm-svn: 89342
* Remove __INTPTR_TYPE__ as it is no longer needed by stdint.h, which usesKen Dyck2009-11-191-1/+0
| | | | | | __INTPTR_WIDTH__ instead. llvm-svn: 89340
* Sketch some 'clang -cc1' support, for testing parts of CompilerInvocation.Daniel Dunbar2009-11-191-1/+0
| | | | llvm-svn: 89333
* clang-cc: Remove some more llvm::cl::init arguments, by only setting values whenDaniel Dunbar2009-11-191-1/+1
| | | | | | | | the argument is given. Also, tweak Opt.Sysroot defaulting. llvm-svn: 89318
* Change -code-completion-debug-printer to -no-code-completion-debug-printer.Daniel Dunbar2009-11-191-6/+6
| | | | | | Also, tweak a few help strings and update CompilerInvocation serialization for prev change. llvm-svn: 89317
* Predefine __INTPTR_WIDTH__ for future use in stdint.h.Ken Dyck2009-11-181-0/+1
| | | | llvm-svn: 89231
* Remove the __INTMAX_TYPE__ and __UINTMAX_TYPE__ built-in macros as they are noKen Dyck2009-11-181-2/+0
| | | | | | longer used by stdint.h. llvm-svn: 89230
* Use llvm::sys::Path to check isAbsolute, instead of hard coding. Also, ↵Daniel Dunbar2009-11-181-3/+2
| | | | | | remove random FIXME (?). llvm-svn: 89229
* Predefine __INTMAX_WIDTH__ for the future parameterization of INTMAX macros inKen Dyck2009-11-181-0/+8
| | | | | | stdint.h. llvm-svn: 89203
* Add SourceLocations to ObjCClassDecl for the class identifiers referenced by ↵Ted Kremenek2009-11-183-3/+10
| | | | | | @class. llvm-svn: 89170
* Pass source locations of identifiers referenced by @class through ↵Ted Kremenek2009-11-171-1/+2
| | | | | | Action::ActOnForwardClassDeclaration(). llvm-svn: 89162
* recognize .hpp as c++ (needed for ./configure'ing boost)Nuno Lopes2009-11-171-1/+1
| | | | llvm-svn: 89100
* add Fedora 11 include path. what a crap..Nuno Lopes2009-11-171-0/+5
| | | | llvm-svn: 89098
* Simplify CompilerInvocation::toArgs, now that LangOptions handling is more ↵Daniel Dunbar2009-11-171-6/+6
| | | | | | predictable. llvm-svn: 89074
* Move -fnext-runtime defaulting to driver (and change clang-cc default toDaniel Dunbar2009-11-171-1/+2
| | | | | | -fnext-runtime), instead of using getDefaultLangOptions. llvm-svn: 89058
* Silence some warnings produced by Clang, and add a missing headerDouglas Gregor2009-11-171-7/+7
| | | | llvm-svn: 89051
* Add initial cut at CompilerInvocation::toArgs, which "serializes" the ↵Daniel Dunbar2009-11-172-0/+548
| | | | | | | | CompilerInvocation into a list of arguments which can be passed to clang-cc (eventually, clang -cc1). - Unfortunately, this is currently a tedious and manual translation. Eventually it would be nice to automatically generate this code. llvm-svn: 89049
* Simplify PreprocessorOptions, it doesn't need abstracted field access.Daniel Dunbar2009-11-173-18/+16
| | | | llvm-svn: 89047
* Remove unused IsCXXAware and IgnoreSysRoots option from ↵Daniel Dunbar2009-11-171-2/+2
| | | | | | HeaderSearchOptions::Entry. llvm-svn: 89035
* Store more information in HeaderSearchOptions so that its initialization is notDaniel Dunbar2009-11-161-1/+8
| | | | | | language dependent. llvm-svn: 88981
* First part of changes to eliminate problems with cv-qualifiers andDouglas Gregor2009-11-162-8/+8
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | sugared types. The basic problem is that our qualifier accessors (getQualifiers, getCVRQualifiers, isConstQualified, etc.) only look at the current QualType and not at any qualifiers that come from sugared types, meaning that we won't see these qualifiers through, e.g., typedefs: typedef const int CInt; typedef CInt Self; Self.isConstQualified() currently returns false! Various bugs (e.g., PR5383) have cropped up all over the front end due to such problems. I'm addressing this problem by splitting each qualifier accessor into two versions: - the "local" version only returns qualifiers on this particular QualType instance - the "normal" version that will eventually combine qualifiers from this QualType instance with the qualifiers on the canonical type to produce the full set of qualifiers. This commit adds the local versions and switches a few callers from the "normal" version (e.g., isConstQualified) over to the "local" version (e.g., isLocalConstQualified) when that is the right thing to do, e.g., because we're printing or serializing the qualifiers. Also, switch a bunch of Context.getCanonicalType(T1).getUnqualifiedType() == Context.getCanonicalType(T2).getQualifiedType() expressions over to Context.hasSameUnqualifiedType(T1, T2) llvm-svn: 88969
* Use configure options for searching for libstdc++.Rafael Espindola2009-11-161-79/+47
| | | | llvm-svn: 88945
* Parameterize the constant-generating macros in stdint.h with new built-inKen Dyck2009-11-161-1/+9
| | | | | | | __INTn_C_SUFFIX__ macros that are defined for types with corresponding constant suffixes (i.e. long and long long). llvm-svn: 88914
* Add TargetOptions and use it when constructing targets.Daniel Dunbar2009-11-153-13/+25
| | | | | | | | - This ended up being hard to factor, sorry for the large diff. - Some post-commit cleanup to come. llvm-svn: 88833
* Add FrontendActions for all preprocessor based clang-cc actions.Daniel Dunbar2009-11-141-1/+104
| | | | llvm-svn: 88774
* Add FrontendActions, which provides a FrontendAction interface to all the ↵Daniel Dunbar2009-11-142-0/+179
| | | | | | existing AST consumer based clang-cc actions. llvm-svn: 88773
* Add FrontendAction interface, for encapsulating a "clang-cc" style action.Daniel Dunbar2009-11-142-0/+226
| | | | llvm-svn: 88772
* Shuffle VerifyDiagnosticsClient API to be less fragile.Daniel Dunbar2009-11-142-31/+37
| | | | llvm-svn: 88765
* Add CompilerInstance::InitializeSourceManager.Daniel Dunbar2009-11-141-0/+38
| | | | llvm-svn: 88764
* Switch -verify implementation to use VerifyDiagnosticClient.Daniel Dunbar2009-11-141-8/+7
| | | | | | - Not tested, but -verify with multiple inputs should work now. llvm-svn: 88750
* Add VerifyDiagnosticsClient, to replace old -verify.Daniel Dunbar2009-11-142-0/+341
| | | | | | | | | | | | - This reimplements -verify as just another DiagnosticClient, which buffers the diagnostics and checks them when the source file is complete. There are some hacks to make this work, but they are all internal, and this exposes a better external interface. - This also tweaks a few things: o Errors are now just regular diagnostics. o Frontend diagnostics are now caught (for example, errors in command line arguments), although there isn't yet a way to specify that they are expected. That would be nice though. - Not yet used. llvm-svn: 88748
* Add ASTConsumer to CompilerInstance.Daniel Dunbar2009-11-141-0/+5
| | | | llvm-svn: 88743
* Move CompilerInstance::set* methods out-of-line.Daniel Dunbar2009-11-141-0/+32
| | | | llvm-svn: 88731
* Add clang-cc option "--analyzer-experimental-internal-checks". ThisTed Kremenek2009-11-131-0/+4
| | | | | | | option enables new "internal" checks that will eventually be turned on by default but still require broader testing. llvm-svn: 88671
* Add CompilerInstance utility functions for creating output files.Daniel Dunbar2009-11-131-0/+62
| | | | llvm-svn: 88667
* Remove local splitLines reimplementation.Daniel Dunbar2009-11-131-29/+7
| | | | llvm-svn: 88661
* Add output file list to CompilerInstance, so that it can track them instead ofDaniel Dunbar2009-11-131-0/+20
| | | | | | forcing all clients to do it. llvm-svn: 87103
* Add CodeCompletion consumer to CompilerInvocation.Daniel Dunbar2009-11-131-1/+42
| | | | llvm-svn: 87100
* Add CompilerInstance::createPCHExternalASTSource.Daniel Dunbar2009-11-131-0/+38
| | | | llvm-svn: 87097
* Add ASTContext to CompilerInstance.Daniel Dunbar2009-11-131-0/+12
| | | | llvm-svn: 87095
OpenPOWER on IntegriCloud