On Thu, Sep 11, 2008 at 12:46:50AM +0000, Raiker wrote:
> i'm starting to hate this 80 char limit...

Then don't use gmane. Follow the "Mailing List" links under
http://libagar.org/lists.html to subscribe by e-mail.

> There is a bug in window.h line 75, it reads
> AG_TAILQ_HEAD(,ag_window) subwins;
> 
> and the macro definition says:
> /*
>  * Tail queue definitions.
>  */
> #define AG_TAILQ_HEAD(name, t)                                        \
> struct name {                                                 \
>       struct t *tqh_first;    /* first element */             \
>       struct t **tqh_last;    /* addr of last next element */ \
> }
> 
> AND
> 
> in windows.h line 39 we have this:
> typedef struct ag_window {
> 
> which continues into line 81. So we have a macro that's trying to 
> define a struct inside the declaration of a struct of the same name.

Nope. The macro in this case will expand to:

        struct {
                struct ag_window *tqh_first;
                struct ag_window **tqh_last;
        } subwins;

Which is perfectly legal C.

> next is tableview.h line 188 has this:
> 
> #define AG_TableviewRowAdd(...) AG_TableviewRowAddFn(__VA_ARGS__, -1)
> 
> and as far as i know those 3 dots in the argument section are wrong, 
> taking those out eliminates the remaining error and allows compilation, 

This is a variadic macro. These do tend to cause problems with exotic
compilers. Since this is an undocumented function, I'll just remove it.

> then comes the
> linking nightmare (i'm no expert at linking, like i said i'm used to uC
> enviroments). 
> I had to add Pthread libs because the intructions didnt mention them.

http://libagar.org/docs/copile-msvc.html does mention pthreads under
"Optional: Threads support".

> Finally i get to this point:
> 
> A lot of warnings about manifests (which i know are harmless since VC6 
> doesnt use manifests, am i right?)
> 
> and this:
> 
> PART NOT INCLUDED DUE TO GODDAMED 80 LINE LIMIT, i cant figure out how 
> to format it
> 
> google told me that i'm using mixed types of libraries and that i have 
> to ignore all std libraries and complete the linking libraries by hand,
> is that correct or is there a better way?

Sure, there is a better way: move to a proper environment. When the process
of linking against a library becomes a "linking nightmare", maybe it would
be time to ask yourself some questions about the choices you've made in life.

_______________________________________________
Agar mailing list
[email protected]
http://libagar.org/lists.html

Reply via email to