summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
...
* Do not warn on keyword undefSerge Pavlov2014-12-126-19/+58
| | | | | | | #undef a keyword is generally harmless but used often in configuration scripts. Also added tests that I forgot to include to commit in r223114. llvm-svn: 224100
* [Objective-C]. This patch extends objc_bridge attribute to support ↵Fariborz Jahanian2014-12-113-0/+20
| | | | | | | | | | objc_bridge(id). This means that a pointer to the struct type to which the attribute appertains is a CF type (and therefore an Objective-C object of some type), but not of any specific class. rdar://19157264 llvm-svn: 224072
* [modules] When constructing paths relative to a module, strip out /./ directoryRichard Smith2014-12-1112-62/+140
| | | | | | | components. These sometimes get synthetically added, and we don't want -Ifoo and -I./foo to be treated fundamentally differently here. llvm-svn: 224055
* Instead of having -Os/-Oz add OptimizeForSize/MinSize first, and laterPaul Robinson2014-12-114-6/+27
| | | | | | | | | | having OptimizeNone remove them again, just don't add them in the first place if the function already has OptimizeNone. Note that MinSize can still appear due to attributes on different declarations; a future patch will address that. llvm-svn: 224047
* AST: Incomplete types might be zero sizedDavid Majnemer2014-12-112-3/+15
| | | | | | | | Comparing the address of an object with an incomplete type might return true with a 'distinct' object if the former has a size of zero. However, such an object should compare unequal with null. llvm-svn: 224040
* When checking for nonnull parameter attributes, also check the ParmVarDecl ↵Aaron Ballman2014-12-113-2/+15
| | | | | | since the attribute may reside there, instead of just on the FunctionDecl. Fixes PR21668. llvm-svn: 224039
* Emit warning if define or undef reserved identifier or keyword.Serge Pavlov2014-12-118-2/+115
| | | | | | Recommit of r223114, reverted in r223120. llvm-svn: 224012
* MS ABI: Fix mangling of unsigned int template paramsWill Wilson2014-12-112-1/+13
| | | | llvm-svn: 223999
* Parse: Concatenated string literals should be verified in inline asmDavid Majnemer2014-12-114-29/+18
| | | | | | | | | | While we would correctly handle asm("foo") and reject asm(L"bar"), we weren't careful to handle cases where an ascii literal could be concatenated with a wide literal. This fixes PR21822. llvm-svn: 223992
* Revert r223578, perf data collection depends on the old symbol name.Paul Robinson2014-12-103-11/+11
| | | | llvm-svn: 223987
* Diagnose attributes 'optnone' and 'minsize' on the same declaration.Paul Robinson2014-12-104-2/+25
| | | | | | | Eventually we'll diagnose them on different declarations, but let's get this part out of the way first. llvm-svn: 223985
* Revert r223980 as it had wrong commit message.Paul Robinson2014-12-104-25/+2
| | | | llvm-svn: 223984
* Rename a couple of preprocessor symbols to be more descriptive. NFC.Paul Robinson2014-12-104-2/+25
| | | | | | Review feedback from recent changes to GetSVN.cmake. llvm-svn: 223980
* Forgot to commit this change with r223975David Majnemer2014-12-101-2/+2
| | | | llvm-svn: 223979
* Add a FIXME for unifying ARM target abi handling.Eric Christopher2014-12-101-0/+1
| | | | llvm-svn: 223977
* Revert the default changing behavior part of r216662 until weEric Christopher2014-12-102-9/+8
| | | | | | | | can change the backend to be the same default. Leave the modified/new testcases with the exception of the default behavior since it increases our testing footprint. llvm-svn: 223976
* AST: Properly calculate the linkage of a IndirectFieldDeclDavid Majnemer2014-12-102-2/+9
| | | | | | | | | | | getLVForNamespaceScopeDecl believed that it wasn't possible for it to ever see an IndirectFieldDecl. However, this can occur when determining whether or not something is a redeclaration of a member of an anonymous static union. This fixes PR21858. llvm-svn: 223975
* Fixed an 80-column violation.Sean Callanan2014-12-101-6/+7
| | | | | | Thanks to Nico Weber for spotting this. llvm-svn: 223966
* DR1891, PR21787: a lambda closure type has no default constructor, rather thanRichard Smith2014-12-104-6/+34
| | | | | | having a deleted default constructor. llvm-svn: 223953
* Make test case 32/64 bit neutralDavid Blaikie2014-12-101-1/+1
| | | | llvm-svn: 223938
* DebugInfo: Location information for scalar new expressionsDavid Blaikie2014-12-102-5/+18
| | | | llvm-svn: 223937
* clang-format: Factor out UnwrappedLineFormatter into a separate file.Daniel Jasper2014-12-104-773/+869
| | | | | | No functional changes intended. llvm-svn: 223936
* Added a testcase to make sure the parser allowsSean Callanan2014-12-101-0/+6
| | | | | | | but ignores module imports in debugger mode, even inside functions. llvm-svn: 223935
* Objective-C SDK modernizer. When modernizing an enum to Fariborz Jahanian2014-12-103-22/+31
| | | | | | | NS_ENUM/NS_OPTIONS use the underlying type if there is no associated type. rdar://19198042 llvm-svn: 223934
* clang-format: Remove a few else after return statements.Daniel Jasper2014-12-101-19/+12
| | | | | | | They are against the LLVM coding conventions. No functional changes intended. llvm-svn: 223930
* OpenCL C: Add support for a set of floating point Pekka Jaaskelainen2014-12-105-4/+54
| | | | | | | | | | | | | | arithmetic relaxation flags: -cl-no-signed-zeros -cl-unsafe-math-optimizations -cl-finite-math-only -cl-fast-relaxed-math Propagate the info to FP instruction flags as well as function attributes where they are available. llvm-svn: 223928
* [mips] Removing __SIZEOF_INT128__ macro for MIPS64Simon Atanasyan2014-12-102-1/+8
| | | | | | | | | | | | | This is a temporary workaround while MIPS64 has not yet fully supported 128-bit integers. But declaration of int128 type is necessary even though `__SIZEOF_INT128__` is undefined because c++ standard header files like `limits` throw error message if `__int128` is not available. Patch by Sagar Thakur. Differential Revision: http://reviews.llvm.org/D6402 llvm-svn: 223927
* clang/test/Modules/modular_maps.cpp REQUIRES shell. chdir is unsupported on ↵NAKAMURA Takumi2014-12-101-0/+3
| | | | | | Lit internal runner. llvm-svn: 223921
* Reinstate r223753, reverted in r223759 due to breakage of clang-tools-extra.Richard Smith2014-12-1013-28/+97
| | | | | | | | | | | | | | | | | Original commit message: [modules] Add experimental -fmodule-map-file-home-is-cwd flag to -cc1. For files named by -fmodule-map-file=, and files found by 'extern module' directives, this flag specifies that we should resolve filenames relative to the current working directory rather than relative to the directory in which the module map file resides. This is aimed at fixing path handling, in particular for relative -I paths, when building modules that represent components of the current project (rather than libraries installed on the current system, which the current project has as dependencies, where we'd typically expect the module map files to be looked up implicitly). llvm-svn: 223913
* Fixed the AST importer ot use redeclaration contexts properly.Sean Callanan2014-12-101-16/+16
| | | | | | | | | | | | | | To ensure that we don't import duplicates, the ASTImporter often checks the DeclContext for a Decl before importing it to see if a Decl with the same name is already present. This is problematic if the Decl is inside a transparent context like an extern "C" block. Lookup isn't allowed on such contexts, and in fact they assert() if you do that. So instead we look at the redeclaration context -- the containing context that can be used safely for these kinds of checks -- instead. llvm-svn: 223912
* DebugInfo: Correct location information for array accesses to elements of ↵David Blaikie2014-12-102-0/+13
| | | | | | variable array type. llvm-svn: 223902
* Made the ASTImporter resilient if it can't importSean Callanan2014-12-101-1/+6
| | | | | | | | | | | | | | SourceLocations. LLDB rarely has the same files mapped into the target AST context as the source AST context, so the ASTImporter shouldn't expect to see those files there. This started to become a problem when importing entities from modules -- these have proper source locations, in contrast to all the ASTs LLDB creates which have empty ones. llvm-svn: 223900
* DebugInfo: Fix another case of array access line informationDavid Blaikie2014-12-102-0/+13
| | | | llvm-svn: 223897
* DebugInfo: Correct the location of array accessesDavid Blaikie2014-12-102-0/+12
| | | | | | | Especially relevant to ASan when dealing with complex expressions containing multiple array accesses. See PR21737. llvm-svn: 223872
* Make sure that vec_perm is listed as a static function in altivec.h.Eric Christopher2014-12-101-18/+18
| | | | llvm-svn: 223871
* Tweak test case from r223842 to make it pass on Windows MSVCReid Kleckner2014-12-101-6/+3
| | | | | | We can't mangle __complex yet, and there is no C1 emission. llvm-svn: 223870
* cmake: Make SVNVersion.inc step depend on GetSVN.cmake.Nico Weber2014-12-101-2/+4
| | | | | | | | This way, the step generating SVNVersion.inc gets rerun every time someone changes GetSVN.cmake (which is the file that decides how the contents of SVNVersion.inc look). This makes hacking on GetSVN.cmake a bit easier. llvm-svn: 223861
* Updated the AST importer to support importingSean Callanan2014-12-101-0/+30
| | | | | | | | | LinkageSpecDecls. This is relevant when LLDB wants to import Decls from non-C++ modules, since many declarations are in extern "C" blocks. llvm-svn: 223860
* Modified the Objective-C lexer and parser (only Sean Callanan2014-12-092-9/+18
| | | | | | | | | | | | | | | | in debugger mode) to accept @import declarations and pass them to the debugger. In the preprocessor, accept import declarations if the debugger is enabled, but don't actually load the module, just pass the import path on to the preprocessor callbacks. In the Objective-C parser, if it sees an import declaration in statement context (usual for LLDB), ignore it and return a NullStmt. llvm-svn: 223855
* DebugInfo: Correct location of aggregate assignmentDavid Blaikie2014-12-092-0/+14
| | | | llvm-svn: 223854
* AST: Don't assume two zero sized objects live at different addressesDavid Majnemer2014-12-092-0/+16
| | | | | | | | Zero sized objects may overlap with each other or any other object. This fixes PR21786. llvm-svn: 223852
* clang-format: Add a test for PR19603 which seems fixed (maybe by r221338?).Nico Weber2014-12-091-0/+3
| | | | llvm-svn: 223850
* Objective-C SDK modernizer. Modernize to use Fariborz Jahanian2014-12-093-6/+56
| | | | | | | property-dot-syntax when receiver is 'super'. rdar://19140267 llvm-svn: 223846
* DebugInfo: Correct location of initialization of auto __complexDavid Blaikie2014-12-092-1/+9
| | | | llvm-svn: 223842
* DebugInfo: Correct the location of initializations of auto.David Blaikie2014-12-094-4/+14
| | | | llvm-svn: 223839
* DebugInfo: Correct location for compound complex assignmentDavid Blaikie2014-12-092-4/+14
| | | | llvm-svn: 223835
* DebugInfo: Accurate location information for complex assignmentDavid Blaikie2014-12-092-20/+27
| | | | llvm-svn: 223828
* DebugInfo: Emit the correct location for initialization of a complex variableDavid Blaikie2014-12-094-15/+30
| | | | | | Especially useful for sanitizer reports. llvm-svn: 223825
* Fix a GCC error from r223803Duncan P. N. Exon Smith2014-12-091-3/+5
| | | | llvm-svn: 223814
* IR: Update clang for Metadata/Value split in r223802Duncan P. N. Exon Smith2014-12-0914-274/+266
| | | | | | Match LLVM API changes from r223802. llvm-svn: 223803
OpenPOWER on IntegriCloud