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

Open
wants to merge 1 commit into
base: master
Choose a base branch
from

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)

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.

2 participants