Mercurial > projects > ldc
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) |