From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 23741 invoked by alias); 28 Mar 2002 03:36:01 -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 23715 invoked by uid 71); 28 Mar 2002 03:36:00 -0000 Resent-Date: 28 Mar 2002 03:36:00 -0000 Resent-Message-ID: <20020328033600.23714.qmail@sources.redhat.com> Resent-From: gcc-gnats@gcc.gnu.org (GNATS Filer) Resent-To: nobody@gcc.gnu.org Resent-Cc: gcc-prs@gcc.gnu.org, gcc-bugs@gcc.gnu.org Resent-Reply-To: gcc-gnats@gcc.gnu.org, f_ker@yahoo.co.uk Received:(qmail 10230 invoked by uid 61); 28 Mar 2002 03:27:29 -0000 Message-Id:<20020328032729.10228.qmail@sources.redhat.com> Date: Wed, 27 Mar 2002 19:36:00 -0000 From: f_ker@yahoo.co.uk Reply-To: f_ker@yahoo.co.uk To: gcc-gnats@gcc.gnu.org X-Send-Pr-Version:gnatsweb-2.9.3 (1.1.1.1.2.31) Subject: preprocessor/6076: cross-compiled libcpp handles CPLUS_INCLUDE_PATH wrong X-SW-Source: 2002-03/txt/msg01067.txt.bz2 List-Id: >Number: 6076 >Category: preprocessor >Synopsis: cross-compiled libcpp handles CPLUS_INCLUDE_PATH wrong >Confidential: no >Severity: critical >Priority: high >Responsible: unassigned >State: open >Class: rejects-legal >Submitter-Id: net >Arrival-Date: Wed Mar 27 19:36:00 PST 2002 >Closed-Date: >Last-Modified: >Originator: f_ker@yahoo.co.uk >Release: 3.0.4 >Organization: >Environment: host=build=i686-pc-linux-gnu target=arm-thumb-elf >Description: Putting any file with templates in it in the CPLUS_INCLUDE_PATH and running it through (in my case) the arm-thumb-elf-g++ libcpp on host i686-pc-linux-gnu (gcc 3.0.4) produces an error "template with C linkage" pointing to declaration of templatised class. >How-To-Repeat: Put the following in a file (lets call it dummy.hh): template struct Dummy { }; Put dummy.hh somewhere in CPLUS_INCLUDE_PATH (but not in current directory) Put the following in another file (lets call it main.cc): #include do a 'arm-thumb-elf-g++ main.cc'. Error: In file included from main.cc:1: /home/foobar/include/dummy.hh:2: template with C linkage As far as I know, it only gives an error when using 'arm-thumb-elf-g++' on 'i686-pc-linux-gnu' host/build. But when using native 'i686-pc-linux-gnu-g++', all is well and dandy. Very strange. >Fix: >Release-Note: >Audit-Trail: >Unformatted: