From patchwork Thu Jun 10 14:56:15 2010 Content-Type: text/plain; charset="utf-8" MIME-Version: 1.0 Content-Transfer-Encoding: 7bit X-Patchwork-Submitter: Paolo Carlini X-Patchwork-Id: 55226 Return-Path: X-Original-To: incoming@patchwork.ozlabs.org Delivered-To: patchwork-incoming@bilbo.ozlabs.org Received: from sourceware.org (server1.sourceware.org [209.132.180.131]) by ozlabs.org (Postfix) with SMTP id DBE3FB7D84 for ; Fri, 11 Jun 2010 00:56:43 +1000 (EST) Received: (qmail 26386 invoked by alias); 10 Jun 2010 14:56:37 -0000 Received: (qmail 26339 invoked by uid 22791); 10 Jun 2010 14:56:26 -0000 X-SWARE-Spam-Status: No, hits=-0.9 required=5.0 tests=AWL, BAYES_20, RCVD_IN_DNSWL_NONE X-Spam-Check-By: sourceware.org Received: from vsmtp3.tin.it (HELO vsmtp3.tin.it) (212.216.176.223) by sourceware.org (qpsmtpd/0.43rc1) with ESMTP; Thu, 10 Jun 2010 14:56:19 +0000 Received: from [192.168.0.4] (79.33.220.215) by vsmtp3.tin.it (8.5.113) id 4BCE360604D07043; Thu, 10 Jun 2010 16:56:16 +0200 Message-ID: <4C10FD0F.6060802@oracle.com> Date: Thu, 10 Jun 2010 16:56:15 +0200 From: Paolo Carlini User-Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.9) Gecko/20100317 SUSE/3.0.4-1.1.1 Thunderbird/3.0.4 MIME-Version: 1.0 To: "gcc-patches@gcc.gnu.org" CC: libstdc++ Subject: [v3] libstdc++/43918 X-IsSubscribed: yes Mailing-List: contact gcc-patches-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Unsubscribe: List-Archive: List-Post: List-Help: Sender: gcc-patches-owner@gcc.gnu.org Delivered-To: mailing list gcc-patches@gcc.gnu.org Hi, I committed Suresh' patch (very slightly tweaked) and closed the PR. Thanks, Paolo. ///////////////////// 2010-06-10 Suresh Gumpula PR libstdc++/43918 * config/os/djgpp/error_constants.h: New. * configure.host: Use it. Index: configure.host =================================================================== --- configure.host (revision 160548) +++ configure.host (working copy) @@ -231,6 +231,7 @@ ;; *djgpp*) # leading * picks up "msdosdjgpp" os_include_dir="os/djgpp" + error_constants_dir="os/djgpp" ;; freebsd*) os_include_dir="os/bsd/freebsd" Index: config/os/djgpp/error_constants.h =================================================================== --- config/os/djgpp/error_constants.h (revision 0) +++ config/os/djgpp/error_constants.h (revision 0) @@ -0,0 +1,124 @@ +// Specific definitions for DJGPP platform -*- C++ -*- + +// Copyright (C) 2010 Free Software Foundation, Inc. +// +// This file is part of the GNU ISO C++ Library. This library is free +// software; you can redistribute it and/or modify it under the +// terms of the GNU General Public License as published by the +// Free Software Foundation; either version 3, or (at your option) +// any later version. + +// This library 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. + +// Under Section 7 of GPL version 3, you are granted additional +// permissions described in the GCC Runtime Library Exception, version +// 3.1, as published by the Free Software Foundation. + +// You should have received a copy of the GNU General Public License and +// a copy of the GCC Runtime Library Exception along with this program; +// see the files COPYING3 and COPYING.RUNTIME respectively. If not, see +// . + +/** @file error_constants.h + * This is an internal header file, included by other library headers. + * You should not attempt to use it directly. + */ + +#ifndef _GLIBCXX_ERROR_CONSTANTS +#define _GLIBCXX_ERROR_CONSTANTS 1 + +#include +#include + +_GLIBCXX_BEGIN_NAMESPACE(std) + +// Most of the commented-out error codes are socket-related and could be +// replaced by Winsock WSA-prefixed equivalents. + enum class errc + { +// address_family_not_supported = EAFNOSUPPORT, +// address_in_use = EADDRINUSE, +// address_not_available = EADDRNOTAVAIL, +// already_connected = EISCONN, + argument_list_too_long = E2BIG, + argument_out_of_domain = EDOM, + bad_address = EFAULT, + bad_file_descriptor = EBADF, +// bad_message = EBADMSG, + broken_pipe = EPIPE, +// connection_aborted = ECONNABORTED, +// connection_already_in_progress = EALREADY, +// connection_refused = ECONNREFUSED, +// connection_reset = ECONNRESET, +// cross_device_link = EXDEV, +// destination_address_required = EDESTADDRREQ, + device_or_resource_busy = EBUSY, + directory_not_empty = ENOTEMPTY, + executable_format_error = ENOEXEC, + file_exists = EEXIST, + file_too_large = EFBIG, + filename_too_long = ENAMETOOLONG, + function_not_supported = ENOSYS, +// host_unreachable = EHOSTUNREACH, +// identifier_removed = EIDRM, + illegal_byte_sequence = EILSEQ, + inappropriate_io_control_operation = ENOTTY, + interrupted = EINTR, + invalid_argument = EINVAL, + invalid_seek = ESPIPE, + io_error = EIO, + is_a_directory = EISDIR, +// message_size = EMSGSIZE, +// network_down = ENETDOWN, +// network_reset = ENETRESET, +// network_unreachable = ENETUNREACH, +// no_buffer_space = ENOBUFS, +// no_child_process = ECHILD, +// no_link = ENOLINK, + no_lock_available = ENOLCK, +// no_message_available = ENODATA, +// no_message = ENOMSG, +// no_protocol_option = ENOPROTOOPT, +// no_space_on_device = ENOSPC, +// no_stream_resources = ENOSR, + no_such_device_or_address = ENXIO, + no_such_device = ENODEV, + no_such_file_or_directory = ENOENT, + no_such_process = ESRCH, + not_a_directory = ENOTDIR, +// not_a_socket = ENOTSOCK, +// not_a_stream = ENOSTR, +// not_connected = ENOTCONN, + not_enough_memory = ENOMEM, +// not_supported = ENOTSUP, +// operation_canceled = ECANCELED, +// operation_in_progress = EINPROGRESS, +// operation_not_permitted = EPERM, +// operation_not_supported = EOPNOTSUPP, +// operation_would_block = EWOULDBLOCK, +// owner_dead = EOWNERDEAD, + permission_denied = EACCES, +// protocol_error = EPROTO, +// protocol_not_supported = EPROTONOSUPPORT, + read_only_file_system = EROFS, + resource_deadlock_would_occur = EDEADLK, + resource_unavailable_try_again = EAGAIN, + result_out_of_range = ERANGE, +// state_not_recoverable = ENOTRECOVERABLE, +// stream_timeout = ETIME, +// text_file_busy = ETXTBSY, +// timed_out = ETIMEDOUT, + too_many_files_open_in_system = ENFILE, + too_many_files_open = EMFILE, + too_many_links = EMLINK + // too_many_symbolic_link_levels = ELOOP, + // value_too_large = EOVERFLOW, + // wrong_protocol_type = EPROTOTYPE + }; + +_GLIBCXX_END_NAMESPACE + +#endif