2011-11-16 34 views
0

我想在安裝Festivalhere的要求後安裝gcc-2.7.2。在我的工作站上,我安裝了gcc 4.4.1。我在運行make時遇到問題。這裏是我正在運行make在現有的安裝上安裝gcc-2.7.2

錯誤消息如下:

decl.c: In function ‘push_class_level_binding’: 
decl.c:3606: error: lvalue required as increment operand 

出錯行從decl.c是:obstack_ptr_grow (&decl_obstack, x);

以上函數返回void。查看文件obstack.h中的函數定義顯示:

#define obstack_ptr_grow(OBSTACK,datum)     \ 
__extension__        \ 
({ struct obstack *__o = (OBSTACK);     \ 
    if (__o->next_free + sizeof (void *) > __o->chunk_limit)  \ 
    _obstack_newchunk (__o, sizeof (void *));    \ 
    if (!__o->alloc_failed)      \ 
    *((void **)__o->next_free)++ = ((void *)datum);   \ 
    (void) 0; }) 

這裏只有一個增量操作發生。我不知道如何改變它以使錯誤消失。或者我看錯了地方?

任何幫助是最受歡迎的。

P.S:請讓我知道,以防萬一需要更多信息。

+1

不要這樣做。嘗試用最近的GCC編譯你的代碼。如果需要,修補節日代碼。但2.7.2是一個糟糕的編譯器w.r.t.最近的GCC 4.6編譯器。 –

+0

我做到了。並結束了這個:http://stackoverflow.com/questions/8122478/declaration-of-void-abort-throws-different-exceptions - 我幾乎所有的東西都試了,最後想到重新安裝一個編譯器,節日傢伙自己建議。 – Sriram

+0

您可以編輯他們的代碼,並至少刪除-pedantic標誌。 –

回答