dt_errtags.h

来自「Sun Solaris 10 中的 DTrace 组件的源代码。请参看: htt」· C头文件 代码 · 共 226 行

H
226
字号
/* * Copyright 2005 Sun Microsystems, Inc.  All rights reserved. * * The contents of this file are subject to the terms of the * Common Development and Distribution License, Version 1.0 only. * See the file usr/src/LICENSING.NOTICE in this distribution or * http://www.opensolaris.org/license/ for details. */#ifndef	_DT_ERRTAGS_H#define	_DT_ERRTAGS_H#pragma ident	"@(#)dt_errtags.h	1.6	04/09/27 SMI"#ifdef	__cplusplusextern "C" {#endif/* * This enum definition is used to define a set of error tags associated with * the D compiler's various error conditions.  The shell script mkerrtags.sh is * used to parse this file and create a corresponding dt_errtags.c source file. * If you do something other than add a new error tag here, you may need to * update the mkerrtags shell script as it is based upon simple regexps. */typedef enum {	D_UNKNOWN,			/* unknown D compiler error */	D_SYNTAX,			/* syntax error in input stream */	D_EMPTY,			/* empty translation unit */	D_TYPE_ERR,			/* type definition missing */	D_TYPE_MEMBER,			/* type member not found */	D_ASRELO,			/* relocation remains against symbol */	D_CG_EXPR,			/* tracing function called from expr */	D_CG_DYN,			/* expression returns dynamic result */	D_ATTR_MIN,			/* attributes less than amin setting */	D_ID_OFLOW,			/* identifier space overflow */	D_PDESC_GLOB,			/* probedesc has too many glob chars */	D_PDESC_ZERO,			/* probedesc matches zero probes */	D_PDESC_INVAL,			/* probedesc is not valid */	D_PRED_SCALAR,			/* predicate must be of scalar type */	D_FUNC_IDENT,			/* function designator is not ident */	D_FUNC_UNDEF,			/* function ident is not defined */	D_FUNC_IDKIND,			/* function ident is of wrong idkind */	D_OFFSETOF_TYPE,		/* offsetof arg is not sou type */	D_OFFSETOF_BITFIELD,		/* offsetof applied to field member */	D_SIZEOF_TYPE,			/* invalid sizeof type */	D_SIZEOF_BITFIELD,		/* sizeof applied to field member */	D_STRINGOF_TYPE,		/* invalid stringof type */	D_OP_IDENT,			/* operand must be an identifier */	D_OP_INT,			/* operand must be integral type */	D_OP_SCALAR,			/* operand must be scalar type */	D_OP_ARITH,			/* operand must be arithmetic type */	D_OP_WRITE,			/* operand must be writable variable */	D_OP_LVAL,			/* operand must be lvalue */	D_OP_INCOMPAT,			/* operand types are not compatible */	D_OP_VFPTR,			/* operand cannot be void or func ptr */	D_OP_ARRFUN,			/* operand cannot be array or func */	D_OP_PTR,			/* operand must be a pointer */	D_OP_SOU,			/* operand must be struct or union */	D_OP_INCOMPLETE,		/* operand is an incomplete type */	D_OP_DYN,			/* operand cannot be of dynamic type */	D_OP_ACT,			/* operand cannot be action */	D_AGG_REDEF,			/* aggregation cannot be redefined */	D_AGG_FUNC,			/* aggregating function required */	D_AGG_MDIM,			/* aggregation used as multi-dim arr */	D_ARR_BADREF,			/* access non-array using tuple */	D_ARR_LOCAL,			/* cannot define local assc array */	D_DIV_ZERO,			/* division by zero detected */	D_DEREF_NONPTR,			/* dereference non-pointer type */	D_DEREF_VOID,			/* dereference void pointer */	D_DEREF_FUNC,			/* dereference function pointer */	D_ADDROF_LVAL,			/* unary & applied to non-lvalue */	D_ADDROF_VAR,			/* unary & applied to variable */	D_ADDROF_BITFIELD,		/* unary & applied to field member */	D_XLATE_REDECL,			/* translator redeclared */	D_XLATE_NOCONV,			/* no conversion for member defined */	D_XLATE_NONE,			/* no translator for type combo */	D_XLATE_SOU,			/* dst must be struct or union type */	D_XLATE_INCOMPAT,		/* translator member type incompat */	D_XLATE_MEMB,			/* translator member is not valid */	D_INLINE_XLTYPE,		/* inline does not match xlator type */	D_INLINE_FUNC,			/* inline cannot be function type */	D_INLINE_INCOMPAT,		/* inline types not compatible */	D_CAST_INVAL,			/* invalid cast expression */	D_PRAGERR,			/* #pragma error message */	D_PRAGCTL_INVAL,		/* invalid control directive */	D_PRAGMA_INVAL,			/* invalid compiler pragma */	D_PRAGMA_UNUSED,		/* unused compiler pragma */	D_PRAGMA_MALFORM,		/* malformed #pragma argument list */	D_PRAGMA_OPTSET,		/* failed to set #pragma option */	D_PRAGMA_SCOPE,			/* #pragma identifier scope error */	D_PRAGMA_DEPEND,		/* #pragma dependency not satisfied */	D_MACRO_UNDEF,			/* macro parameter is not defined */	D_MACRO_OFLOW,			/* macro parameter integer overflow */	D_MACRO_UNUSED,			/* macro parameter is never used */	D_INT_OFLOW,			/* integer constant overflow */	D_INT_DIGIT,			/* integer digit is not valid */	D_STR_NL,			/* newline in string literal */	D_CHR_NL,			/* newline in character constant */	D_CHR_NULL,			/* empty character constant */	D_CHR_OFLOW,			/* character constant is too long */	D_IDENT_BADREF,			/* identifier expected type mismatch */	D_IDENT_UNDEF,			/* identifier is not known/defined */	D_IDENT_AMBIG,			/* identifier is ambiguous (var/enum) */	D_SYM_BADREF,			/* kernel/user symbol ref mismatch */	D_SYM_NOTYPES,			/* no CTF data available for sym ref */	D_SYM_MODEL,			/* module/program data model mismatch */	D_VAR_UNDEF,			/* reference to undefined variable */	D_VAR_UNSUP,			/* unsupported variable specification */	D_PROTO_LEN,			/* prototype length mismatch */	D_PROTO_ARG,			/* prototype argument mismatch */	D_ARGS_MULTI,			/* description matches >1 probe */	D_ARGS_NONE,			/* no args[] available */	D_ARGS_IDX,			/* invalid args[] index */	D_REGS_IDX,			/* invalid regs[] index */	D_KEY_TYPE,			/* invalid agg or array key type */	D_PRINTF_DYN_PROTO,		/* dynamic size argument missing */	D_PRINTF_DYN_TYPE,		/* dynamic size type mismatch */	D_PRINTF_AGG_CONV,		/* improper use of %@ conversion */	D_PRINTF_ARG_PROTO,		/* conversion missing value argument */	D_PRINTF_ARG_TYPE,		/* conversion arg has wrong type */	D_PRINTF_ARG_EXTRA,		/* extra arguments specified */	D_PRINTF_ARG_FMT,		/* format string is not a constant */	D_PRINTF_FMT_EMPTY,		/* format string is empty */	D_DECL_CHARATTR,		/* bad attributes for char decl */	D_DECL_VOIDATTR,		/* bad attributes for void decl */	D_DECL_SIGNINT,			/* sign/unsign with non-integer decl */	D_DECL_LONGINT,			/* long with non-arithmetic decl */	D_DECL_IDENT,			/* old-style declaration or bad type */	D_DECL_CLASS,			/* more than one storage class given */	D_DECL_BADCLASS,		/* decl class not supported in D */	D_DECL_PARMCLASS,		/* invalid class for parameter type */	D_DECL_PARMNAME,		/* invalid name for parameter */	D_DECL_COMBO, 			/* bad decl specifier combination */	D_DECL_ARRSUB,			/* const int required for array size */	D_DECL_ARRNULL,			/* array decl requires dim or tuple */	D_DECL_ARRTYPE,			/* invalid type for array tuple parm */	D_DECL_ARRVA,			/* array tuple may not use varargs */	D_DECL_ARRBIG,			/* array size too big */	D_DECL_FUNCTYPE,		/* invalid type for function parm */	D_DECL_FUNCVOID,		/* void must be sole function parm */	D_DECL_IDRED,			/* decl identifier redeclared */	D_DECL_TYPERED,			/* decl type redeclared */	D_DECL_MNAME,			/* member name missing */	D_DECL_SCOPE,			/* scoping operator used in decl */	D_DECL_BFCONST,			/* bit-field requires const size expr */	D_DECL_BFSIZE,			/* bit-field size too big for type */	D_DECL_BFTYPE,			/* bit-field type is not valid */	D_DECL_ENCONST,			/* enum tag requires const size expr */	D_DECL_ENOFLOW,			/* enumerator value overflows INT_MAX */	D_DECL_USELESS,			/* useless external declaration */	D_DECL_LOCASSC,			/* attempt to decl local assc array */	D_DECL_VOIDOBJ,			/* attempt to decl void object */	D_DECL_DYNOBJ,			/* attempt to decl dynamic object */	D_DECL_INCOMPLETE,		/* declaration uses incomplete type */	D_COMM_COMM,			/* commit() after commit() */	D_COMM_DREC,			/* commit() after data action */	D_SPEC_SPEC,			/* speculate() after speculate() */	D_SPEC_COMM,			/* speculate() after commit() */	D_SPEC_DREC,			/* speculate() after data action */	D_AGG_COMM,			/* aggregating act after commit() */	D_AGG_SPEC,			/* aggregating act after speculate() */	D_AGG_NULL,			/* aggregation stmt has null effect */	D_AGG_SCALAR,			/* aggregating function needs scalar */	D_ACT_SPEC,			/* destructive action after speculate */	D_EXIT_SPEC,			/* exit() action after speculate */	D_DREC_COMM,			/* data action after commit() */	D_PRINTA_PROTO,			/* printa() prototype mismatch */	D_PRINTA_AGGARG,		/* aggregation arg type mismatch */	D_PRINTA_AGGBAD,		/* printa() aggregation not defined */	D_TRACE_VOID,			/* trace() argument has void type */	D_TRACE_DYN,			/* trace() argument has dynamic type */	D_TRACEMEM_ADDR,		/* tracemem() address bad type */	D_TRACEMEM_SIZE,		/* tracemem() size bad type */	D_STACK_PROTO,			/* stack() prototype mismatch */	D_STACK_SIZE,			/* stack() size argument bad type */	D_USTACK_FRAMES,		/* ustack() frames arg bad type */	D_USTACK_STRSIZE,		/* ustack() strsize arg bad type */	D_USTACK_PROTO,			/* ustack() prototype mismatch */	D_LQUANT_BASETYPE,		/* lquantize() bad base type */	D_LQUANT_BASEVAL,		/* lquantize() bad base value */	D_LQUANT_LIMTYPE,		/* lquantize() bad limit type */	D_LQUANT_LIMVAL,		/* lquantize() bad limit value */	D_LQUANT_MISMATCH,		/* lquantize() limit < base */	D_LQUANT_STEPTYPE,		/* lquantize() bad step type */	D_LQUANT_STEPVAL,		/* lquantize() bad step value */	D_LQUANT_STEPLARGE,		/* lquantize() step too large */	D_LQUANT_STEPSMALL,		/* lquantize() step too small */	D_PROC_OFF,			/* byte offset exceeds function size */	D_PROC_ALIGN,			/* byte offset has invalid alignment */	D_PROC_NAME,			/* invalid process probe name */	D_PROC_GRAB,			/* failed to grab process */	D_PROC_DYN,			/* process is not dynamically linked */	D_PROC_LIB,			/* invalid process library name */	D_PROC_FUNC,			/* no such function in process */	D_PROC_CREATEFAIL,		/* pid probe creation failed */	D_PROC_NODEV,			/* fasttrap device is not installed */	D_PROC_BADPID,			/* user probe pid invalid */	D_PROC_BADPROV,			/* user probe provider invalid */	D_PROC_USDT,			/* problem initializing usdt */	D_CLEAR_PROTO,			/* clear() prototype mismatch */	D_CLEAR_AGGARG,			/* aggregation arg type mismatch */	D_CLEAR_AGGBAD,			/* clear() aggregation not defined */	D_NORMALIZE_PROTO,		/* normalize() prototype mismatch */	D_NORMALIZE_SCALAR,		/* normalize() value must be scalar */	D_NORMALIZE_AGGARG,		/* aggregation arg type mismatch */	D_NORMALIZE_AGGBAD,		/* normalize() aggregation not def. */	D_TRUNC_PROTO,			/* trunc() prototype mismatch */	D_TRUNC_SCALAR,			/* trunc() value must be scalar */	D_TRUNC_AGGARG,			/* aggregation arg type mismatch */	D_TRUNC_AGGBAD,			/* trunc() aggregation not def. */	D_PROV_NODEFS,			/* unexpected provider definition */	D_PROV_BADNAME,			/* invalid provider name */	D_PROV_EXISTS,			/* provider redeclared */	D_PROV_PREXISTS,		/* probe redeclared */	D_PROV_PRARGLEN			/* probe argument list too long */} dt_errtag_t;extern const char *dt_errtag(dt_errtag_t);#ifdef	__cplusplus}#endif#endif	/* _DT_ERRTAGS_H */

⌨️ 快捷键说明

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