/*************************************************************************** * * diagnostic.h * * $Id: diagnostic.h 448754 2006-09-22 00:42:16Z sebor $ * *************************************************************************** * * Licensed to the Apache Software Foundation (ASF) under one or more * contributor license agreements. See the NOTICE file distributed * with this work for additional information regarding copyright * ownership. The ASF licenses this file to you under the Apache * License, Version 2.0 (the "License"); you may not use this file * except in compliance with the License. You may obtain a copy of * the License at * * http://www.apache.org/licenses/LICENSE-2.0 * * Unless required by applicable law or agreed to in writing, software * distributed under the License is distributed on an "AS IS" BASIS, * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or * implied. See the License for the specific language governing * permissions and limitations under the License. * * Copyright 2001-2006 Rogue Wave Software. * **************************************************************************/ #ifndef RWSTD_UTIL_DIAGNOSTIC_H_INCLUDED #define RWSTD_UTIL_DIAGNOSTIC_H_INCLUDED #include "scanner.h" // for token_t enum { E_FIRST = 100, E_SYMUSED = 101, // symbol used before defined E_OPENRD = 109, // opening a file for reading E_OPENWR = 110, // opening a file for writing E_PAIR = 111, // invalid pair of symbolic characters (,) E_COLNUM = 114, // bad number of collation orders E_CVT2EXT = 123, // convert a character to external representation E_SYMEND = 127, // unterminated symbolic name (missing '>') E_CVT = 136, // error converting a character E_IFMT = 135, // invalid integer format E_MBCHAR = 308, // illegal/incomplete multibyte character E_UCS = 315, // ill-formed or invalid UCS character E_MBTOWC = 310, // mbtowc() error E_RANGE = 311, // invalid range (ellipsis) E_SYNTAX = 312, // bad syntax E_COLORD = 133, // bad collating order E_REORD = 291, // bad reorder-after E_INVAL = 399, // invalid value E_CMDARG = 401, // invalid command line argument E_XARG = 402, // extra command line argument E_NOARG = 403, // missing command line argument E_OPTARG = 404, // missing argument to a command line option E_CALL = 405, // system or libc call failed E_NOTSUP = 712, // feature not supported (hard error) E_LAST = 699, W_FIRST = 700, W_DISABLE = 700, // disable all warnings W_COMPAT = 701, // no compatible locale installed W_NOPCS = 702, // PCS character value not defined W_COLSYM = 703, // undefined collating symbol or collating element W_MISSING = 704, // missing value W_REORD = 705, // bad reorder-after W_ICONV = 706, // iconv_open() or iconv() error W_SYM = 707, // unknown symbolic constant W_CHAR = 708, // unknown character (no corresponding symbol) W_CHARMAP = 709, // unknown charmap W_SYNTAX = 709, // recoverable syntax error W_RANGE = 710, // recoverable invalid range W_INVAL = 711, // recoverable invalid value W_CALL = 712, // system or libc call failed W_NOTSUP = 713, // feature not supported (will be ignored) W_LAST = 799, I_FIRST = 800, I_ENABLE = 800, // enable all informational messages I_STAGE = 801, // information about stages of processing I_OPENRD = 802, // information about files being opened for reading I_OPENWR = 803, // information about files being opened for writing I_READ = 804, // information about data reads I_WRITE = 805, // information about data writes I_SKIP = 806, // information about skpping an operation I_LAST = 899 }; bool issue_diag (int id, bool is_error, const Scanner::token_t* token, const char *fmt, ...); #endif // RWSTD_UTIL_DIAGNOSTIC_H_INCLUDED