struct / union in initializer, RFE #901.
[sdcc.git] / sdcc / support / sdbinutils / include / vms / internal.h
blob39bd83bb2b86650bc87848a4632edd19a168f7f8
1 /* Alpha VMS internal format.
3 Copyright (C) 2010-2022 Free Software Foundation, Inc.
4 Written by Tristan Gingold <gingold@adacore.com>, AdaCore.
6 This file is part of BFD, the Binary File Descriptor library.
8 This program is free software; you can redistribute it and/or modify
9 it under the terms of the GNU General Public License as published by
10 the Free Software Foundation; either version 3 of the License, or
11 (at your option) any later version.
13 This program is distributed in the hope that it will be useful,
14 but WITHOUT ANY WARRANTY; without even the implied warranty of
15 MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE. See the
16 GNU General Public License for more details.
18 You should have received a copy of the GNU General Public License
19 along with this program; if not, write to the Free Software
20 Foundation, Inc., 51 Franklin Street - Fifth Floor, Boston,
21 MA 02110-1301, USA. */
23 #ifndef _VMS_INTERNAL_H
24 #define _VMS_INTERNAL_H
26 struct vms_internal_eisd
28 unsigned int majorid; /* Version. */
29 unsigned int minorid;
30 unsigned int eisdsize; /* Size (in bytes) of this eisd. */
31 unsigned int secsize; /* Size (in bytes) of the section. */
32 bfd_vma virt_addr; /* Virtual address of the section. */
33 unsigned int flags; /* Flags. */
34 unsigned int vbn; /* Base virtual block number. */
35 unsigned char pfc; /* Page fault cluster. */
36 unsigned char matchctl; /* Linker match control. */
37 unsigned char type; /* Section type. */
40 struct vms_internal_gbl_eisd
42 struct vms_internal_eisd common;
44 unsigned int ident; /* Ident for global section. */
45 unsigned char gblnam[44]; /* Global name ascic. */
48 struct vms_internal_eisd_map
50 /* Next eisd in the list. */
51 struct vms_internal_eisd_map *next;
53 /* Offset in output file. */
54 file_ptr file_pos;
56 union
58 struct vms_internal_eisd eisd;
59 struct vms_internal_gbl_eisd gbl_eisd;
60 } u;
63 #endif /* _VMS_INTERNAL_H */