From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 31330 invoked by alias); 25 Feb 2003 19:56:00 -0000 Mailing-List: contact gcc-prs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Archive: List-Post: List-Help: Sender: gcc-prs-owner@gcc.gnu.org Received: (qmail 31301 invoked by uid 71); 25 Feb 2003 19:56:00 -0000 Resent-Date: 25 Feb 2003 19:56:00 -0000 Resent-Message-ID: <20030225195600.31300.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org, mark@codesourcery.com Resent-Reply-To: gcc-gnats@gcc.gnu.org, oldham@codesourcery.com Received: (qmail 25504 invoked by uid 48); 25 Feb 2003 19:53:18 -0000 Message-Id: <20030225195318.25503.qmail@sources.redhat.com> Date: Tue, 25 Feb 2003 19:56:00 -0000 From: oldham@codesourcery.com Reply-To: oldham@codesourcery.com To: gcc-gnats@gcc.gnu.org Cc: mark@codesourcery.com X-Send-Pr-Version: gnatsweb-2.9.3 (1.1.1.1.2.31) X-GNATS-Notify: mark@codesourcery.com Subject: c++/9851: confusing error message when using '.', not '->' X-SW-Source: 2003-02/txt/msg01334.txt.bz2 List-Id: >Number: 9851 >Category: c++ >Synopsis: confusing error message when using '.', not '->' >Confidential: no >Severity: non-critical >Priority: medium >Responsible: unassigned >State: open >Class: change-request >Submitter-Id: net >Arrival-Date: Tue Feb 25 19:56:00 UTC 2003 >Closed-Date: >Last-Modified: >Originator: Jeffrey D. Oldham >Release: 3.4 20030224 (experimental) >Organization: >Environment: not applicable >Description: The C++ parser produces confusing error messages when trying to erroneously call a member function using the dot operator rather than the correct arrow operator. For example, g_.do_nothing() causes these error messages: foo.cc: In constructor `foo::foo()': foo.cc:6: error: expected type-name foo.cc:6: error: expected `::' foo.cc:6: error: expected `~' foo.cc:6: error: expected identifier g++ 2.96 produces intelligible error messages: foo.cc: In method `foo::foo ()': foo.cc:6: request for member `do_nothing' in `this->foo::g_', which is of non-aggregate type `goo *' >How-To-Repeat: g++ -c foo.cc >Fix: >Release-Note: >Audit-Trail: >Unformatted: ----gnatsweb-attachment---- Content-Type: application/octet-stream; name="foo.cc" Content-Transfer-Encoding: base64 Content-Disposition: attachment; filename="foo.cc" c3RydWN0IGdvbyB7CiAgdm9pZCBkb19ub3RoaW5nICgpIHt9Owp9OwoKc3RydWN0IGZvbyB7CiAg Zm9vICgpIHsgZ18uZG9fbm90aGluZyAoKTsgfQogIGdvbyAqIGdfOwp9Owo=