lintsup.c revision 9577:dca915fd85d3
1/*
2 * CDDL HEADER START
3 *
4 * The contents of this file are subject to the terms of the
5 * Common Development and Distribution License (the "License").
6 * You may not use this file except in compliance with the License.
7 *
8 * You can obtain a copy of the license at usr/src/OPENSOLARIS.LICENSE
9 * or http://www.opensolaris.org/os/licensing.
10 * See the License for the specific language governing permissions
11 * and limitations under the License.
12 *
13 * When distributing Covered Code, include this CDDL HEADER in each
14 * file and include the License file at usr/src/OPENSOLARIS.LICENSE.
15 * If applicable, add the following below this CDDL HEADER, with the
16 * fields enclosed by brackets "[]" replaced with your own identifying
17 * information: Portions Copyright [yyyy] [name of copyright owner]
18 *
19 * CDDL HEADER END
20 */
21/* LINTLIBRARY */
22/* PROTOLIB1 */
23
24/*
25 * Copyright 2009 Sun Microsystems, Inc.  All rights reserved.
26 * Use is subject to license terms.
27 */
28
29/*
30 * Supplimental definitions for lint that help us avoid
31 * options like `-x' that filter out things we want to
32 * know about as well as things we don't.
33 */
34
35/*
36 * The public interfaces are allowed to be "declared
37 * but not used".
38 */
39#include <stdio.h>
40#include <sys/auxv.h>
41#include <libelf.h>
42#include <link.h>
43#include <demangle.h>
44#include <elfcap.h>
45#include <dwarf.h>
46#include "sgs.h"
47#include "rtld.h"
48#include "libld.h"
49#include "conv.h"
50
51/*
52 * Suppress the actual message codes from the sgsmsg headers.
53 * With multiple string tables, we will have name collisions.
54 */
55#define	LINTSUP_SUPPRESS_STRINGS
56#include "arch_msg.h"
57#include "c_literal_msg.h"
58#include "cap_msg.h"
59#include "config_msg.h"
60#include "corenote_msg.h"
61#include "data_msg.h"
62#include "deftag_msg.h"
63#include "demangle_msg.h"
64#include "dl_msg.h"
65#include "dwarf_ehe_msg.h"
66#include "dwarf_msg.h"
67#include "dynamic_msg.h"
68#include "elf_msg.h"
69#include "globals_msg.h"
70#include "group_msg.h"
71#include "lddstub_msg.h"
72#include "phdr_msg.h"
73#include "relocate_amd64_msg.h"
74#include "relocate_i386_msg.h"
75#include "relocate_sparc_msg.h"
76#include "sections_msg.h"
77#include "segments_msg.h"
78#include "symbols_msg.h"
79#include "symbols_sparc_msg.h"
80#include "syminfo_msg.h"
81#include "time_msg.h"
82#include "version_msg.h"
83
84void
85foo()
86{
87#define	USE(name) (void) name((Msg)&_ ## name[0])
88
89	USE(_sgs_msg_libconv_arch);
90	USE(_sgs_msg_libconv_c_literal);
91	USE(_sgs_msg_libconv_cap);
92	USE(_sgs_msg_libconv_config);
93	USE(_sgs_msg_libconv_corenote);
94	USE(_sgs_msg_libconv_data);
95	USE(_sgs_msg_libconv_deftag);
96	USE(_sgs_msg_libconv_demangle);
97	USE(_sgs_msg_libconv_dl);
98	USE(_sgs_msg_libconv_dwarf_ehe);
99	USE(_sgs_msg_libconv_dwarf);
100	USE(_sgs_msg_libconv_dynamic);
101	USE(_sgs_msg_libconv_elf);
102	USE(_sgs_msg_libconv_globals);
103	USE(_sgs_msg_libconv_group);
104	USE(_sgs_msg_libconv_lddstub);
105	USE(_sgs_msg_libconv_phdr);
106	USE(_sgs_msg_libconv_relocate_amd64);
107	USE(_sgs_msg_libconv_relocate_i386);
108	USE(_sgs_msg_libconv_relocate_sparc);
109	USE(_sgs_msg_libconv_sections);
110	USE(_sgs_msg_libconv_segments);
111	USE(_sgs_msg_libconv_symbols);
112	USE(_sgs_msg_libconv_symbols_sparc);
113	USE(_sgs_msg_libconv_syminfo);
114	USE(_sgs_msg_libconv_time);
115	USE(_sgs_msg_libconv_version);
116
117#undef USE
118}
119