Open MPI logo

Open MPI Development Mailing List Archives

  |   Home   |   Support   |   FAQ   |  

This web mail archive is frozen.

This page is part of a frozen web archive of this mailing list.

You can still navigate around this archive, but know that no new mails have been added to it since July of 2016.

Click here to be taken to the new web archives of this list; it includes all the mails that are in this frozen archive plus all new mails that have been sent to the list since it was migrated to the new archives.

Subject: [OMPI devel] VampirTrace: snprintf vs. sprintf
From: Jeff Squyres (jsquyres_at_[hidden])
Date: 2008-10-27 10:48:59


Actually, I think that this is a change that the VT guys just recently
put in, and I'm not sure why. I noticed this morning that it breaks
for me under the PGI compilers.

VT guys -- can you comment?

On Oct 27, 2008, at 10:46 AM, George Bosilca wrote:

> Brad,
>
> We have our version of snprintf, just in case the installed standard
> library doesn't support it. This function called opal_snprintf will
> be aliased to snprintf (./opal/include/opal_config_bottom.h:410). As
> you are supposed to always include opal_config.h as first header in
> your files, using snprintf will always be safe.
>
> george.
>
> On Oct 27, 2008, at 8:08 AM, Brad Penoff wrote:
>
>> Greetings,
>>
>> In the current ompi-trunk (r19808), my build was breaking. I have
>> created a small patch to fix this, but I wanted to ask the team about
>> something first. One of the problems was with snprintf. I read a
>> little bit more about this and I found this quote about snprintf:
>>
>> "snprintf does not form part of the widely implemented ANSI C
>> standard, as sprintf does. However, it came into the language for the
>> later C99 standard and often existed in C libraries before that."
>>
>> So I'm wondering, should the use of snprintf as in
>> ompi/contrib/vt/vt/tools/opari/tool/opari.cc depend on the value of
>> _GLIBCXX_USE_C99 ?
>>
>> For my system, one "fix" seemed to be to just delete this "using
>> std::snprintf;" line. Everything then compiled and worked, but I
>> don't
>> know how general/desired this "solution" is. Any comments on
>> snprintf
>> and this solution?
>>
>> Thanks,
>> brad
>>
>> $ svn diff
>> Index: ompi/contrib/vt/vt/tools/opari/tool/opari.cc
>> ===================================================================
>> --- ompi/contrib/vt/vt/tools/opari/tool/opari.cc (revision 19808)
>> +++ ompi/contrib/vt/vt/tools/opari/tool/opari.cc (working copy)
>> @@ -15,7 +15,6 @@
>> using std::cout;
>> using std::cerr;
>> #include <cstdio>
>> - using std::snprintf;
>> using std::remove;
>> #include <cstring>
>> using std::strcmp;
>> Index: orte/tools/orte-iof/orte-iof.c
>> ===================================================================
>> --- orte/tools/orte-iof/orte-iof.c (revision 19808)
>> +++ orte/tools/orte-iof/orte-iof.c (working copy)
>> @@ -37,6 +37,9 @@
>> #ifdef HAVE_STDLIB_H
>> #include <stdlib.h>
>> #endif /* HAVE_STDLIB_H */
>> +#ifdef HAVE_SIGNAL_H
>> +#include <signal.h>
>> +#endif /* HAVE_SIGNAL_H */
>> #ifdef HAVE_SYS_STAT_H
>> #include <sys/stat.h>
>> #endif /* HAVE_SYS_STAT_H */
>> _______________________________________________
>> devel mailing list
>> devel_at_[hidden]
>> http://www.open-mpi.org/mailman/listinfo.cgi/devel
>
> _______________________________________________
> devel mailing list
> devel_at_[hidden]
> http://www.open-mpi.org/mailman/listinfo.cgi/devel

-- 
Jeff Squyres
Cisco Systems