History log of /external/clang/test/Sema/merge-decls.c
Revision Date Author Comments (<<< Hide modified files) (Show modified files >>>)
8b8a09e496fbed361d4c8e9e8cc259454a094258 29-Nov-2012 Rafael Espindola <rafael.espindola@gmail.com> Merge function types in C.

Among other differences, GCC accepts

typedef int IA[];
typedef int A10[10];
static A10 *f(void);
static IA *f(void);
void g(void) {
(void)sizeof(*f());
}

but clang used to reject it with:

invalid application of 'sizeof' to an incomplete type 'IA' (aka 'int []')

The intention of c99's 6.2.7 seems to be that we should use the composite type
and accept as gcc does.

Doing the type merging required some extra fixes:
* Use the type from the function type in initializations, even if an parameter
is available.
* Fix the merging of the noreturn attribute in function types.
* Make CodeGen handle the fact that an parameter type can be different from
the corresponding type in the function type.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168895 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
ec351f169dd608e566018829f4441ea18688ef38 27-Nov-2012 Rafael Espindola <rafael.espindola@gmail.com> Add a testcase that r168411 would break.

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@168669 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
a5728872c7702ddd09537c95bc3cbd20e1f2fb09 15-Dec-2009 Daniel Dunbar <daniel@zuster.org> Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.
- This is designed to make it obvious that %clang_cc1 is a "test variable"
which is substituted. It is '%clang_cc1' instead of '%clang -cc1' because it
can be useful to redefine what gets run as 'clang -cc1' (for example, to set
a default target).

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@91446 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
d7d5f0223bd30dfd618762349c6209dd1d5ea3e6 24-Mar-2009 Daniel Dunbar <daniel@zuster.org> Rename clang to clang-cc.

Tests and drivers updated, still need to shuffle dirs.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@67602 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
3ebc36a1c15537684a62a02a2d6c94bbb4a9e4cc 11-Feb-2009 Chris Lattner <sabre@nondot.org> testcase for rdar://6096412 which already works.


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@64289 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
64cfdb7da3cb744642fe8a99ad5c851ad3c930b2 28-Jan-2009 Daniel Dunbar <daniel@zuster.org> Handle complex types in ASTContext::mergeTypes


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63238 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
b243b7d98e51cbbd58b71666aa6b5e0ec80de6aa 28-Jan-2009 Nuno Lopes <nunoplopes@sapo.pt> add test for PR2502, which was already fixed some time ago

git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@63160 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
5f4a6829dc58cab2f76e2b98492859aa3b91e3f2 24-Nov-2008 Chris Lattner <sabre@nondot.org> Make all the 'redefinition' diagnostics more consistent, and make the
"previously defined here" diagnostics all notes.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@59920 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
837618c0945e1f67ec1e39000c568a1fa857a5a9 16-Jan-2008 Steve Naroff <snaroff@apple.com> Sema::MergeFunctionDecl()...make sure diagnostic is accurate (wrt function declarations/definitions). Patch by Carl Lewis!



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@46070 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
adbbd0c625806b9d6183920d33eb78566a8f3366 14-Jan-2008 Steve Naroff <snaroff@apple.com> Fix crasher when redefining functions. Not 100% pleased with this solution, but it is clearly an improvement. Will discuss with Chris later.



git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@45975 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c
e3995fe63cc01668bebed82339479fbc1140768c 06-Nov-2007 Chris Lattner <sabre@nondot.org> improve decl merging logic to be more correct with
functions. Patch contributed by Nuno Lopes, thanks!


git-svn-id: https://llvm.org/svn/llvm-project/cfe/trunk@43757 91177308-0d34-0410-b5e6-96231b3b80d8
/external/clang/test/Sema/merge-decls.c