Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

MinGWのビルドエラーを修正する(_wcstokのマクロ定義を削除) #1976

Merged
merged 1 commit into from
Jan 15, 2025

Conversation

suconbu
Copy link
Member

@suconbu suconbu commented Jan 11, 2025

PR対象

  • アプリ(サクラエディタ本体)

カテゴリ

  • ビルド関連

PR の背景

MinGWビルド時に以下のエラーが出るようになっているため直します。
https://dev.azure.com/sakuraeditor/sakura/_build/results?buildId=3617&view=logs&j=b39c645f-42c7-549c-3e61-e6ffdeb72915&t=ea0a0af4-dbfa-5a7a-b1b8-f35f253695ca&l=81

D:/a/1/s/sakura_core/StdAfx.h:70:17: error: conflicting declaration of C function 'wchar_t* wcstok(wchar_t*, const wchar_t*)'
   70 | #define _wcstok wcstok
      |                 ^~~~~~

仕様・動作説明

先々月、MinGW側で下記の変更が入ったようで、
mingw-w64/mingw-w64@bafccb4#diff-bfb0974d3f2e42b77f3ef9ef03229235af8434fa1fc4996cec35fd6a1519f4bc

  • wcstok の引数が2つから3つ (こちらが標準とのこと) に変更
  • 今まで提供されていなかった _wcstok が追加

このため以下のマクロ定義は不要になりました。
本PRではこれを削除します。

// MinGW-w64-gcc にない関数をマクロ定義する
#define _wcstok wcstok

PR の影響範囲

本PR適用後、古いMinGW環境ではビルドが通せなくなるため、
ローカルでMinGWビルドしたい人は手持ちのMinGWの最新化が必要です。
MinGW w64 インストール方法

テスト内容

ローカルビルド、CIビルドそれぞれでMinGWのビルドエラー解消されることを確認します。

関連 issue, PR

参考資料

@AppVeyorBot
Copy link

Build sakura 1.0.4374 completed (commit 5a7b4e159c by @suconbu)

Copy link
Member

@kengoide kengoide left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

対応ありがとうございます…!

@suconbu
Copy link
Member Author

suconbu commented Jan 15, 2025

Approveありがとうございます。マージします。

@suconbu suconbu merged commit 85cb1bf into master Jan 15, 2025
31 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

3 participants