DMARC-Filter: OpenDMARC Filter v1.4.2 delorie.com 58GBAHN9133880 Authentication-Results: delorie.com; dmarc=pass (p=none dis=none) header.from=cygwin.com Authentication-Results: delorie.com; spf=pass smtp.mailfrom=cygwin.com DKIM-Filter: OpenDKIM Filter v2.11.0 delorie.com 58GBAHN9133880 Authentication-Results: delorie.com; dkim=pass (1024-bit key, unprotected) header.d=cygwin.com header.i=@cygwin.com header.a=rsa-sha256 header.s=default header.b=RUJYX6zV X-Recipient: archive-cygwin AT delorie DOT com DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 7B5D23857007 DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=cygwin.com; s=default; t=1758021015; bh=sTDPGuHPhPpuYgRFHF4gEx5F4//x6hArq02Yhii2ALE=; h=Subject:To:References:Date:In-Reply-To:List-Id:List-Unsubscribe: List-Archive:List-Post:List-Help:List-Subscribe:From:Reply-To:Cc: From; b=RUJYX6zVx1LTZOe7L6RzBobd736ifMmeKcZFGRWi7sb2UUFGj5p1VsDYBsBWOJs4X rYzmh0XW1N3nv/H0Qnut0W6X2GCWzgSs/UJfagpe4d9ydvNu1Ufz5sPGDQXPvuh2Mn xPMhKVKAjCo76vNzT5yKAYXVCKogGxNTz1N6MseA= X-Original-To: cygwin AT cygwin DOT com Delivered-To: cygwin AT cygwin DOT com DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org 3159B3858D39 ARC-Filter: OpenARC Filter v1.0.0 sourceware.org 3159B3858D39 ARC-Seal: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1758020983; cv=none; b=Gra/xf8K0Th7GwpCd4SkoKCh0KvYypyueR2SMwkazcLklwyC//A9vSNniXywe2rI25JPGBB7oZRdgYF9kbjReaRbTDsB756HcDv6nuYc1LLIgBrzHqWdbyS50cI6KMsd4erhnFl7yeltI60Lm4lgoBtTJZDZ/pZtHUCJAEjyW5A= ARC-Message-Signature: i=1; a=rsa-sha256; d=sourceware.org; s=key; t=1758020983; c=relaxed/simple; bh=3hbgPqhAZT87C2hYEFWDSaKZZGcULhEzfXL32dYKeUw=; h=From:Subject:To:Message-ID:Date:MIME-Version; b=gWu4vRTK0itgmZXoD9FErG5baAy6Oh9XHIPQwBAD1nLmRBk0ep37D57usMTFVeT42LTrR0r5iXoerbBVJuiMxWLQz2V/pMEn3MfGI/kinEx//ABe6mZP3yfTgUAPz4jqyldoBgStA6crtUGa3OOxZZX6/wIIAVbn4EyUpioV9yw= ARC-Authentication-Results: i=1; server2.sourceware.org DKIM-Filter: OpenDKIM Filter v2.11.0 sourceware.org 3159B3858D39 Subject: Re: clang 20.1.8+21.1.1: __stdcall__ warning only from Cygwin version To: cygwin AT cygwin DOT com References: <5c3c354b-8662-c961-9e13-bdfd4b6a9a75 AT t-online DOT de> <82307f10-1fb1-9f84-1ecb-8081bf224d29 AT jdrake DOT com> Message-ID: Date: Tue, 16 Sep 2025 13:09:42 +0200 User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64; rv:128.0) Gecko/20100101 SeaMonkey/2.53.21 MIME-Version: 1.0 In-Reply-To: <82307f10-1fb1-9f84-1ecb-8081bf224d29@jdrake.com> X-TOI-EXPURGATEID: 150726::1758020981-5B7FD977-F584230B/0/0 CLEAN NORMAL X-TOI-MSGID: e0be8deb-810f-4397-a642-01ec9c3a928a X-BeenThere: cygwin AT cygwin DOT com X-Mailman-Version: 2.1.30 Precedence: list List-Id: General Cygwin discussions and problem reports List-Unsubscribe: , List-Archive: List-Post: List-Help: List-Subscribe: , From: Christian Franke via Cygwin Reply-To: cygwin AT cygwin DOT com Cc: Christian Franke Content-Type: text/plain; charset="utf-8"; Format="flowed" Errors-To: cygwin-bounces~archive-cygwin=delorie DOT com AT cygwin DOT com Sender: "Cygwin" Content-Transfer-Encoding: 8bit X-MIME-Autoconverted: from base64 to 8bit by delorie.com id 58GBAHN9133880 Jeremy Drake via Cygwin wrote: > On Fri, 12 Sep 2025, Christian Franke via Cygwin wrote: > >> Testcase: >> >> $ cat winapi.c >> #include >> int WINAPI SomeDllFunction(int, int, int, int, int); >> >> int call_it() >> { >>   return SomeDllFunction(1, 2, 3, 4, 5); >> } >> >> $ clang -S winapi.c  # with 20.1.8 and 21.1.1 >> winapi.c:2:5: warning: '__stdcall__' calling convention is not supported >> for this target >>       [-Wignored-attributes] >>     2 | int WINAPI SomeDllFunction(int, int, int, int, int); >>       |     ^ >> /usr/include/w32api/minwindef.h:98:16: note: expanded from macro 'WINAPI' >>    98 | #define WINAPI __stdcall >>       |                ^ >> :400:34: note: expanded from macro '__stdcall' >>   400 | #define __stdcall __attribute__((__stdcall__)) >>       |                                  ^ >> ... > This should be fixed in 21.1.1-2, just uploaded. Thanks for the report. Now no warnings occur for ABI attributes stdcall, cdecl, ms_abi and sysv_abi. Only the latter results in different function call code (6 instead of 4 parameters in registers, additional push/pop if xmm registers). This is consistent with gcc. clang and x86_64-w64-mingw32-clang generate identical assembly files. -- Thanks, Christian -- Problem reports: https://cygwin.com/problems.html FAQ: https://cygwin.com/faq/ Documentation: https://cygwin.com/docs.html Unsubscribe info: https://cygwin.com/ml/#unsubscribe-simple