Logo AND Algorithmique Numérique Distribuée

Public GIT Repository
Do not include all _interface header here, but only where they are needed (speed...
[simgrid.git] / cruft / doc / faq.sgml
1 <refentry id="gras-faq">
2 <refmeta>
3 <refentrytitle>GRAS frequently asked questions</refentrytitle>
4 <manvolnum>3</manvolnum>
5 <refmiscinfo>GRAS Library</refmiscinfo>
6 </refmeta>
7
8 <refnamediv>
9 <refname>FAQ</refname><refpurpose>FAQ on the GRAS library</refpurpose>
10 </refnamediv>
11
12 <refsect1>
13 <title>Introduction</title>
14 <para>This document contains random bits about the most beloved traps of
15 GRAS users, and (hopefully) a way to escape them..</para> 
16
17 <refsect2>
18 <title>My code segfault in the communication process</title>
19
20 <para>Remember that GRAS expect the passed variable to match exactly the
21 passed type description. The most often issue is that you pass a structure
22 description, and you pass the address of a pointer to such a structure. If
23 you want to handle pointer to structures (as most of us do), please use
24 gras_datadesc_declare_ref() to construct the correct type description.
25 </para>
26 </refsect2>
27
28 <!-- Well, there is no offset, in fact. Isn't that great?
29 <refsect2>
30 <title>I use GRAS logging facility, and it warns me about non matching
31 format argument, but it does not refere to the right argument number.</title>
32
33 <para>Most probably, you are using one of the DEBUG, VERB, INFO, WARN or
34 ERROR macro to do so. They rewrite themselves into their CDEBUG, CVERB, ...
35 with the channel into which the logging must be done as first argument. The
36 apparent offset comes from here<footnote><para>Well in fact, that's not exactly
37 true since CDEBUG and friends are also macro rewritting themselves to macros
38 (CLOG), which rewrite themselves to the actual code. But this vision of the
39 reality match this fact, and is far easier to understand. This whole point
40 may disappear in the future as the macro familly gets rewritten to avoid
41 this pain. But it promises to be not trivial to achieve...</para></footnote>.</para>
42
43 </refsect2>
44 -->
45
46 </refsect1>
47
48 </refentry>