Allow Operator Arguments
authorDavid Greene <greened@obbligato.org>
Tue, 4 Oct 2011 18:55:36 +0000 (18:55 +0000)
committerDavid Greene <greened@obbligato.org>
Tue, 4 Oct 2011 18:55:36 +0000 (18:55 +0000)
commitcedaae125e26d4d98072ed04017ddaebcfa468f8
treebefee514521629b5a02d539f32e4153da4a61030
parenta02dfe7a6bd25b7e18ed472cbf556208658581fc
Allow Operator Arguments

When resolving an operator list element reference, resolve all
operator operands and try to fold the operator first.  This allows the
operator to collapse to a list which may then be indexed.

Before, it was not possible to do this:
class D<int a, int b> { ... }
class C<list<int> A> : D<A[0], A[1]>;
class B<list<int> b> : C<!foreach(...,b)>;

Now it is.

git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@141101 91177308-0d34-0410-b5e6-96231b3b80d8
lib/TableGen/Record.cpp