    
    /********************************************************/
    /*                                                      */
    /*                                                      */
    /*         Copyright (C), 1993  SEIKO EPSON Corp.       */
    /*         ALL RIGHTS RESERVED                          */
    /*                                                      */
    /*                                                      */
    /*  file name : errno.h                                 */
    /*                                                      */
    /*  Revision history                                    */
    /*      93/08/31    first release       K.Shinozuka     */
    /*      93/11/31    small modification  K.Shinozuka     */
    /*      13/03/22    modify for P/ECE    Naoyuki Sawa    */
    /*                - EBADFの定義を追加しました。         */
    /*                  (fstat()の実装で必要になったため。) */
    /*      15/10/24    modify for P/ECE    Naoyuki Sawa    */
    /*                - program_invocation_name,program_invocation_short_nameの変数宣言を追加しました。 */
    /*                  変数定義はcliplibc.cに有ります。                                                */
    /*      15/11/02    modify for P/ECE    Naoyuki Sawa    */
    /*                - コメントを追記しました。            */
    /*                  定義は変更していません。            */
    /*      15/11/18    modify for P/ECE    Naoyuki Sawa    */
    /*                - 'extern "C" {'〜'}'で囲みました。.cppを含むWin32プロジェクトからもインクルード出来るようにするためです。 */
    /*                                                      */
    /********************************************************/


#ifndef SMC_ERRNO_H
#define SMC_ERRNO_H

#ifdef  __cplusplus
extern "C" {
#endif//__cplusplus

extern int errno;

#define EPERM       1       /* Operation not permitted */
#define ENOENT      2       /* No such file or directory */
#define EBADF       9       /* Bad file number */		/*{{2013/03/22:追加}}*/
#define ENOMEM      12      /* Cannot allocate memory */
#define EINVAL      22      /* Invalid argument */
#define ESPIPE      29      /* Illegal seek */
#define EDOM        33      /* domain error */
#define ERANGE      34      /* range error */

//{{2015/10/24追加:program_invocation_name,program_invocation_short_nameの変数宣言を追加しました。変数定義はcliplibc.cに有ります。
// * Sat Oct 24 14:03:11 JST 2015 Naoyuki Sawa
// - program_invocation_name,program_invocation_short_nameの変数宣言を追加しました。変数定義はcliplibc.cに有ります。
//   □「Linux Programmer's Manual - INVOCATION_NAME」(http://linuxjm.osdn.jp/html/LDP_man-pages/man3/program_invocation_name.3.html)より引用:
//   │program_invocation_nameは、呼び出し元プログラムの起動に使用された名前を保持する。
//   │内容はmain()のargv[0]の値と同じだが、program_invocation_nameの方はスコープがグローバルである点が異なる。
//   │program_invocation_short_nameは、呼び出し元プログラムの起動に使用された名前のbasename部分を保持する。
//   │つまり、この変数の内容は、最後のスラッシュ(/)とそれより前の部分がある場合、program_invocation_nameからこの部分を削除したものとなる。
//   │これらの変数はglibcのランタイムスタートアップコードで自動的に初期化される。(※下記注参照)
//   ※注:当ライブラリはこれらの変数を空文字列("")に初期化します。必要に応じてアプリケーションの初期化処理内で変更して下さい。
//    <例> program_invocation_short_name = basename((program_invocation_name = argv[0]));
// * Mon Nov 02 21:32:47 JST 2015 Naoyuki Sawa
// - Win32プロジェクトでは、main()が呼び出される前に、program_invocation_name,program_invocation_short_nameが初期化されるように変更しました。
//   P/ECEには上記のような仕組みは無いので、引き続き、アプリケーションの初期化処理内で変更して下さい。
//   詳細は、/clip/cliplibc.c の同日のコメントを参照して下さい。
extern char* program_invocation_name;
extern char* program_invocation_short_name;
//}}2015/10/24追加:program_invocation_name,program_invocation_short_nameの変数宣言を追加しました。変数定義はcliplibc.cに有ります。

#ifdef  __cplusplus
}//extern "C"
#endif//__cplusplus

#endif
