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 22 /* 23 * Copyright (c) 1998, 2010, Oracle and/or its affiliates. All rights reserved. 24 * Copyright 2018, Joyent, Inc. 25 */ 26 /* LINTLIBRARY */ 27 /* PROTOLIB1 */ 28 29 /* 30 * Supplemental 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 <elfcap.h> 44 #include <dwarf.h> 45 #include "sgs.h" 46 #include "rtld.h" 47 #include "libld.h" 48 #include "conv.h" 49 50 /* 51 * Suppress the actual message codes from the sgsmsg headers. 52 * With multiple string tables, we will have name collisions. 53 */ 54 #define LINTSUP_SUPPRESS_STRINGS 55 #include "arch_msg.h" 56 #include "audit_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 "entry_msg.h" 70 #include "globals_msg.h" 71 #include "group_msg.h" 72 #include "lddstub_msg.h" 73 #include "map_msg.h" 74 #include "phdr_msg.h" 75 #include "relocate_amd64_msg.h" 76 #include "relocate_i386_msg.h" 77 #include "relocate_sparc_msg.h" 78 #include "sections_msg.h" 79 #include "segments_msg.h" 80 #include "symbols_msg.h" 81 #include "symbols_sparc_msg.h" 82 #include "syminfo_msg.h" 83 #include "time_msg.h" 84 #include "version_msg.h" 85 86 void 87 foo() 88 { 89 #define USE(name) (void) name((Msg)&_ ## name[0]) 90 91 USE(_sgs_msg_libconv_arch); 92 USE(_sgs_msg_libconv_audit); 93 USE(_sgs_msg_libconv_c_literal); 94 USE(_sgs_msg_libconv_cap); 95 USE(_sgs_msg_libconv_config); 96 USE(_sgs_msg_libconv_corenote); 97 USE(_sgs_msg_libconv_data); 98 USE(_sgs_msg_libconv_deftag); 99 USE(_sgs_msg_libconv_demangle); 100 USE(_sgs_msg_libconv_dl); 101 USE(_sgs_msg_libconv_dwarf_ehe); 102 USE(_sgs_msg_libconv_dwarf); 103 USE(_sgs_msg_libconv_dynamic); 104 USE(_sgs_msg_libconv_elf); 105 USE(_sgs_msg_libconv_entry); 106 USE(_sgs_msg_libconv_globals); 107 USE(_sgs_msg_libconv_group); 108 USE(_sgs_msg_libconv_lddstub); 109 USE(_sgs_msg_libconv_map); 110 USE(_sgs_msg_libconv_phdr); 111 USE(_sgs_msg_libconv_relocate_amd64); 112 USE(_sgs_msg_libconv_relocate_i386); 113 USE(_sgs_msg_libconv_relocate_sparc); 114 USE(_sgs_msg_libconv_sections); 115 USE(_sgs_msg_libconv_segments); 116 USE(_sgs_msg_libconv_symbols); 117 USE(_sgs_msg_libconv_symbols_sparc); 118 USE(_sgs_msg_libconv_syminfo); 119 USE(_sgs_msg_libconv_time); 120 USE(_sgs_msg_libconv_version); 121 122 #undef USE 123 }