2011年10月13日 星期四

Compiler:不行~~那麼大東西放進來,我....那個....會壞掉的....

心血來潮寫一下工作趣事。

今天下班前有位同事丟求救訊息給我,說他在build load時遇到一個很奇怪的錯誤訊息,請我幫忙看看是怎麼回事。
我根據ARM Compiler吐的Error code查了一下document:

乍看之下跟compiler生成debug訊息有關,所以我請他先將debug compile option關掉再試試,就這樣先打發掉。過了不久就收到回報,看起來debug option關掉還是會有這個Error,於是只好請他把Source code拿來給我看看。

在出問題的c code file裡看了老半天,做了幾個實驗,也找不出什麼問題,請學長來瞧瞧也看不出個所以然。後來我想說也許跟header include tree有關吧,如果是類似out of memory的問題,可能有什麼recursive include之類的。

正在追查header檔發現,靠腰,怎麼有個header檔大小是12xMByte,我還真的揉了揉眼睛,以為自己太累看錯了。進去一瞧才發現裡面定了一個超大的array,他想把某個binary file直接轉成C array,放到C code裡編進去。雖然....的確是有這種用法,不過這個array size已經突破天際啦,Compiler妹妹都被搞壞了。

寫這篇主要是想表達....其實我們公司的天才,也是滿多的...

沒有留言: