{"push_id":834277852,"size":1,"distinct_size":1,"ref":"refs/heads/master","head":"1a7528174263af0a95d7edf51c01a2b3d1b568ff","before":"de54dcbb0a442ade22d9d0a59b649a7653e7ec2b","commits":[{"sha":"1a7528174263af0a95d7edf51c01a2b3d1b568ff","author":{"email":"72d414e3a99fb120308437779d51667bcc0984eb@google.com","name":"Paul Berry"},"message":"Rework handling of potentially-constant variables.\n\nPreviously, we had a mixin class PotentiallyConstVariableElement to\nrepresent variables which might be constant.  This left some holes in\nthe type hierarchy which didn't implement\nPotentiallyConstVariableElement but nonetheless could be reached by\nconstant evaluation code in the event of errors in the code being\nanalyzed, resulting in an invalid cast exception.\n\nThis CL drops PotentiallyConstVariableElement and moves its one getter\nto VariableElementImpl so that it will be available to all variable\nelements.  This allows us to avoid a lot of casts, including the one\nthat previously caused the exception.\n\nFixes #24645.\n\nR=scheglov@google.com\n\nReview URL: https://codereview.chromium.org/1416873003 .","distinct":true,"url":"https://api.github.com/repos/dart-lang/sdk/commits/1a7528174263af0a95d7edf51c01a2b3d1b568ff"}]}