If you can't or won't spend time in fixing compline/d_gconvert.U ...
If I
can fix it, then I will undertake to do so.
At the moment, however, I have no idea how d_gconvert.U fits into "the scheme of things".
AFAICS, it's not part of the perl source.
... but I am always scared of interpolation when requiring quotes
I bothers me a bit, too.
Although the configure option that I used seems to have done the trick, it wasn't exactly noiseless:
In file included from sv.c:32:0:
sv.c: In function ‘Perl_sv_vcatpvfn_flags’:
config.h:909:39: warning: ‘%.*g’ directive writing between 1 and 133 b
+ytes into a region of size 127 [-Wformat-overflow=]
#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
^
perl.h:6791:13: note: in definition of macro ‘WITH_LC_NUMERIC_SET_TO_N
+EEDED_IN’
block;
+ \
^~~~~
sv.c:48:5: note: in expansion of macro ‘PERL_UNUSED_RESULT’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~~~~~~~~~~~
sv.c:48:24: note: in expansion of macro ‘Gconvert’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~
sv.c:13118:21: note: in expansion of macro ‘SNPRINTF_G’
SNPRINTF_G(fv, ebuf, sizeof(ebuf), precis)
^
config.h:909:39: note: assuming directive output of 132 bytes
#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
^
perl.h:6791:13: note: in definition of macro ‘WITH_LC_NUMERIC_SET_TO_N
+EEDED_IN’
block;
+ \
^~~~~
sv.c:48:5: note: in expansion of macro ‘PERL_UNUSED_RESULT’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~~~~~~~~~~~
sv.c:48:24: note: in expansion of macro ‘Gconvert’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~
sv.c:13118:21: note: in expansion of macro ‘SNPRINTF_G’
SNPRINTF_G(fv, ebuf, sizeof(ebuf), precis)
^
In file included from /usr/include/stdio.h:862:0,
from perlio.h:41,
from iperlsys.h:50,
from perl.h:3934,
from sv.c:32:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:33:10: note: ‘__builtin___
+sprintf_chk’ output between 2 and 134 bytes into a destination of siz
+e 127
return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__bos (__s), __fmt, __va_arg_pack ());
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from sv.c:32:0:
config.h:909:39: warning: ‘%.*g’ directive writing between 1 and 133 b
+ytes into a region of size 127 [-Wformat-overflow=]
#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
^
perl.h:6791:13: note: in definition of macro ‘WITH_LC_NUMERIC_SET_TO_N
+EEDED_IN’
block;
+ \
^~~~~
sv.c:48:5: note: in expansion of macro ‘PERL_UNUSED_RESULT’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~~~~~~~~~~~
sv.c:48:24: note: in expansion of macro ‘Gconvert’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~
sv.c:13118:21: note: in expansion of macro ‘SNPRINTF_G’
SNPRINTF_G(fv, ebuf, sizeof(ebuf), precis)
^
config.h:909:39: note: assuming directive output of 132 bytes
#define Gconvert(x,n,t,b) sprintf((b),"%.*g",(n),(x))
^
perl.h:6791:13: note: in definition of macro ‘WITH_LC_NUMERIC_SET_TO_N
+EEDED_IN’
block;
+ \
^~~~~
sv.c:48:5: note: in expansion of macro ‘PERL_UNUSED_RESULT’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~~~~~~~~~~~
sv.c:48:24: note: in expansion of macro ‘Gconvert’
PERL_UNUSED_RESULT(Gconvert((NV)(nv), (int)ndig, 0, buffer))
^~~~~~~~
sv.c:13118:21: note: in expansion of macro ‘SNPRINTF_G’
SNPRINTF_G(fv, ebuf, sizeof(ebuf), precis)
^
In file included from /usr/include/stdio.h:862:0,
from perlio.h:41,
from iperlsys.h:50,
from perl.h:3934,
from sv.c:32:
/usr/include/x86_64-linux-gnu/bits/stdio2.h:33:10: note: ‘__builtin___
+sprintf_chk’ output between 2 and 134 bytes into a destination of siz
+e 127
return __builtin___sprintf_chk (__s, __USE_FORTIFY_LEVEL - 1,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
__bos (__s), __fmt, __va_arg_pack ());
~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
Of course, I probably should at least run
make test before I start getting too excited about how successful it has been ;-)
Cheers,
Rob
-
Are you posting in the right place? Check out Where do I post X? to know for sure.
-
Posts may use any of the Perl Monks Approved HTML tags. Currently these include the following:
<code> <a> <b> <big>
<blockquote> <br /> <dd>
<dl> <dt> <em> <font>
<h1> <h2> <h3> <h4>
<h5> <h6> <hr /> <i>
<li> <nbsp> <ol> <p>
<small> <strike> <strong>
<sub> <sup> <table>
<td> <th> <tr> <tt>
<u> <ul>
-
Snippets of code should be wrapped in
<code> tags not
<pre> tags. In fact, <pre>
tags should generally be avoided. If they must
be used, extreme care should be
taken to ensure that their contents do not
have long lines (<70 chars), in order to prevent
horizontal scrolling (and possible janitor
intervention).
-
Want more info? How to link
or How to display code and escape characters
are good places to start.