⭐ 欢迎来到虫虫下载站! | 📦 资源下载 📁 资源专辑 ℹ️ 关于我们
⭐ 虫虫下载站

📄 elf_dem.h

📁 cfront是最开始c++语言到C语言的转换工具
💻 H
字号:
/*ident	"@(#)cls4:tools/demangler/osrc/elf_dem.h	1.1" *//******************************************************************************* C++ source for the C++ Language System, Release 3.0.  This productis a new release of the original cfront developed in the computerscience research center of AT&T Bell Laboratories.Copyright (c) 1991 AT&T and UNIX System Laboratories, Inc.Copyright (c) 1984, 1989, 1990 AT&T.  All Rights Reserved.THIS IS UNPUBLISHED PROPRIETARY SOURCE CODE of AT&T and UNIX SystemLaboratories, Inc.  The copyright notice above does not evidenceany actual or intended publication of such source code.*******************************************************************************//* ELF interface header file for the C++ demangler. *//*   The C++ demangler is shared by the ELF library and the C++   translator.  Because the translator is used on many different   operating systems, not all of which use ELF, we have set up this   library so that it may be compiled to work with or without libelf.   The default is *not* to compile for ELF.  Define the macro "ELF"    in the makefile to compile for ELF.*//*   These macros tack an _elf_..._demangle_ATTLC onto all global names   which should be hidden outside of the demangler module.  The only   visible names at this time are the functions "demangle" and    "demangle_withlen", which are mapped to "elf_demangle" and    "elf_demangle_withlen" for the ELF library.  Note that we use   "_elf_..._demangle_ATTLC" to hide names even for the translator.     We could have used just "_..._demangle_ATTLC" but since the names    are hidden why should we bother.*/#define	app_String	_elf_app_String_demangle_ATTLC#define	doarg		_elf_doarg_demangle_ATTLC#define	doargs		_elf_doargs_demangle_ATTLC#define	findop		_elf_findop_demangle_ATTLC#define	free_String	_elf_free_String_demangle_ATTLC#define	mk_String	_elf_mk_String_demangle_ATTLC#define	napp_String	_elf_napp_String_demangle_ATTLC#define	nplist		_elf_nplist_demangle_ATTLC#define	nprep_String	_elf_nprep_String_demangle_ATTLC#define	prep_String	_elf_prep_String_demangle_ATTLC#define	set_String	_elf_set_String_demangle_ATTLC#define trunc_String	_elf_trunc_String_demangle_ATTLC#define jbuf		_elf_jbuf_demangle_ATTLC#define strtol		_elf_strtol_demangle_ATTLC#if defined(ELF)#define	demangle		elf_demangle#define	demangle_withlen	elf_demangle_withlen/* The ELF library lets the programmer redirect all system services.   The services used by ELF are storage allocation and file I/O.   Fortunately, the demangler uses only malloc and free.  Actually, it   also uses realloc too, but ELF doesn't support it.  So we have to   do it some other way.*/#include "data.h"#define	malloc		(*_elf_malloc_pointer)#define	free		(*_elf_free_pointer)/* Make sure that realloc isn't called inadvertantly.*/#define realloc		__can_not_use_realloc_in_elf__#else /* defined(ELF) *//* not in BSD#include <malloc.h>*/#ifdef __STDC__#include <stdlib.h>#elseextern char *malloc();#endif#endif	/* defined(ELF) */#ifdef __STDC__#	include <limits.h>#	define NAME_MAX	INT_MAX#else	/* The only requirement on this is that it must be greater	   than the length of any symbol.	*/#	define NAME_MAX	30000#endif

⌨️ 快捷键说明

复制代码 Ctrl + C
搜索代码 Ctrl + F
全屏模式 F11
切换主题 Ctrl + Shift + D
显示快捷键 ?
增大字号 Ctrl + =
减小字号 Ctrl + -