This override handles the following two cases: static foreach (i, i; [0]) { ... } and static foreach (i; [0]) { enum i = 2; }
This function is #1 on the list of functions that eat cpu time. Be very, very careful about slowing it down.
Look for member of the form: const(MemberInfo)[] getMembers(string); Returns NULL if not found
Insert Dsymbol in table.
Look up identifier in symbol table.
Return true if any of the members are static ctors or static dtors, or if any members have members that are.
Expands attribute declarations in members in depth first order. Calls dg(size_t symidx, Dsymbol *sym) for each member. If dg returns !=0, stops and returns that value else returns 0. Use this function to avoid the O(N + N^2/2) complexity of calculating dim and calling N times getNth.
Forwarding ScopeDsymbol. Used by ForwardingAttribDeclaration and ForwardingScopeDeclaration to forward symbol insertions to another scope. See dmd.attrib.ForwardingAttribDeclaration for more details.