comparison dmd/attrib.c @ 797:340acf1535d0

Removed KDevelop3 project files, CMake can generate them just fine! Fixed function literals in static initializers. Changed alignment of delegates from 2*PTRSIZE to just PTRSIZE. Changed errors to go to stderr instead of stdout. Fairly major rewriting of struct/union/class handling, STILL A BIT BUGGY !!!
author Tomas Lindquist Olsen <tomas.l.olsen@gmail.com>
date Sat, 29 Nov 2008 21:25:43 +0100
parents 661384d6a936
children 7d16ce7ad19d
comparison
equal deleted inserted replaced
796:6e7a4c3b64d2 797:340acf1535d0
614 sc->inunion = isunion; 614 sc->inunion = isunion;
615 sc->offset = 0; 615 sc->offset = 0;
616 sc->flags = 0; 616 sc->flags = 0;
617 aad.structalign = sc->structalign; 617 aad.structalign = sc->structalign;
618 aad.parent = ad; 618 aad.parent = ad;
619
620 for (unsigned i = 0; i < decl->dim; i++) 619 for (unsigned i = 0; i < decl->dim; i++)
621 { 620 {
622 Dsymbol *s = (Dsymbol *)decl->data[i]; 621 Dsymbol *s = (Dsymbol *)decl->data[i];
623 622
624 s->semantic(sc); 623 s->semantic(sc);
669 // Add members of aad to ad 668 // Add members of aad to ad
670 //printf("\tadding members of aad (%p) to '%s'\n", &aad, ad->toChars()); 669 //printf("\tadding members of aad (%p) to '%s'\n", &aad, ad->toChars());
671 for (unsigned i = 0; i < aad.fields.dim; i++) 670 for (unsigned i = 0; i < aad.fields.dim; i++)
672 { 671 {
673 VarDeclaration *v = (VarDeclaration *)aad.fields.data[i]; 672 VarDeclaration *v = (VarDeclaration *)aad.fields.data[i];
673
674 // LDC
675 v->offset2 = sc->offset;
674 676
675 v->offset += sc->offset; 677 v->offset += sc->offset;
676 678
677 // LDC 679 // LDC
678 if (!v->anonDecl) 680 if (!v->anonDecl)