summaryrefslogtreecommitdiffstats
path: root/clang/test/SemaCXX/access.cpp
Commit message (Collapse)AuthorAgeFilesLines
* [Sema] When the address of a member function is used as a templateAkira Hatanaka2018-06-131-0/+47
| | | | | | | | | | | | | argument, use the context in which it is used for checking its accessibility. This fixes PR32898. rdar://problem/33737747 Differential Revision: https://reviews.llvm.org/D36918 llvm-svn: 334569
* Revert r325321 "[Sema] Take into account the current context when checking the"Hans Wennborg2018-02-161-35/+0
| | | | | | | | | | | | | | This broke the Chromium build, see https://crbug.com/813017 > accessibility of a class member. > > This fixes PR32898. > > rdar://problem/33737747 > > Differential revision: https://reviews.llvm.org/D36918 llvm-svn: 325335
* [Sema] Take into account the current context when checking theAkira Hatanaka2018-02-161-0/+35
| | | | | | | | | | | | accessibility of a class member. This fixes PR32898. rdar://problem/33737747 Differential revision: https://reviews.llvm.org/D36918 llvm-svn: 325321
* Make SemaAccess smarter about determining when a dependent class mightRichard Smith2016-03-231-1/+1
| | | | | | | instantiate to match a friend class declaration. It's still pretty dumb, though. llvm-svn: 264189
* Make sure to perform dependent access checks when instantiating aRichard Smith2016-03-231-0/+11
| | | | | | | | lambda-expression. We don't actually instantiate the closure type / operator() in the template in order to produce the closure type / operator() in the instantiation, so this isn't caught by the normal path. llvm-svn: 264184
* When performing a delayed access check, use the surrounding lexical context forRichard Smith2013-12-111-0/+22
| | | | | | any local extern declaration, not just a local extern function. llvm-svn: 197000
* Add a testcase for PR7434, which is a bug we no longer appear to have.Richard Smith2013-06-111-0/+28
| | | | llvm-svn: 183787
* Implement DR85: Redeclaration of member is forbiddenDavid Majnemer2013-06-111-2/+4
| | | | | | | Disallow the existence of a declaration of a member class that isn't a forward declaration before it's definition. llvm-svn: 183722
* Implement DR580: access checks for template parameters of a class template areRichard Smith2013-04-291-1/+75
| | | | | | performed within the context of that class template. Patch by Ismail Pazarbasi! llvm-svn: 180707
* Modify how the -verify flag works. Currently, the verification string andRichard Trieu2011-12-151-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | diagnostic message are compared. If either is a substring of the other, then no error is given. This gives rise to an unexpected case: // expect-error{{candidate function has different number of parameters}} will match the following error messages from Clang: candidate function has different number of parameters (expected 1 but has 2) candidate function has different number of parameters It will also match these other error messages: candidate function function has different number of parameters number of parameters This patch will change so that the verification string must be a substring of the diagnostic message before accepting. Also, all the failing tests from this change have been corrected. Some stats from this cleanup: 87 - removed extra spaces around verification strings 70 - wording updates to diagnostics 40 - extra leading or trailing characters (typos, unmatched parens or quotes) 35 - diagnostic level was included (error:, warning:, or note:) 18 - flag name put in the warning (-Wprotocol) llvm-svn: 146619
* Set a member's access specifier even if it doesn't match the previous specifier.John McCall2009-12-231-0/+11
| | | | | | | | Prevents an assert on successive redeclarations. Fixed PR5573. llvm-svn: 91956
* Update tests to use %clang_cc1 instead of 'clang-cc' or 'clang -cc1'.Daniel Dunbar2009-12-151-1/+1
| | | | | | | | | - 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). llvm-svn: 91446
* Set the access specifier for templates inside classes.Anders Carlsson2009-03-261-2/+10
| | | | llvm-svn: 67726
* Check that the access specifier of a member redeclaration is the same as the ↵Anders Carlsson2009-03-261-0/+15
original declaration. llvm-svn: 67722
OpenPOWER on IntegriCloud