アカウント名:
パスワード:
その結果定数メモリへの書き込みが発生するのがバグ
組み込みやってるとconst領域はROMに確保されるのが当たり前だったのでconst付シンボルの中身を書き換えてるソース見て何だこりゃ?って思ったっけ。(そのソースをそのまま組み込み機に移植したら動かなくなったのを思い出した)
#それを相性問題で片づけたのはうちの上司#(Windowsプログラマ部隊より立場弱くて、更に「実績のあるソースだからそのまま使え」の通達付きだった)
>const領域はROMに確保されるのが当たり前それをリンカに指定するまでが組み込みプログラマの責任セクションて知ってる?(方言でセグメントと言うかもしれん)それにしてもすごい会社だなそこ
>それをリンカに指定するまでが組み込みプログラマの責任
あまり良くわかっていなくて申し訳ないのですが…。以下のようなものかなと思うのですが、
const int *v = (void *) 0xFFFFE0000;(int *)v = 1;
リンカがどう関係するのでしょうか?
より多くのコメントがこの議論にあるかもしれませんが、JavaScriptが有効ではない環境を使用している場合、クラシックなコメントシステム(D1)に設定を変更する必要があります。
普通のやつらの下を行け -- バッドノウハウ専門家
キャストでconstを外すのがバグではなく (スコア:1)
その結果定数メモリへの書き込みが発生するのがバグ
Re: (スコア:1)
組み込みやってるとconst領域はROMに確保されるのが当たり前だったのでconst付シンボルの中身を書き換えてるソース見て何だこりゃ?って思ったっけ。
(そのソースをそのまま組み込み機に移植したら動かなくなったのを思い出した)
#それを相性問題で片づけたのはうちの上司
#(Windowsプログラマ部隊より立場弱くて、更に「実績のあるソースだからそのまま使え」の通達付きだった)
Re: (スコア:0)
>const領域はROMに確保されるのが当たり前
それをリンカに指定するまでが組み込みプログラマの責任
セクションて知ってる?
(方言でセグメントと言うかもしれん)
それにしてもすごい会社だなそこ
Re:キャストでconstを外すのがバグではなく (スコア:0)
>それをリンカに指定するまでが組み込みプログラマの責任
あまり良くわかっていなくて申し訳ないのですが…。
以下のようなものかなと思うのですが、
const int *v = (void *) 0xFFFFE0000;
(int *)v = 1;
リンカがどう関係するのでしょうか?