[Top][All Lists]
[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]
libtool runs compiler command in wrong locale
From: |
Bruno Haible |
Subject: |
libtool runs compiler command in wrong locale |
Date: |
Sun, 20 Jan 2008 17:28:40 +0100 |
User-agent: |
KMail/1.5.4 |
Hi,
I have my environment variables set to German (LANG=de_DE.UTF-8), and
nevertheless the gcc compiler emits its warnings in English *if* invoked
by libtool.
Example (when compiling CLN-1.2.0):
$ /bin/sh ../libtool --mode=compile g++ -g -O2 -Wall -I../include -I../include
-I./base -c ./base/cl_as_exception.cc
g++ -g -O2 -Wall -I../include -I../include -I./base -c
./base/cl_as_exception.cc -fPIC -DPIC -o .libs/cl_as_exception.o
In file included from ./base/cl_N.h:6,
from ./base/cl_as_exception.cc:13:
../include/cln/number.h: In constructor 'cln::cl_number::cl_number(float)':
../include/cln/number.h:238: warning: type-punning to incomplete type might
break strict-aliasing rules
../include/cln/number.h: In member function 'cln::cl_number&
cln::cl_number::operator=(float)':
../include/cln/number.h:238: warning: type-punning to incomplete type might
break strict-aliasing rules
../include/cln/number.h: In constructor 'cln::cl_number::cl_number(double)':
../include/cln/number.h:239: warning: type-punning to incomplete type might
break strict-aliasing rules
../include/cln/number.h: In member function 'cln::cl_number&
cln::cl_number::operator=(double)':
../include/cln/number.h:239: warning: type-punning to incomplete type might
break strict-aliasing rules
g++ -g -O2 -Wall -I../include -I../include -I./base -c
./base/cl_as_exception.cc -o cl_as_exception.o >/dev/null 2>&1
But just copying the shown command into a shell prompt yields the warnings
in English:
$ g++ -g -O2 -Wall -I../include -I../include -I./base -c
./base/cl_as_exception.cc -fPIC -DPIC -o .libs/cl_as_exception.o
In file included from ./base/cl_N.h:6,
from ./base/cl_as_exception.cc:13:
../include/cln/number.h: In constructor »cln::cl_number::cl_number(float)«:
../include/cln/number.h:238: Warnung: Type-Punning auf unvollständigen Typen
kann strict-aliasing-Regeln verletzen
../include/cln/number.h: In member function »cln::cl_number&
cln::cl_number::operator=(float)«:
../include/cln/number.h:238: Warnung: Type-Punning auf unvollständigen Typen
kann strict-aliasing-Regeln verletzen
../include/cln/number.h: In constructor »cln::cl_number::cl_number(double)«:
../include/cln/number.h:239: Warnung: Type-Punning auf unvollständigen Typen
kann strict-aliasing-Regeln verletzen
../include/cln/number.h: In member function »cln::cl_number&
cln::cl_number::operator=(double)«:
../include/cln/number.h:239: Warnung: Type-Punning auf unvollständigen Typen
kann strict-aliasing-Regeln verletzen
Find attached a patch for it, relative to libtool-1.5.24 (tested),
and a tentative patch relative to the libtool CVS (untested).
Note that $ltenv can only be applied to commands that run a program, not to
shell builtins like "eval ..." or "(cd ... && ...)".
Bruno
libtool-1.5.24-patch
Description: Text Data
libtool-cvs-patch
Description: Text Data
- libtool runs compiler command in wrong locale,
Bruno Haible <=