/************************************************************************* * * DO NOT ALTER OR REMOVE COPYRIGHT NOTICES OR THIS FILE HEADER. * * Copyright 2000, 2010 Oracle and/or its affiliates. * * OpenOffice.org - a multi-platform office productivity suite * * This file is part of OpenOffice.org. * * OpenOffice.org is free software: you can redistribute it and/or modify * it under the terms of the GNU Lesser General Public License version 3 * only, as published by the Free Software Foundation. * * OpenOffice.org is distributed in the hope that it will be useful, * but WITHOUT ANY WARRANTY; without even the implied warranty of * MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the * GNU Lesser General Public License version 3 for more details * (a copy is included in the LICENSE file that accompanied this code). * * You should have received a copy of the GNU Lesser General Public License * version 3 along with OpenOffice.org. If not, see * * for a copy of the LGPLv3 License. * ************************************************************************/ #ifndef _TEST_ALIGNMENT_IDL_ #define _TEST_ALIGNMENT_IDL_ #include module test { module alignment { struct C1 { short n1; }; struct C2 : C1 { long n2; }; struct C3 : C2 { double d3; long n3; }; struct C4 : C3 { long n4; double d4; }; struct C5 : C4 { hyper n5; boolean b5; }; struct C6 : C1 { C5 c; boolean b6; }; struct C7 : C1 { C1 c; boolean b6; }; struct C8 : C1 { any a; boolean b6; }; struct C9 : C1 { string s; boolean b6; }; struct C10 : C1 { float f; boolean b6; }; struct C11 : C1 { double d; boolean b6; }; struct C12 : C1 { hyper n; boolean b6; }; struct C13 : C1 { unsigned hyper n; boolean b6; }; struct C14 : C1 { ::com::sun::star::uno::XInterface x; boolean b6; }; struct C1x { short sx; double dx; }; struct C6x : C1x { C5 c; boolean b6; }; struct C7x : C1x { C1 c; boolean b6; }; struct C8x : C1x { any a; boolean b6; }; struct C9x : C1x { string s; boolean b6; }; struct C10x : C1x { float f; boolean b6; }; struct C11x : C1x { double d; boolean b6; }; struct C12x : C1x { hyper n; boolean b6; }; struct C13x : C1x { unsigned hyper n; boolean b6; }; struct C14x : C1x { ::com::sun::star::uno::XInterface x; boolean b6; }; struct D { short d; long e; }; struct E { boolean a; boolean b; boolean c; short d; long e; }; struct M { long n; short o; }; struct N : M { short p; }; struct N2 { M m; short p; }; struct O : M { double p; }; struct O2 : O { double p2; }; struct P : N { double p2; }; }; // alignment }; // test #endif