llvm-project/clang/lib/Sema
Richard Smith 8210ed5586 Implement DR1265 (wg21.link/cwg1265).
Diasllow a declaration using the 'auto' type specifier from using two different
meanings of it at once, or from declaring multiple functions with deduced
return types or introducing multiple trailing return types.

The standard does not technically disallow the multiple trailing return types
case if all the declarators declare variables (such as function pointers with
trailing return types), but we disallow that too, following the clear intent.

llvm-svn: 291880
2017-01-13 02:22:01 +00:00
..
AnalysisBasedWarnings.cpp Avoid multiple -Wunreachable-code diagnostics that are triggered by 2017-01-12 10:48:03 +00:00
AttributeList.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
CMakeLists.txt It seems we need to add SemaExpr.cpp to the /bigobj list; I am getting consistent failures of hitting the section count limit. 2016-06-01 15:17:54 +00:00
CodeCompleteConsumer.cpp Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00
DeclSpec.cpp Recommit r289979 [OpenCL] Allow disabling types and declarations associated with extensions 2016-12-18 05:18:55 +00:00
DelayedDiagnostic.cpp [Sema] Delay partial availability diagnostics, just like deprecated 2016-10-28 21:39:27 +00:00
IdentifierResolver.cpp [modules] Separately track whether an identifier's preprocessor information and 2016-02-05 19:03:40 +00:00
JumpDiagnostics.cpp [Sema] Handle CaseStmt and DefaultStmt as SwitchCase 2016-10-26 02:00:00 +00:00
MultiplexExternalSemaSource.cpp [Sema] Use unique_ptr instead of raw pointers in the late-parsed templates map. 2016-10-10 16:26:08 +00:00
Scope.cpp [Parser] Clear the TemplateParamScope bit of the current scope's flag 2016-04-29 02:24:14 +00:00
ScopeInfo.cpp [Sema][NFC] Reset HasFallthroughStmt when clearing FunctionScopeInfo 2016-11-09 22:52:23 +00:00
Sema.cpp Recommit r289979 [OpenCL] Allow disabling types and declarations associated with extensions 2016-12-18 05:18:55 +00:00
SemaAccess.cpp P0136R1, DR1573, DR1645, DR1715, DR1736, DR1903, DR1941, DR1959, DR1991: 2016-06-28 19:03:57 +00:00
SemaAttr.cpp [NFC] Header cleanup 2016-07-18 19:02:11 +00:00
SemaCUDA.cpp [Sema] Replace remove_if+erase with erase_if. NFC. 2017-01-04 19:16:29 +00:00
SemaCXXScopeSpec.cpp [ObjC++] Don't enter a C++ declarator scope when the current context is 2016-12-07 10:24:44 +00:00
SemaCast.cpp Recommit r289979 [OpenCL] Allow disabling types and declarations associated with extensions 2016-12-18 05:18:55 +00:00
SemaChecking.cpp Use the same ABI logic for AArch64 Big Endian as in other places 2017-01-09 11:40:41 +00:00
SemaCodeComplete.cpp [CodeCompletion] Block property setters: Use dynamic priority heuristic 2017-01-06 12:00:44 +00:00
SemaConsumer.cpp
SemaCoroutine.cpp Remove redundant passing around of a "ContainsAutoType" flag. 2017-01-12 02:27:38 +00:00
SemaDecl.cpp Implement DR1265 (wg21.link/cwg1265). 2017-01-13 02:22:01 +00:00
SemaDeclAttr.cpp Add the diagnose_if attribute to clang. 2017-01-09 04:12:14 +00:00
SemaDeclCXX.cpp [MS] Mark default args of exported default constructors as used 2017-01-09 17:27:17 +00:00
SemaDeclObjC.cpp Remove redundant passing around of a "ContainsAutoType" flag. 2017-01-12 02:27:38 +00:00
SemaExceptionSpec.cpp Fix completely bogus types for some builtins: 2016-12-19 23:59:34 +00:00
SemaExpr.cpp [cxx1z-constexpr-lambda] [NFC] Add a FIXME to reinstate certain restrictions on constexpr lambdas from appearing within function-signatures (CWG1607) 2017-01-09 11:47:51 +00:00
SemaExprCXX.cpp Remove redundant passing around of a "ContainsAutoType" flag. 2017-01-12 02:27:38 +00:00
SemaExprMember.cpp PR23135: Don't instantiate constexpr functions referenced in unevaluated operands where possible. 2017-01-07 00:48:55 +00:00
SemaExprObjC.cpp More diagnostic name fixups: w_ -> warn_, warning_ -> warn_, not_ -> note_. 2016-12-02 23:00:28 +00:00
SemaFixItUtils.cpp Wire a SourceLocation into IsDerivedFrom and move the RequireCompleteType call 2015-12-18 21:45:41 +00:00
SemaInit.cpp PR23135: Don't instantiate constexpr functions referenced in unevaluated operands where possible. 2017-01-07 00:48:55 +00:00
SemaLambda.cpp [cxx1z-constexpr-lambda] Make conversion function constexpr, and teach the expression-evaluator to evaluate the static-invoker. 2017-01-08 18:56:11 +00:00
SemaLookup.cpp Add the diagnose_if attribute to clang. 2017-01-09 04:12:14 +00:00
SemaObjCProperty.cpp Move checks for creation of objects of abstract class type from the various 2016-12-15 02:28:18 +00:00
SemaOpenMP.cpp Remove redundant passing around of a "ContainsAutoType" flag. 2017-01-12 02:27:38 +00:00
SemaOverload.cpp Don't try to check implicit conversion sequences for an object argument if 2017-01-10 20:52:50 +00:00
SemaPseudoObject.cpp More diagnostic name fixups: w_ -> warn_, warning_ -> warn_, not_ -> note_. 2016-12-02 23:00:28 +00:00
SemaStmt.cpp Remove redundant passing around of a "ContainsAutoType" flag. 2017-01-12 02:27:38 +00:00
SemaStmtAsm.cpp Fix build error caused by r290539. 2016-12-26 13:16:40 +00:00
SemaStmtAttr.cpp [OpenCL] Enable unroll hint for OpenCL 1.x. 2016-12-13 14:02:35 +00:00
SemaTemplate.cpp [Sema] Restrict explicit instantation definition dllexport 2017-01-13 01:28:34 +00:00
SemaTemplateDeduction.cpp Implement C++ DR1391 (wg21.link/cwg1391) 2017-01-09 08:01:21 +00:00
SemaTemplateInstantiate.cpp Fix rejects-valid with default member initializers exposed by r291318. 2017-01-10 08:51:46 +00:00
SemaTemplateInstantiateDecl.cpp PR31469: Don't add friend template class decls to redecl chain in dependent contexts. 2017-01-12 09:16:26 +00:00
SemaTemplateVariadic.cpp [c++1z] P0195R2: Support pack-expansion of using-declarations. 2016-12-20 21:35:28 +00:00
SemaType.cpp Tracking exception specification source locations 2017-01-12 16:11:28 +00:00
TreeTransform.h Tracking exception specification source locations 2017-01-12 16:11:28 +00:00
TypeLocBuilder.cpp [Sema] Fix bug in TypeLocBuilder::pushImpl 2016-02-18 21:05:09 +00:00
TypeLocBuilder.h Retire llvm::alignOf in favor of C++11 alignof. 2016-10-20 14:27:22 +00:00