r282547 - Fix defaulted member functions for templated classes.

2016-09-27 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Sep 27 17:28:59 2016 New Revision: 282547 URL: http://llvm.org/viewvc/llvm-project?rev=282547=rev Log: Fix defaulted member functions for templated classes. In some cases, non-special member functions were being marked as being defaulted in templated classes. This can

r282989 - Fix crash when emitting error.

2016-09-30 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Sep 30 19:15:24 2016 New Revision: 282989 URL: http://llvm.org/viewvc/llvm-project?rev=282989=rev Log: Fix crash when emitting error. With templated classes, is possible to not be able to determine is a member function is a special member function before the class is

Re: [PATCH] D24861: [Sema] extend Wshift-op-parentheses so it warns for multiplicative operators

2016-09-30 Thread Richard Trieu via cfe-commits
Currently, this warning is on by default. As you said, the results you found look intentional in many cases, so there is a high false positive rate. For on by default warnings, we expect a high true positive rate and intend for users to not disable the warning. From my analysis on a separate

[PATCH] D21675: New ODR checker for modules

2016-10-03 Thread Richard Trieu via cfe-commits
rtrieu marked 2 inline comments as done. rtrieu added inline comments. > dblaikie wrote in DeclBase.cpp:1810-1812 > Inconsistent {} on single line block (in VisitEnumConstantDecl above {} are > not used on a single line block) - usually drop the {} on single line blocks. > > (several other

[PATCH] D21675: New ODR checker for modules

2016-10-03 Thread Richard Trieu via cfe-commits
rtrieu updated this revision to Diff 73388. rtrieu added a comment. Add a more detailed error message to let users know where the two records differ. This replaces the generic error which only stated that two definitions are different without any details. https://reviews.llvm.org/D21675

[PATCH] D21675: New ODR checker for modules

2016-10-26 Thread Richard Trieu via cfe-commits
rtrieu added a comment. In https://reviews.llvm.org/D21675#560297, @rsmith wrote: > There are a bunch of cases here that do this: > > if (auto t = getThing()) > ID.addThing(t); > if (auto t = getOtherThing()) > ID.addThing(t); > > > That will result in hash collisions between objects

[PATCH] D21675: New ODR checker for modules

2016-10-26 Thread Richard Trieu via cfe-commits
rtrieu updated this revision to Diff 75970. rtrieu marked 2 inline comments as done. https://reviews.llvm.org/D21675 Files: include/clang/AST/DeclBase.h include/clang/AST/DeclCXX.h include/clang/AST/Stmt.h include/clang/AST/TemplateBase.h include/clang/AST/Type.h

r285370 - Fix a crash on invalid code.

2016-10-27 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Oct 27 19:15:24 2016 New Revision: 285370 URL: http://llvm.org/viewvc/llvm-project?rev=285370=rev Log: Fix a crash on invalid code. The diagnostic was attempting to access the QualType of a TypeDecl by calling TypeDecl::getTypeForDecl. However, the Type pointer stored

r286630 - When a DecompositionDecl is marked invalid, also set the child BindingDecl's to

2016-11-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Nov 11 14:51:04 2016 New Revision: 286630 URL: http://llvm.org/viewvc/llvm-project?rev=286630=rev Log: When a DecompositionDecl is marked invalid, also set the child BindingDecl's to invalid. Modified: cfe/trunk/lib/AST/DeclBase.cpp

Re: r286630 - When a DecompositionDecl is marked invalid, also set the child BindingDecl's to

2016-11-11 Thread Richard Trieu via cfe-commits
n 11 Nov 2016 1:00 pm, "Richard Trieu via cfe-commits" < > cfe-commits@lists.llvm.org> wrote: > >> Author: rtrieu >> Date: Fri Nov 11 14:51:04 2016 >> New Revision: 286630 >> >> URL: http://llvm.org/viewvc/llvm-project?rev=286630=rev >

r286641 - Remove double setting of invalid flag.

2016-11-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Nov 11 15:50:39 2016 New Revision: 286641 URL: http://llvm.org/viewvc/llvm-project?rev=286641=rev Log: Remove double setting of invalid flag. In r286630, Decl::setInvalidDecl will automatically set the invalid flag for BindingDecl for children in invalid

Re: r286630 - When a DecompositionDecl is marked invalid, also set the child BindingDecl's to

2016-11-11 Thread Richard Trieu via cfe-commits
was trying to do the >>> same thing; can it be removed now? >>> >>> On 11 Nov 2016 1:00 pm, "Richard Trieu via cfe-commits" < >>> cfe-commits@lists.llvm.org> wrote: >>> >>>> Author: rtrieu >>>> Date: Fri Nov 11 14:5

r288732 - Warn on unsigned zero in call to std::max

2016-12-05 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon Dec 5 17:41:46 2016 New Revision: 288732 URL: http://llvm.org/viewvc/llvm-project?rev=288732=rev Log: Warn on unsigned zero in call to std::max New default warning that triggers when an unsigned zero is used in a call to std::max. For unsigned values, zero is the

r288756 - Clean up some Sema checking code. NFC

2016-12-05 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon Dec 5 19:42:28 2016 New Revision: 288756 URL: http://llvm.org/viewvc/llvm-project?rev=288756=rev Log: Clean up some Sema checking code. NFC - Rename CheckMinZero to CheckMaxUnsignedZero to reflect its actual purpose. - Remove unused parameters from

r288740 - Add test for r288732, warn on unsigned zero in std::max

2016-12-05 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon Dec 5 18:27:21 2016 New Revision: 288740 URL: http://llvm.org/viewvc/llvm-project?rev=288740=rev Log: Add test for r288732, warn on unsigned zero in std::max Added: cfe/trunk/test/SemaCXX/warn-max-unsigned-zero.cpp Added:

r290920 - Extend -Wtautological-overlap-compare to more cases.

2017-01-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jan 3 18:46:30 2017 New Revision: 290920 URL: http://llvm.org/viewvc/llvm-project?rev=290920=rev Log: Extend -Wtautological-overlap-compare to more cases. Previously, -Wtautological-overlap-compare did not warn on cases where the boolean expression was in an assignment

r298742 - [ODRHash] Add error messages for mismatched parameters in methods.

2017-03-24 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 24 16:17:48 2017 New Revision: 298742 URL: http://llvm.org/viewvc/llvm-project?rev=298742=rev Log: [ODRHash] Add error messages for mismatched parameters in methods. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td

r298754 - [ODRHash] Add support for array and decayed types.

2017-03-24 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 24 19:48:52 2017 New Revision: 298754 URL: http://llvm.org/viewvc/llvm-project?rev=298754=rev Log: [ODRHash] Add support for array and decayed types. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td cfe/trunk/lib/AST/ODRHash.cpp

r300001 - Revert r298824 & r298816, recommit r298742 & r298754

2017-04-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Apr 11 17:32:03 2017 New Revision: 31 URL: http://llvm.org/viewvc/llvm-project?rev=31=rev Log: Revert r298824 & r298816, recommit r298742 & r298754 r299989 fixes the underlying issue by waiting long enough to late parsed arguments to be processed before doing an

Re: r298816 - Revert 298754 and 298742.

2017-04-11 Thread Richard Trieu via cfe-commits
r299989 should prevent the build breakages. I have recommited my changes in r31. On Sun, Mar 26, 2017 at 11:32 AM, Vassil Vassilev via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: vvassilev > Date: Sun Mar 26 13:32:53 2017 > New Revision: 298816 > > URL:

Re: r298824 - Revert r298742 "[ODRHash] Add error messages for mismatched parameters in methods."

2017-04-11 Thread Richard Trieu via cfe-commits
r299989 should prevent the build breakages. I have recommited my changes in r31. On Sun, Mar 26, 2017 at 2:39 PM, Vassil Vassilev via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: vvassilev > Date: Sun Mar 26 16:39:16 2017 > New Revision: 298824 > > URL:

r299989 - [ODRHash] Improve handling of hash values

2017-04-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Apr 11 16:31:00 2017 New Revision: 299989 URL: http://llvm.org/viewvc/llvm-project?rev=299989=rev Log: [ODRHash] Improve handling of hash values Calculating the hash in Sema::ActOnTagFinishDefinition could happen before all sub-Decls were parsed or processed, which would

Re: r300001 - Revert r298824 & r298816, recommit r298742 & r298754

2017-04-12 Thread Richard Trieu via cfe-commits
t; modules buildbot: >> >> http://lab.llvm.org:8011/builders/clang-x86_64-linux-selfhos >> t-modules-2/builds/6274/steps/compile.llvm.stage2/logs/stdio >> >> On 11 April 2017 at 15:32, Richard Trieu via cfe-commits < >> cfe-commits@lists.llvm.org> wrote: >

r300814 - [ODRHash] clean up test and add new examples. NFC

2017-04-19 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Apr 19 21:53:53 2017 New Revision: 300814 URL: http://llvm.org/viewvc/llvm-project?rev=300814=rev Log: [ODRHash] clean up test and add new examples. NFC Use a macro to generate the struct with all decls. Previously, four identical changes would be needed to update this

r296932 - [ODRHash] Add support for detecting different method properties.

2017-03-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 3 18:08:58 2017 New Revision: 296932 URL: http://llvm.org/viewvc/llvm-project?rev=296932=rev Log: [ODRHash] Add support for detecting different method properties. Now print diagnostics for static, virtual, inline, volatile, and const differences in methods. Also

r296953 - [ODRHash] Change test to try to appease buildbot.

2017-03-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 3 20:05:13 2017 New Revision: 296953 URL: http://llvm.org/viewvc/llvm-project?rev=296953=rev Log: [ODRHash] Change test to try to appease buildbot. Modified: cfe/trunk/test/Modules/odr_hash.cpp Modified: cfe/trunk/test/Modules/odr_hash.cpp URL:

r296956 - Handle null QualType better in Stmt::Profile

2017-03-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 3 20:42:41 2017 New Revision: 296956 URL: http://llvm.org/viewvc/llvm-project?rev=296956=rev Log: Handle null QualType better in Stmt::Profile If the QualType is null, calling ASTContext::getCanonicalType on it will lead to an assert. This was found while testing a

r296958 - [ODRHash] Try again to fix build bot.

2017-03-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Mar 3 21:04:15 2017 New Revision: 296958 URL: http://llvm.org/viewvc/llvm-project?rev=296958=rev Log: [ODRHash] Try again to fix build bot. Modified: cfe/trunk/test/Modules/odr_hash.cpp Modified: cfe/trunk/test/Modules/odr_hash.cpp URL:

r296572 - Add warning for inconsistent overrides on destructor.

2017-02-28 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Feb 28 21:07:55 2017 New Revision: 296572 URL: http://llvm.org/viewvc/llvm-project?rev=296572=rev Log: Add warning for inconsistent overrides on destructor. The exisiting warning for inconsistent overrides does not include the destructor as it was noted in review that it

r297246 - [ODRHash] Hash typedefs and usings statements in classes.

2017-03-07 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Mar 7 18:13:19 2017 New Revision: 297246 URL: http://llvm.org/viewvc/llvm-project?rev=297246=rev Log: [ODRHash] Hash typedefs and usings statements in classes. Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r307986 - [ODRHash] Avoid taking the types of FunctionDecl's

2017-07-13 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Jul 13 18:36:41 2017 New Revision: 307986 URL: http://llvm.org/viewvc/llvm-project?rev=307986=rev Log: [ODRHash] Avoid taking the types of FunctionDecl's FunctionDecl already hashes most of the information in the function's type. Add hashing of the return type, and skip

r307458 - [ODRHash] Support FriendDecl

2017-07-07 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jul 7 19:04:42 2017 New Revision: 307458 URL: http://llvm.org/viewvc/llvm-project?rev=307458=rev Log: [ODRHash] Support FriendDecl Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td cfe/trunk/lib/AST/ODRHash.cpp

r308077 - [ODRHash] Revert r307743 which reverted r307720

2017-07-14 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jul 14 19:55:13 2017 New Revision: 308077 URL: http://llvm.org/viewvc/llvm-project?rev=308077=rev Log: [ODRHash] Revert r307743 which reverted r307720 Reapply r307720 to allow processing of constructors and destructors. Reuse the diagnostics for CXXMethodDecl for them.

r308714 - Fix tblgen error.

2017-07-20 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Jul 20 21:56:48 2017 New Revision: 308714 URL: http://llvm.org/viewvc/llvm-project?rev=308714=rev Log: Fix tblgen error. tblgen couldn't determing a unique name between "long_call" and "far", so it errored out when generating documentation. Copy the documentation, and

r308783 - Inline variable into assert to fix unused warning.

2017-07-21 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jul 21 14:29:35 2017 New Revision: 308783 URL: http://llvm.org/viewvc/llvm-project?rev=308783=rev Log: Inline variable into assert to fix unused warning. Modified: cfe/trunk/lib/Sema/SemaOpenMP.cpp Modified: cfe/trunk/lib/Sema/SemaOpenMP.cpp URL:

r308777 - Fix tblgen error

2017-07-21 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jul 21 13:32:22 2017 New Revision: 308777 URL: http://llvm.org/viewvc/llvm-project?rev=308777=rev Log: Fix tblgen error Add Heading string to attribute documentation. Modified: cfe/trunk/include/clang/Basic/AttrDocs.td Modified:

r307720 - [ODRHash] Support more method types.

2017-07-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jul 11 15:10:49 2017 New Revision: 307720 URL: http://llvm.org/viewvc/llvm-project?rev=307720=rev Log: [ODRHash] Support more method types. Hash CXXConstructorDecl and CXXDestructorDecl. Extend the diagnostics from CXXMethodDecl to include constructors and destructors.

r307743 - [ODRHash] Revert r307720 to fix buildbot.

2017-07-11 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jul 11 17:38:27 2017 New Revision: 307743 URL: http://llvm.org/viewvc/llvm-project?rev=307743=rev Log: [ODRHash] Revert r307720 to fix buildbot. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td cfe/trunk/lib/AST/ODRHash.cpp

r306753 - [ODRHash] Improve typedef handling.

2017-06-29 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Jun 29 15:53:04 2017 New Revision: 306753 URL: http://llvm.org/viewvc/llvm-project?rev=306753=rev Log: [ODRHash] Improve typedef handling. Follow typedef chains to find the root type when processing types, and also keep track of qualifiers. Modified:

r306926 - [ODRHash] Revert r305104 - Skip inline namespaces when hashing.

2017-06-30 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 30 19:00:05 2017 New Revision: 306926 URL: http://llvm.org/viewvc/llvm-project?rev=306926=rev Log: [ODRHash] Revert r305104 - Skip inline namespaces when hashing. Test inline namespaces and handle them in the ODR hash again. Modified:

r306904 - [ODRHash] Support Type TemplateArgument

2017-06-30 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 30 15:40:33 2017 New Revision: 306904 URL: http://llvm.org/viewvc/llvm-project?rev=306904=rev Log: [ODRHash] Support Type TemplateArgument Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified: cfe/trunk/lib/AST/ODRHash.cpp

r301701 - [ODRHash] Add testcase with different paramter names. NFC

2017-04-28 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Apr 28 17:03:28 2017 New Revision: 301701 URL: http://llvm.org/viewvc/llvm-project?rev=301701=rev Log: [ODRHash] Add testcase with different paramter names. NFC Modified: cfe/trunk/test/Modules/odr_hash.cpp Modified: cfe/trunk/test/Modules/odr_hash.cpp URL:

r310158 - [ODRHash] Treat some non-templated classes as templated.

2017-08-04 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Aug 4 17:54:19 2017 New Revision: 310158 URL: http://llvm.org/viewvc/llvm-project?rev=310158=rev Log: [ODRHash] Treat some non-templated classes as templated. When using nested classes, if the inner class is not templated, but the outer class is templated, the inner

r310435 - Allow operator delete to be an invalid Decl.

2017-08-08 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Aug 8 19:03:59 2017 New Revision: 310435 URL: http://llvm.org/viewvc/llvm-project?rev=310435=rev Log: Allow operator delete to be an invalid Decl. Do not discard invalid Decl when searching for the operator delete function. The lookup for this function always expects to

r311519 - [ODRHash] Diagnose differing template parameters.

2017-08-22 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Aug 22 19:43:59 2017 New Revision: 311519 URL: http://llvm.org/viewvc/llvm-project?rev=311519=rev Log: [ODRHash] Diagnose differing template parameters. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td cfe/trunk/lib/AST/ODRHash.cpp

r301989 - [ODRHash] Add support for array and decayed types, and parameter names and types.

2017-05-02 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 2 18:58:52 2017 New Revision: 301989 URL: http://llvm.org/viewvc/llvm-project?rev=301989=rev Log: [ODRHash] Add support for array and decayed types, and parameter names and types. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td

r302505 - [ODRHash] Loosen checks on typedefs.

2017-05-08 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon May 8 22:24:34 2017 New Revision: 302505 URL: http://llvm.org/viewvc/llvm-project?rev=302505=rev Log: [ODRHash] Loosen checks on typedefs. When a type in a class is from a typedef, only check the canonical type. Skip checking the intermediate underlying types. This is

r303233 - [ODRHash] Support NestedNameSpecifier

2017-05-16 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 16 22:23:35 2017 New Revision: 303233 URL: http://llvm.org/viewvc/llvm-project?rev=303233=rev Log: [ODRHash] Support NestedNameSpecifier Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/lib/Serialization/ASTReader.cpp cfe/trunk/test/Modules/odr_hash.cpp

Re: r304956 - [ODRHash] Change the fall-back diagnostic error.

2017-06-07 Thread Richard Trieu via cfe-commits
below it. Except that the hasher isn't complete yet and some > things slip through. Once things are more stable, these should be replaced > with llvm_unreachable instead. > > On Wed, Jun 7, 2017 at 6:05 PM, Richard Smith <rich...@metafoo.co.uk> > wrote: > >> On 7 J

r304962 - [ODRHash] Make diagnostic message more readable.

2017-06-07 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Jun 7 23:47:29 2017 New Revision: 304962 URL: http://llvm.org/viewvc/llvm-project?rev=304962=rev Log: [ODRHash] Make diagnostic message more readable. Change the diagnostic message from r304956 to be less confusing by reordering the flow of information. Modified:

r305130 - Revert r305110 to fix buildbot

2017-06-09 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 9 18:03:40 2017 New Revision: 305130 URL: http://llvm.org/viewvc/llvm-project?rev=305130=rev Log: Revert r305110 to fix buildbot Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified: cfe/trunk/lib/AST/ODRHash.cpp URL:

r305110 - [ODRHash] Add support for TemplateArgument types.

2017-06-09 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 9 16:00:10 2017 New Revision: 305110 URL: http://llvm.org/viewvc/llvm-project?rev=305110=rev Log: [ODRHash] Add support for TemplateArgument types. Recommit r304592 that was reverted in r304618. r305104 should have fixed the issue. Modified:

r305238 - [ODRHash] Add diagnostic messages for typedef and type alias.

2017-06-12 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon Jun 12 16:58:22 2017 New Revision: 305238 URL: http://llvm.org/viewvc/llvm-project?rev=305238=rev Log: [ODRHash] Add diagnostic messages for typedef and type alias. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td

r305872 - [ODRHash] Supply more information when generic error message is emitted.

2017-06-20 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jun 20 20:43:13 2017 New Revision: 305872 URL: http://llvm.org/viewvc/llvm-project?rev=305872=rev Log: [ODRHash] Supply more information when generic error message is emitted. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td

r303934 - "*" => "+" to avoid matching on empty string.

2017-05-25 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu May 25 18:25:36 2017 New Revision: 303934 URL: http://llvm.org/viewvc/llvm-project?rev=303934=rev Log: "*" => "+" to avoid matching on empty string. Modified: cfe/trunk/test/Driver/baremetal.cpp Modified: cfe/trunk/test/Driver/baremetal.cpp URL:

r303932 - Make test/Driver/baremetal.cpp work when output directory isn't named 'bin'.

2017-05-25 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu May 25 18:03:08 2017 New Revision: 303932 URL: http://llvm.org/viewvc/llvm-project?rev=303932=rev Log: Make test/Driver/baremetal.cpp work when output directory isn't named 'bin'. Modified: cfe/trunk/test/Driver/baremetal.cpp Modified:

r303450 - [ODRHash] Support TemplateName and TemplateArgument

2017-05-19 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri May 19 15:05:16 2017 New Revision: 303450 URL: http://llvm.org/viewvc/llvm-project?rev=303450=rev Log: [ODRHash] Support TemplateName and TemplateArgument Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r303231 - [ODRHash] Support more types in the ODR checker.

2017-05-16 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 16 21:29:02 2017 New Revision: 303231 URL: http://llvm.org/viewvc/llvm-project?rev=303231=rev Log: [ODRHash] Support more types in the ODR checker. Added support for TagType, TypeWithKeyword, and all children types. Modified: cfe/trunk/lib/AST/ODRHash.cpp

Re: r303934 - "*" => "+" to avoid matching on empty string.

2017-05-29 Thread Richard Trieu via cfe-commits
eparator would match the "\" before clang. On Mon, May 29, 2017 at 11:18 AM, David Blaikie <dblai...@gmail.com> wrote: > Why would matching on an empty string be bad in this case? > > On Thu, May 25, 2017 at 4:25 PM Richard Trieu via cfe-commits < > cfe-commits@list

r304261 - [ODRHash] Support TemplateSpecializationType

2017-05-30 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 30 19:31:58 2017 New Revision: 304261 URL: http://llvm.org/viewvc/llvm-project?rev=304261=rev Log: [ODRHash] Support TemplateSpecializationType Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r304519 - Minor fixes to for-loop warning.

2017-06-01 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Jun 1 23:24:46 2017 New Revision: 304519 URL: http://llvm.org/viewvc/llvm-project?rev=304519=rev Log: Minor fixes to for-loop warning. The warning for unchanged loop variables outputted a diagnostic that was dependent on iteration order from a pointer set, which is not

r304592 - [ODRHash] Add support for TemplateArgument types.

2017-06-02 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 2 15:35:29 2017 New Revision: 304592 URL: http://llvm.org/viewvc/llvm-project?rev=304592=rev Log: [ODRHash] Add support for TemplateArgument types. Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r304956 - [ODRHash] Change the fall-back diagnostic error.

2017-06-07 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Jun 7 19:56:21 2017 New Revision: 304956 URL: http://llvm.org/viewvc/llvm-project?rev=304956=rev Log: [ODRHash] Change the fall-back diagnostic error. Provide a little more information when a ODR violation is detected, but the specific error could not be diagnosed.

Re: r304956 - [ODRHash] Change the fall-back diagnostic error.

2017-06-07 Thread Richard Trieu via cfe-commits
. On Wed, Jun 7, 2017 at 6:05 PM, Richard Smith <rich...@metafoo.co.uk> wrote: > On 7 June 2017 at 17:56, Richard Trieu via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> Author: rtrieu >> Date: Wed Jun 7 19:56:21 2017 >> New Revision: 304956 >> &g

r304618 - Revert r304592

2017-06-02 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 2 19:11:23 2017 New Revision: 304618 URL: http://llvm.org/viewvc/llvm-project?rev=304618=rev Log: Revert r304592 r304592 - [ODRHash] Add support for TemplateArgument types. Possibly causing one of the errors in modules build bot. Modified:

r305440 - [ODRHash] Hash TemplateArgument::Pack and TemplateTypeParmType

2017-06-14 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Jun 14 20:35:06 2017 New Revision: 305440 URL: http://llvm.org/viewvc/llvm-project?rev=305440=rev Log: [ODRHash] Hash TemplateArgument::Pack and TemplateTypeParmType Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r305361 - [ODRHash] Hash Template and TemplateExpansion in TemplateArgument.

2017-06-13 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jun 13 22:17:26 2017 New Revision: 305361 URL: http://llvm.org/viewvc/llvm-project?rev=305361=rev Log: [ODRHash] Hash Template and TemplateExpansion in TemplateArgument. Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r305362 - [ODRHash] Remove debugging code from r305361

2017-06-13 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jun 13 22:19:58 2017 New Revision: 305362 URL: http://llvm.org/viewvc/llvm-project?rev=305362=rev Log: [ODRHash] Remove debugging code from r305361 Modified: cfe/trunk/lib/AST/ODRHash.cpp Modified: cfe/trunk/lib/AST/ODRHash.cpp URL:

r305328 - [ODRHash] Add TemplateArgument kind to hash.

2017-06-13 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jun 13 17:21:18 2017 New Revision: 305328 URL: http://llvm.org/viewvc/llvm-project?rev=305328=rev Log: [ODRHash] Add TemplateArgument kind to hash. Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r305360 - [ODRHash] Hash Expr for TemplateArgument::Expression

2017-06-13 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Jun 13 20:28:00 2017 New Revision: 305360 URL: http://llvm.org/viewvc/llvm-project?rev=305360=rev Log: [ODRHash] Hash Expr for TemplateArgument::Expression Modified: cfe/trunk/lib/AST/ODRHash.cpp cfe/trunk/test/Modules/odr_hash.cpp Modified:

r305543 - [ODRHash] Hash VarDecl members.

2017-06-15 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Jun 15 21:44:29 2017 New Revision: 305543 URL: http://llvm.org/viewvc/llvm-project?rev=305543=rev Log: [ODRHash] Hash VarDecl members. These VarDecl's are static data members of classes. Since the initializers are also hashed, this also provides checking for default

r305104 - [ODRHash] Skip inline namespaces when hashing.

2017-06-09 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jun 9 15:11:51 2017 New Revision: 305104 URL: http://llvm.org/viewvc/llvm-project?rev=305104=rev Log: [ODRHash] Skip inline namespaces when hashing. Speculatively try to fix the underlying issue from r304592, of underlying types being confused when inline namespaces are

r302284 - [ODRHash] Fix typo, NFC

2017-05-05 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri May 5 15:47:50 2017 New Revision: 302284 URL: http://llvm.org/viewvc/llvm-project?rev=302284=rev Log: [ODRHash] Fix typo, NFC NestedNameSpecifer to NestedNameSpecifier. This was not a problem before since one of the included headers transitively brought in the

r303459 - [ODRHash] Revert r303450 to fix buildbot

2017-05-19 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri May 19 17:35:41 2017 New Revision: 303459 URL: http://llvm.org/viewvc/llvm-project?rev=303459=rev Log: [ODRHash] Revert r303450 to fix buildbot r303450 [ODRHash] Support TemplateName and TemplateArgument Modified: cfe/trunk/lib/AST/ODRHash.cpp

r314035 - Fix unused variable warning in non-debug builds.

2017-09-22 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Sep 22 15:16:13 2017 New Revision: 314035 URL: http://llvm.org/viewvc/llvm-project?rev=314035=rev Log: Fix unused variable warning in non-debug builds. Modified: cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp Modified: cfe/trunk/lib/CrossTU/CrossTranslationUnit.cpp

r312842 - Catch more cases with -Wenum-compare

2017-09-08 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Sep 8 17:25:05 2017 New Revision: 312842 URL: http://llvm.org/viewvc/llvm-project?rev=312842=rev Log: Catch more cases with -Wenum-compare Treat typedef enum as named enums instead of anonymous enums. Anonymous enums are ignored by the warning, so previously, typedef

r314581 - [ODRHash] Add base classes to hashing CXXRecordDecl.

2017-09-29 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Sep 29 19:19:17 2017 New Revision: 314581 URL: http://llvm.org/viewvc/llvm-project?rev=314581=rev Log: [ODRHash] Add base classes to hashing CXXRecordDecl. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td

r318811 - [OpenMP] Fix tests after r318789

2017-11-21 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Nov 21 14:53:19 2017 New Revision: 318811 URL: http://llvm.org/viewvc/llvm-project?rev=318811=rev Log: [OpenMP] Fix tests after r318789 Update use of __tgt_target that had some 32bit types updated to 64bit. Modified:

r317957 - Handle lambda captures of variable length arrays in profiling and printing.

2017-11-10 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Nov 10 16:54:25 2017 New Revision: 317957 URL: http://llvm.org/viewvc/llvm-project?rev=317957=rev Log: Handle lambda captures of variable length arrays in profiling and printing. From http://reviews.llvm.org/D4368 these cases were thought to not be reachable and the

r317394 - Update ODR hashing tests

2017-11-03 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Nov 3 18:20:50 2017 New Revision: 317394 URL: http://llvm.org/viewvc/llvm-project?rev=317394=rev Log: Update ODR hashing tests Add a mix of postive and negative tests to check that wrong Decls won't be flagged in the diagnostic. Split the check everything test and

r320239 - Revert r320230 to fix buildbots.

2017-12-08 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Dec 8 19:02:21 2017 New Revision: 320239 URL: http://llvm.org/viewvc/llvm-project?rev=320239=rev Log: Revert r320230 to fix buildbots. Modified: cfe/trunk/include/clang/AST/Decl.h cfe/trunk/include/clang/AST/ODRHash.h

r320230 - [ODRHash] Support ODR violation detection in functions.

2017-12-08 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Dec 8 17:29:40 2017 New Revision: 320230 URL: http://llvm.org/viewvc/llvm-project?rev=320230=rev Log: [ODRHash] Support ODR violation detection in functions. Extend the hashing to functions, which allows detection of function definition mismatches across modules.

Re: r305110 - [ODRHash] Add support for TemplateArgument types.

2017-12-08 Thread Richard Trieu via cfe-commits
<v.g.vassi...@gmail.com> wrote: > Hi Richard, > > Is there a way to get an ODRHashing which is stable across translation > units? I'd like to use the TemplateArgument ODRHash to lookup template > specializations and deserialize them only if they are required. > > Many t

r317073 - Change assertion to quick exit from checking function.

2017-10-31 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue Oct 31 20:57:27 2017 New Revision: 317073 URL: http://llvm.org/viewvc/llvm-project?rev=317073=rev Log: Change assertion to quick exit from checking function. Remove the assertion that could be triggered by invalid code. Replace it with an early exit from the checking

r332310 - Enable control flow pruning of float overflow warnings.

2018-05-14 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon May 14 16:21:48 2018 New Revision: 332310 URL: http://llvm.org/viewvc/llvm-project?rev=332310=rev Log: Enable control flow pruning of float overflow warnings. Like other conversion warnings, allow float overflow warnings to be disabled in known dead paths of template

r331706 - Move test input file into same directory as test. NFC

2018-05-07 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Mon May 7 17:29:21 2018 New Revision: 331706 URL: http://llvm.org/viewvc/llvm-project?rev=331706=rev Log: Move test input file into same directory as test. NFC Added: cfe/trunk/test/Frontend/Inputs/resource_dir_with_cfi_blacklist/

r333471 - Check pointer null-ness before dereferencing it.

2018-05-29 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 29 15:43:00 2018 New Revision: 333471 URL: http://llvm.org/viewvc/llvm-project?rev=333471=rev Log: Check pointer null-ness before dereferencing it. -Warc-repeated-use-of-weak may trigger a segmentation fault when the Decl being checked is outside of a function scope,

r333486 - [ODRHash] Support FunctionTemplateDecl in records.

2018-05-29 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Tue May 29 18:12:26 2018 New Revision: 333486 URL: http://llvm.org/viewvc/llvm-project?rev=333486=rev Log: [ODRHash] Support FunctionTemplateDecl in records. Modified: cfe/trunk/include/clang/Basic/DiagnosticSerializationKinds.td cfe/trunk/lib/AST/ODRHash.cpp

r334160 - Change return value of trivial visibility check.

2018-06-06 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Jun 6 20:20:30 2018 New Revision: 334160 URL: http://llvm.org/viewvc/llvm-project?rev=334160=rev Log: Change return value of trivial visibility check. Previous, if no Decl's were checked, visibility was set to false. Switch it so that in cases of no Decl's, return

r334151 - [ODRHash] Adjust info stored for FunctionTemplateDecl.

2018-06-06 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Wed Jun 6 17:20:58 2018 New Revision: 334151 URL: http://llvm.org/viewvc/llvm-project?rev=334151=rev Log: [ODRHash] Adjust info stored for FunctionTemplateDecl. Avoid storing information for definitions since those can be out-of-line and vary between modules even when the

r321924 - Test case for r321396

2018-01-05 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jan 5 19:20:59 2018 New Revision: 321924 URL: http://llvm.org/viewvc/llvm-project?rev=321924=rev Log: Test case for r321396 Any hashing for methods should be able to compile this test case without emitting an error. Since the class and method come from the same header

r321319 - [ODRHash] Canonicalize Decl's before processing.

2017-12-21 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Thu Dec 21 14:38:29 2017 New Revision: 321319 URL: http://llvm.org/viewvc/llvm-project?rev=321319=rev Log: [ODRHash] Canonicalize Decl's before processing. Canonicalizing the Decl before processing it as part of the hash should reduce issues with non-canonical types showing

r321396 - [ODRHash] Disable hashing on methods.

2017-12-22 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Dec 22 17:35:32 2017 New Revision: 321396 URL: http://llvm.org/viewvc/llvm-project?rev=321396=rev Log: [ODRHash] Disable hashing on methods. Turn off hashing for class methods, but leave it on for other functions. This should get the buildbot to green for the time

r321395 - [ODRHash] Support ODR violation detection in functions.

2017-12-22 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Dec 22 16:41:01 2017 New Revision: 321395 URL: http://llvm.org/viewvc/llvm-project?rev=321395=rev Log: [ODRHash] Support ODR violation detection in functions. Extend the hashing to functions, which allows detection of function definition mismatches across modules. This

r322984 - Allow BlockDecl in CXXRecord scope to have no access specifier.

2018-01-19 Thread Richard Trieu via cfe-commits
Author: rtrieu Date: Fri Jan 19 12:46:19 2018 New Revision: 322984 URL: http://llvm.org/viewvc/llvm-project?rev=322984=rev Log: Allow BlockDecl in CXXRecord scope to have no access specifier. Using a BlockDecl in a default member initializer causes it to be attached to CXXMethodDecl without its

Re: r322813 - Fix Scope::dump()

2018-01-19 Thread Richard Trieu via cfe-commits
Hans, I recommend merging this revision into the release. It fixes an infinite loop in Scope::dump() Richard On Wed, Jan 17, 2018 at 8:28 PM, Richard Trieu via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: rtrieu > Date: Wed Jan 17 20:28:56 2018 > New Revision:

Re: r322984 - Allow BlockDecl in CXXRecord scope to have no access specifier.

2018-01-19 Thread Richard Trieu via cfe-commits
Hans, I recommend merging this revision into the release. It fixes an assertion error when mixing modules and blocks. Richard On Fri, Jan 19, 2018 at 12:46 PM, Richard Trieu via cfe-commits < cfe-commits@lists.llvm.org> wrote: > Author: rtrieu > Date: Fri Jan 19 12:46:19 2018 &g

Re: [libcxx] r323380 - [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-24 Thread Richard Trieu via cfe-commits
Thanks, Eric. On Wed, Jan 24, 2018 at 3:11 PM, Eric Fiselier wrote: > Sorry for the breakage. Fixed in r323389. > > On Wed, Jan 24, 2018 at 4:08 PM, Eric Fiselier wrote: > >> Looking. >> >> On Wed, Jan 24, 2018 at 3:52 PM, Richard Trieu wrote: >>

Re: [libcxx] r323380 - [libc++] Fix PR20855 -- libc++ incorrectly diagnoses illegal reference binding in std::tuple.

2018-01-24 Thread Richard Trieu via cfe-commits
Hi Eric, I am getting a build failure after this revision: llvm/projects/libcxx/include/tuple:175:27: error: no return statement in constexpr function static constexpr bool __can_bind_reference() { ^ 1 error generated. It looks like if the #if in

Re: r322350 - [ODRHash] Don't hash friend functions.

2018-01-16 Thread Richard Trieu via cfe-commits
<geek4ci...@gmail.com> wrote: > If r322350 is temporary fix, I suggest r321395 may be reverted in > release_60. Richard, how do you think? > > On Wed, Jan 17, 2018 at 4:27 AM Richard Trieu via cfe-commits < > cfe-commits@lists.llvm.org> wrote: > >> There was

<    1   2   3   >