Searched refs:vthis (Results 1 - 25 of 31) sorted by relevance

12

/netbsd-current/external/gpl3/gcc/dist/gcc/d/dmd/
H A Daggregate.d125 VarDeclaration vthis; /// 'this' parameter if this aggregate is nested
626 /* Append vthis field (this.tupleof[$-1]) to make this aggregate type nested.
678 assert(!vthis);
679 vthis = new ThisDeclaration(loc, t);
680 //vthis.storage_class |= STC.ref_;
682 // Emulate vthis.addMember()
683 members.push(vthis);
685 // Emulate vthis.dsymbolSemantic()
686 vthis.storage_class |= STC.field;
687 vthis
[all...]
H A Dfunc.d281 VarDeclaration vthis; /// 'this' parameter (member and nested)
525 vthis = null;
544 vthis = new VarDeclaration(loc, tthis, dualCtx ? Id.this2 : Id.capture, null);
545 vthis.storage_class |= STC.parameter | STC.nodtor;
550 vthis = new ThisDeclaration(loc, thandle);
551 vthis.storage_class |= STC.parameter;
554 vthis.storage_class |= STC.ref_;
561 vthis.storage_class |= STC.return_;
563 vthis.storage_class |= STC.scope_;
565 vthis
[all...]
H A Dsemantic3.d396 //printf("[%s] ad = %p vthis = %p\n", loc.toChars(), ad, vthis);
397 //if (vthis) printf("\tvthis.type = %s\n", vthis.type.toChars());
539 Expression e = addInvariant(funcdecl.isThis(), funcdecl.vthis);
548 Expression e = addInvariant(funcdecl.isThis(), funcdecl.vthis);
717 Type tthis = ad2.type.addMod(funcdecl.vthis.type.mod);
1197 vsync = new VarExp(funcdecl.loc, funcdecl.vthis);
1300 size_t dim = (funcdecl.vthis !is null) + (funcdecl.parameters ? funcdecl.parameters.dim : 0);
1307 if (funcdecl.vthis)
[all...]
H A Daggregate.h94 VarDeclaration *vthis; // 'this' parameter if this aggregate is nested member in class:AggregateDeclaration
H A Dtypesem.d4327 if (ident == Id.outer && mt.sym.vthis)
4329 if (mt.sym.vthis.semanticRun == PASS.initial)
4330 mt.sym.vthis.dsymbolSemantic(null);
4334 auto dve = new DotVarExp(e.loc, e, mt.sym.vthis);
4356 ve.var = fd.vthis;
4357 const nestedError = fd.vthis.checkNestedReference(sc, e.loc);
4360 ve.type = cdp.type.addMod(fd.vthis.type.mod).addMod(e.type.mod);
4367 auto dve = new DotVarExp(e.loc, e, mt.sym.vthis);
4368 dve.type = mt.sym.vthis.type.addMod(e.type.mod);
4529 e1 = new VarExp(e.loc, f.vthis);
[all...]
H A Descape.d607 if (va == fd.vthis) // `this` of a non-static member function is considered to be the first parameter
609 if (!fd.vthis && fd.parameters && fd.parameters.length && (*fd.parameters)[0] == va) // va is first parameter
1321 if (!refs && sc.func.vthis == v)
1418 if (v == fd.vthis)
H A Ddinterpret.d558 if (fd.vthis && thisarg)
560 ctfeGlobals.stack.push(fd.vthis);
561 setValue(fd.vthis, thisarg);
691 if (tf.isref && e.op == EXP.variable && e.isVarExp().var == fd.vthis)
698 if (ve && ve.var == fd.vthis)
1763 if (istate && istate.fd.vthis)
1765 result = ctfeEmplaceExp!VarExp(e.loc, istate.fd.vthis);
2004 if (ve.var == istate.fd.vthis)
2663 auto vthis = i == 0 ? e.sd.vthis
[all...]
H A Ddeclaration.h554 VarDeclaration *vthis; // 'this' parameter (member and nested) member in class:FuncDeclaration
H A Ddeclaration.d382 VarDeclaration vthis = e1.isThisExp().var;
385 if (scx.func == vthis.parent && (scx.flags & SCOPE.contract))
H A Dexpressionsem.d1054 e1 = new VarExp(loc, f.vthis);
1086 auto vthis = tcd.followInstantiationContext(ad) ? tcd.vthis2 : tcd.vthis;
1087 e1 = new DotVarExp(loc, e1, vthis);
1088 e1.type = vthis.type;
2848 assert(fd.vthis);
2849 e.var = fd.vthis;
2915 e.var = fd.vthis;
4105 exp.fd.vthis = null;
13119 if (f.vthis)
[all...]
/netbsd-current/external/gpl3/gcc.old/dist/gcc/d/dmd/
H A Ddstruct.c205 vthis = NULL;
869 /* Append vthis field (this->tupleof[$-1]) to make this aggregate type nested.
918 assert(!vthis);
919 vthis = new ThisDeclaration(loc, t);
920 //vthis->storage_class |= STCref;
922 // Emulate vthis->addMember()
923 members->push(vthis);
925 // Emulate vthis->semantic()
926 vthis->storage_class |= STCfield;
927 vthis
[all...]
H A Dfunc.c33 Expression *addInvariant(Loc loc, Scope *sc, AggregateDeclaration *ad, VarDeclaration *vthis, bool direct);
324 vthis = NULL;
1518 vthis = declareThis(sc2, ad);
1519 //printf("[%s] ad = %p vthis = %p\n", loc.toChars(), ad, vthis);
1520 //if (vthis) printf("\tvthis->type = %s\n", vthis->type->toChars());
1651 Expression *e = addInvariant(loc, sc, ad, vthis, isDtorDeclaration() != NULL);
1660 Expression *e = addInvariant(loc, sc, ad, vthis, isCtorDeclaration() != NULL);
1828 FuncDeclaration *fd = resolveFuncCall(Loc(), sc2, cd->baseClass->ctor, NULL, vthis
4164 addInvariant(Loc loc, Scope *sc, AggregateDeclaration *ad, VarDeclaration *vthis, bool direct) argument
[all...]
H A Daggregate.h110 VarDeclaration *vthis; // 'this' parameter if this aggregate is nested member in class:AggregateDeclaration
H A Ddclass.c685 vthis = baseClass->vthis;
698 if (vthis) // if inheriting from nested class
H A Dmtype.c8603 if (ident == Id::outer && sym->vthis)
8605 if (sym->vthis->semanticRun == PASSinit)
8606 sym->vthis->semantic(NULL);
8610 DotVarExp *dve = new DotVarExp(e->loc, e, sym->vthis);
8631 ve->var = fd->vthis;
8632 const bool nestedError = fd->vthis->checkNestedReference(sc, e->loc);
8635 ve->type = fd->vthis->type->addMod(e->type->mod);
8642 DotVarExp *dve = new DotVarExp(e->loc, e, sym->vthis);
8643 dve->type = sym->vthis->type->addMod(e->type->mod);
8794 e1 = new DotVarExp(e->loc, e1, tcd->vthis);
[all...]
H A Ddinterpret.c862 if (fd->vthis && thisarg)
864 ctfeStack.push(fd->vthis);
865 setValue(fd->vthis, thisarg);
961 if (tf->isref && e->op == TOKvar && ((VarExp *)e)->var == fd->vthis)
1856 if (istate && istate->fd->vthis)
1858 result = new VarExp(e->loc, istate->fd->vthis);
2045 if (er->op == TOKvar && ((VarExp *)er)->var == istate->fd->vthis)
2650 ne->type = e->sd->vthis->type;
H A Descape.c696 if (v == fd->vthis)
H A Ddeclaration.h535 VarDeclaration *vthis; // 'this' parameter (member and nested) member in class:FuncDeclaration
H A Dexpression.c102 e1 = new DotVarExp(loc, e1, tcd->vthis);
103 e1->type = tcd->vthis->type;
117 if (f->vthis)
121 e1 = new VarExp(loc, f->vthis);
200 assert(fd->vthis);
3343 if (fdthis && ad && isAggregate(fdthis->vthis->type) == ad &&
/netbsd-current/external/gpl3/gcc.old/dist/gcc/d/
H A Dd-codegen.cc2048 which is to be used for the 'vthis' context parameter for TYPE.
2140 if (!thisfd->vthis)
2163 gcc_assert (fdp->isNested () || fdp->vthis);
2180 if (!adp || !adp->isNested () || !adp->vthis)
2290 return get_decl_tree (fd->vthis);
2292 return convert_expr (get_decl_tree (fd->vthis),
2358 if (fdo->vthis && fdo->vthis->type != Type::tvoidptr)
2359 vthis_value = get_decl_tree (fdo->vthis);
2387 if (fd->vthis)
[all...]
H A Ddecl.cc881 For nested functions, D still generates a vthis, but it
883 if (d->vthis)
885 parm_decl = get_symbol_decl (d->vthis);
889 if (d->vthis->type == Type::tvoidptr)
930 tree this_tree = get_symbol_decl (d->vthis);
935 tree vthis_field = get_symbol_decl (ad->vthis);
1518 gcc_assert (fd->vthis);
1528 if (fd->vthis == vd)
1531 t = get_decl_tree (fd->vthis);
1540 tree vfield = get_symbol_decl (ad->vthis);
[all...]
H A Dexpr.cc1084 tree field = get_symbol_decl (sd->vthis);
2138 /* This check is for lambda's, remove 'vthis' as function isn't nested. */
2142 e->fd->vthis = NULL;
2233 fld->vthis = NULL;
2297 gcc_assert (fd && fd->vthis);
2298 result = get_decl_tree (fd->vthis);
2357 tree field = get_symbol_decl (cd->vthis);
2380 /* Generate: (new())->vthis = this; */
2438 tree field = get_symbol_decl (sd->vthis);
2941 tree field = get_symbol_decl (e->sd->vthis);
[all...]
/netbsd-current/external/gpl3/gcc/dist/gcc/d/
H A Dd-codegen.cc2347 which is to be used for the `vthis' context parameter for TYPE.
2443 if (!thisfd->vthis)
2466 gcc_assert (fdp->isNested () || fdp->vthis);
2483 if (!adp || !adp->isNested () || !adp->vthis)
2576 return get_decl_tree (fd->vthis);
2578 return convert_expr (get_decl_tree (fd->vthis),
2643 if (fdo->vthis && fdo->vthis->type != Type::tvoidptr)
2644 vthis_value = get_decl_tree (fdo->vthis);
2672 if (fd->vthis)
[all...]
H A Ddecl.cc158 For nested functions, D still generates a vthis, but it
160 if (decl->vthis)
162 tree parm_decl = get_symbol_decl (decl->vthis);
166 if (decl->vthis->type == Type::tvoidptr)
988 if (d->vthis)
989 d_function_chain->static_chain = get_symbol_decl (d->vthis);
994 tree this_tree = get_symbol_decl (d->vthis);
999 tree vthis_field = get_symbol_decl (ad->vthis);
1705 gcc_assert (fd->vthis);
1715 if (fd->vthis
[all...]
H A Dexpr.cc1093 tree field = get_symbol_decl (sd->vthis);
2068 /* This check is for lambda's, remove `vthis' as function isn't nested. */
2072 e->fd->vthis = NULL;
2163 fld->vthis = NULL;
2254 gcc_assert (fd && fd->vthis);
2255 result = get_decl_tree (fd->vthis);
2303 tree field = get_symbol_decl (cd->vthis);
2328 /* Generate: (new())->vthis = this; */
2377 tree field = get_symbol_decl (sd->vthis);
2891 tree field = get_symbol_decl (e->sd->vthis);
[all...]

Completed in 568 milliseconds

12