summaryrefslogtreecommitdiffstats
path: root/clang
Commit message (Collapse)AuthorAgeFilesLines
* add assertionChris Lattner2009-02-161-0/+1
| | | | llvm-svn: 64652
* code cleanupChris Lattner2009-02-161-17/+17
| | | | llvm-svn: 64651
* wrap long lines.Chris Lattner2009-02-161-6/+8
| | | | llvm-svn: 64650
* assert/ErrorUnsupported in unimplemented stub functions instead ofDaniel Dunbar2009-02-161-16/+25
| | | | | | miscompiling. llvm-svn: 64647
* Add pretty-printing (for GraphViz) support for RangeConstraintManager.Ted Kremenek2009-02-161-36/+8
| | | | llvm-svn: 64646
* Add support for deprecating ObjC properties. Unlike GCC, we warn that the Chris Lattner2009-02-162-6/+44
| | | | | | | property is deprecated, not the getter/setter if the attribute is on the property. llvm-svn: 64644
* propagate attributes onto property decls.Chris Lattner2009-02-161-5/+7
| | | | llvm-svn: 64643
* define __OBJC2__ for objc's nonfragile abi.Fariborz Jahanian2009-02-161-0/+2
| | | | llvm-svn: 64642
* When a function with a prototype is redeclared without a prototype,Douglas Gregor2009-02-163-1/+54
| | | | | | | merge the prototype into the redeclaration (and make a note in the declaration). Fixes PR3588. llvm-svn: 64641
* ccc: @<filename> arguments are only treated specially if <filename>Daniel Dunbar2009-02-161-2/+8
| | | | | | | exists, otherwise gcc just treats as an input. - PR3591 llvm-svn: 64640
* Adopt a more principled approach to invalid declarations:Douglas Gregor2009-02-1610-92/+152
| | | | | | | | | | | | | | | | | | | | | | | - If a declaration is an invalid redeclaration of an existing name, complain about the invalid redeclaration then avoid adding it to the AST (we can still parse the definition or initializer, if any). - If the declaration is invalid but there is no prior declaration with that name, introduce the invalid declaration into the AST (for later error recovery). - If the declaration is an invalid redeclaration of a builtin that starts with __builtin_, we produce an error and drop the redeclaration. If it is an invalid redeclaration of a library builtin (e.g., malloc, printf), warn (don't error!) and drop the redeclaration. If a user attempts to define a builtin, produce an error and (if it's a library builtin like malloc) suggest -ffreestanding. This addresses <rdar://problem/6097585> and PR2892. However, PR3588 is still going to cause some problems when builtins are redeclared without a prototype. llvm-svn: 64639
* RangeConstraintManager is not on by default.Ted Kremenek2009-02-161-1/+1
| | | | llvm-svn: 64638
* add support for deprecated objc ivars.Chris Lattner2009-02-163-1/+15
| | | | llvm-svn: 64637
* specify a triple to use, otherwise we get errors on this test forChris Lattner2009-02-161-1/+1
| | | | | | hosts with a different size_t type. llvm-svn: 64636
* update expected-warning line.Chris Lattner2009-02-161-1/+1
| | | | llvm-svn: 64635
* Add support for deprecated members of RecordDecls (e.g. struct fields).Chris Lattner2009-02-163-2/+11
| | | | llvm-svn: 64634
* castToDeclContext/castFromDeclContext are only required to be included in ↵Argyrios Kyrtzidis2009-02-163-60/+6
| | | | | | | | the class of decls that directly derive from DeclContext. Their subclasses don't need them. llvm-svn: 64632
* castToDeclContext/castFromDeclContext are not meant to be used directly; ↵Argyrios Kyrtzidis2009-02-161-18/+18
| | | | | | | | they are used indirectly by cast/dyn_cast. All Decl <-> DeclContext casting should be done through cast/dyn_cast. llvm-svn: 64631
* DeclContext had its "casting machinery" inside the class definition so that ↵Argyrios Kyrtzidis2009-02-162-48/+47
| | | | | | | | if a new declaration context Decl appeared, the necessary changes would be in one place. Since, now, only DeclNodes.def needs to be modified, move things out-of-line and simplify the DeclContext class. llvm-svn: 64630
* Make DeclContexts maintenance a bit easier.Argyrios Kyrtzidis2009-02-163-46/+32
| | | | | | | | | -In DeclNodes.def, only mark as DeclContexts the top classes that directly derive from DeclContext. If the Decl has subclasses, it should be marked with DECL_CONTEXT_BASE. -Use DeclNodes.def to automate the DeclContext::classof and DeclContext::CastTo definitions. llvm-svn: 64629
* Untabify.Ben Laurie2009-02-161-2/+2
| | | | llvm-svn: 64628
* Do not register 'RangeConstraintManager' as the default ConstraintManager.Ted Kremenek2009-02-161-2/+0
| | | | llvm-svn: 64627
* Don't allow taking the address of an element in an ext_vectorNate Begeman2009-02-152-4/+9
| | | | llvm-svn: 64614
* lots of trailing whitespaceChris Lattner2009-02-151-1/+1
| | | | llvm-svn: 64613
* Refactor the deprecated and unavailable checks into a newChris Lattner2009-02-155-54/+58
| | | | | | | | | DiagnoseUseOfDeprecatedDecl method. This ensures that they are treated consistently. This gets us 'unavailable' support on a few new types of decls, and makes sure we consistently silence deprecated when the caller is also deprecated. llvm-svn: 64612
* implement gcc/testsuite/objc.dg/method-attribute-3.m, by improving error ↵Chris Lattner2009-02-152-1/+10
| | | | | | recovery. llvm-svn: 64609
* don't pass a random english string in as a string argument to Diag.Chris Lattner2009-02-152-1/+3
| | | | llvm-svn: 64608
* fix a fixme in -emit-html output: highlight the entire range of a macroChris Lattner2009-02-151-17/+21
| | | | | | | instantiation, which highlights the arguments of a function like macro as well as its identifier. llvm-svn: 64607
* add a new SourceManager::getInstantiationRange helper method.Chris Lattner2009-02-153-5/+27
| | | | llvm-svn: 64606
* fix build on systems where uint64_t != unsigned long longChris Lattner2009-02-151-1/+1
| | | | llvm-svn: 64605
* fix PR3579: __LINE__ expands to the presumed location of the Chris Lattner2009-02-151-1/+11
| | | | | | | | *end* of a macro instantiation, not the start of it. This is really all about bug-for-bug compatibility with GCC, but not doing this breaks the FreeBSD kernel. llvm-svn: 64604
* fix PR3579: __LINE__ expands to the presumed location of the Chris Lattner2009-02-151-1/+10
| | | | | | | | *end* of a macro instantiation, not the start of it. This is really all about bug-for-bug compatibility with GCC, but not doing this breaks the FreeBSD kernel. llvm-svn: 64603
* track "just a little more" location information for macro instantiations.Chris Lattner2009-02-1512-54/+124
| | | | | | | | | | | | Now instead of just tracking the expansion history, also track the full range of the macro that got replaced. For object-like macros, this doesn't change anything. For _Pragma and function-like macros, this means we track the locations of the ')'. This is required for PR3579 because apparently GCC uses the line of the ')' of a function-like macro as the location to expand __LINE__ to. llvm-svn: 64601
* PR3589: Don't simplify libcalls with -ffreestanding.Daniel Dunbar2009-02-152-1/+10
| | | | llvm-svn: 64599
* Remove accidental duplication of content in .h file.Ted Kremenek2009-02-151-81/+1
| | | | llvm-svn: 64596
* Fix pasto noticed by Anders Johnsen.Daniel Dunbar2009-02-151-2/+2
| | | | llvm-svn: 64595
* implement support for attribute(unavailable) on objc methods.Chris Lattner2009-02-151-8/+24
| | | | | | This implements gcc/testsuite/objc.dg/method-attribute-1.m llvm-svn: 64581
* Obj-C non-fragile ABI: Fix types of a few globals; these were notDaniel Dunbar2009-02-151-20/+26
| | | | | | creating valid LLVM structures (although they work fined). llvm-svn: 64580
* ccc: Pass -P to clang.Daniel Dunbar2009-02-151-0/+1
| | | | llvm-svn: 64578
* allow implementations of deprecated functions to use deprecated symbols.Chris Lattner2009-02-152-5/+11
| | | | llvm-svn: 64572
* Use getNameAsCString instead of getNameAsString and reflow the type.Mike Stump2009-02-143-7/+7
| | | | | | Thanks Anders. llvm-svn: 64571
* Generate the helper function for blocks. Now basic codegen isMike Stump2009-02-145-15/+25
| | | | | | starting to work for blocks. llvm-svn: 64570
* Fixed a bad ir-gen bug which caused a dejagnu test to fail.Fariborz Jahanian2009-02-141-1/+1
| | | | | | | Now we are pretty close to be in sync with objc's classic abi when it comes to passing dejagnu objc executable tests. llvm-svn: 64569
* Add a test case for -ffreestanding that redefines malloc.Douglas Gregor2009-02-144-1/+15
| | | | | | | Warn that complex numbers are an extension in a freestanding C99 implementation. llvm-svn: 64568
* Add -ffreestanding to suppress the implicit declaration of library builtins ↵Douglas Gregor2009-02-148-37/+65
| | | | | | like printf and malloc. Fixes PR3586 llvm-svn: 64566
* Add expected note. Surely people test before the check in stuff.Mike Stump2009-02-141-1/+1
| | | | llvm-svn: 64565
* Add svn:eol-style=native to some filesCedric Venet2009-02-1419-2729/+2729
| | | | | | Correct two files with inconsistent lines endings. llvm-svn: 64564
* Fixed a problem caused by foreward @class useFariborz Jahanian2009-02-144-2/+39
| | | | | | | | which consequently caused a Seg fault. during meta-data generation. It also addresses an issue related to late binding of newly synthesize ivars (when we support it). llvm-svn: 64563
* Add support for deprecated Obj-C methods. The semantics mostly match what ↵Anders Carlsson2009-02-142-0/+77
| | | | | | gcc has. llvm-svn: 64562
* Add hook to add attributes to function declarations that we knowDouglas Gregor2009-02-1416-99/+152
| | | | | | | | | | | | | | | | about, whether they are builtins or not. Use this to add the appropriate "format" attribute to NSLog, NSLogv, asprintf, and vasprintf, and to translate builtin attributes (from Builtins.def) into actual attributes on the function declaration. Use the "printf" format attribute on function declarations to determine whether we should do format string checking, rather than looking at an ad hoc list of builtins and "known" function names. Be a bit more careful about when we consider a function a "builtin" in C++. llvm-svn: 64561
OpenPOWER on IntegriCloud