Patch title: Release 85 bulk changes
Abstract:
File: /pliant/language/debug/error1.pli
Key:
    Removed line
    Added line
# Copyright  Hubert Tonneau  hubert.tonneau@pliant.cx
#
# This program is free software; you can redistribute it and/or
# modify it under the terms of the GNU General Public License version 2
# as published by the Free Software Foundation.
#
# This program is distributed in the hope that it will be useful,
# but WITHOUT ANY WARRANTY; without even the implied warranty of
# MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.  See the
# GNU General Public License for more details.
#
# You should have received a copy of the GNU General Public License
# version 2 along with this program; if not, write to the Free Software
# Foundation, Inc., 59 Temple Place - Suite 330, Boston, MA  02111-1307, USA.

scope "/pliant/language/" "/pliant/install/"
module "/pliant/install/ring1.pli"

function error_id num -> eid
  arg Int num ; arg ErrorID eid
  addressof:eid map Int := num

public

  constant error_filter_all           error_id:(-1)
  constant error_filter_none          error_id:0

  constant error_id_noerror           error_id:0
  constant error_id_restore           error_id:1
  constant error_id_parse             error_id:2
  constant error_id_compile           error_id:3
  constant error_id_missing           error_id:4
  constant error_id_multiple          error_id:5
  constant error_id_mismatch          error_id:6
  constant error_id_unexpected        error_id:7
  constant error_id_starvation        error_id:8
  constant error_id_corrupted         error_id:9
  constant error_id_memory_violation  error_id:10
  constant error_id_check             error_id:11
  constant error_id_os                error_id:12
  constant error_id_memory_starvation error_id:13
  constant error_id_io                error_id:14
  constant error_id_arithmetic        error_id:15
  constant error_id_unknown           error_id:16
  constant error_id_abort             error_id:17

  constant error_id_user              error_id:18


function compare e1 e2 -> c
  arg ErrorID e1 e2 ; arg Int c
  if (addressof:e1 map Int)=(addressof:e2 map Int)
    c := compare_equal
  else
    c := compare_different


function error msg
  arg Str msg
  error_notify error_id_unknown null msg

function error id msg
  arg ErrorID id ; arg Str msg
  error_notify id null msg

export compare error