X-Recipient: archive-cygwin AT delorie DOT com DomainKey-Signature: a=rsa-sha1; c=nofws; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:reply-to:message-id:to:subject :in-reply-to:references:mime-version:content-type :content-transfer-encoding; q=dns; s=default; b=wXR4hQYCh4nCfya/ 1g6WbEHcDx8CPKWRImEkmYIhVCG/0/ou5HFEC+sc5PiPVEaeBF9alJwbZqcUV7Qo 2ded3dFaUMI34DOtQcT141Tsmi2IfvB9vn1JuxnOFL80gXGWAxOv2Tcsk1Vsta+H jqMKOE77MNATvd4D0PJqAcbqLFg= DKIM-Signature: v=1; a=rsa-sha1; c=relaxed; d=sourceware.org; h=list-id :list-unsubscribe:list-subscribe:list-archive:list-post :list-help:sender:date:from:reply-to:message-id:to:subject :in-reply-to:references:mime-version:content-type :content-transfer-encoding; s=default; bh=CjnjBk543b01WFQi+ZGOBV j6JZk=; b=EFskzDxbr10hldo7nwyzVYIk2gsaG/feACKjZ0PCzrR3KNy6xVjrhY tnWBN4djh1zJaTv2d55J1NDLKPhm8QCd7E2mOoPJfHnbPyg7VAKNE6VIGiHGmdBq LZ5pgsAiYDQsREhcbS2mSE309Dpp8PbWT36h5Uj00S/G1J6OwhwEU= Mailing-List: contact cygwin-help AT cygwin DOT com; run by ezmlm List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: cygwin-owner AT cygwin DOT com Mail-Followup-To: cygwin AT cygwin DOT com Delivered-To: mailing list cygwin AT cygwin DOT com Authentication-Results: sourceware.org; auth=none X-Spam-SWARE-Status: No, score=-0.7 required=5.0 tests=BAYES_00,FREEMAIL_FROM,KAM_THEBAT,RCVD_IN_DNSWL_LOW,SPF_PASS autolearn=no version=3.3.2 spammy=HX-Priority:Normal, H*F:D*yandex.ru, H*M:yandex, H*x:Bat! X-HELO: forward102o.mail.yandex.net DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1536154503; bh=en8hSakJfg98FJtZZ+NYMNhaDZ9ZMWGL41zi6EMTX00=; h=Date:From:Reply-To:Message-ID:To:Subject:In-Reply-To:References; b=kPXVVOAaxg4DhPuxowQ+K2XcgAn9hp/T17428y+QnN0+1KrDVNXCpV1JPFJgMECyt u9wtGkEurGlcH5/zVWP5w74kcp4CtWHGbli9gQ0T1h3YPX0G5jXXOS7XbVX137izf2 TBPmuxkKYVxvUq9e4QGvgzGLyvOJmRUeCPsLsNNE= DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=yandex.ru; s=mail; t=1536154502; bh=en8hSakJfg98FJtZZ+NYMNhaDZ9ZMWGL41zi6EMTX00=; h=Date:From:Reply-To:Message-ID:To:Subject:In-Reply-To:References; b=ptqnsqtdK2bkubWJCG+15rZYuGYX5pIPrNOCSnghDMUAE2ndc8M57A8PC5gMxY0tG ESpeZN2kD5ArIxzHvwA3MC3Ncm/x1YryqTkzXxjimh/Tc1EyiwnN1jzhXILCWWINBy +Gs9OCHD4FR74ZIVRl6rQqYdXRJNiJRqBISCznDQ= Authentication-Results: smtp3p.mail.yandex.net; dkim=pass header.i=@yandex.ru Date: Wed, 5 Sep 2018 16:31:33 +0300 From: Andrey Repin Reply-To: cygwin AT cygwin DOT com Message-ID: <672049203.20180905163133@yandex.ru> To: Steven Penny , cygwin AT cygwin DOT com Subject: Re: Cygwin fails to utilize Unicode replacement character In-Reply-To: <5b8fc4ea.1c69fb81.3d08d.d585@mx.google.com> References: <20180905075528 DOT GA22010 AT calimero DOT vinschen DOT de> <5b8fc4ea DOT 1c69fb81 DOT 3d08d DOT d585 AT mx DOT google DOT com> MIME-Version: 1.0 Content-Type: text/plain; charset=us-ascii Content-Transfer-Encoding: 7bit X-IsSubscribed: yes Greetings, Steven Penny! > a character that DejaVu Sans Mono actually doesnt have is: > U+01C4 LATIN CAPITAL LETTER DZ WITH CARON > Using this file: How to compile it? Simple "gcc glyph.c" fails with /tmp/ccSCYXAP.o:glyph.c:(.text+0xbd): undefined reference to `__imp_CreateFontW' /tmp/ccSCYXAP.o:glyph.c:(.text+0xbd): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_CreateFontW' /tmp/ccSCYXAP.o:glyph.c:(.text+0xd0): undefined reference to `__imp_SelectObject' /tmp/ccSCYXAP.o:glyph.c:(.text+0xd0): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_SelectObject' /tmp/ccSCYXAP.o:glyph.c:(.text+0x111): undefined reference to `__imp_GetGlyphIndicesW' /tmp/ccSCYXAP.o:glyph.c:(.text+0x111): relocation truncated to fit: R_X86_64_PC32 against undefined symbol `__imp_GetGlyphIndicesW' collect2: error: ld returned 1 exit status Though I see the header files present at their appropriate places. > $ cat glyph.c > #include > #include > int main() > { > CONSOLE_FONT_INFOEX ta; > ta.cbSize = sizeof ta; > GetCurrentConsoleFontEx(GetStdHandle(STD_OUTPUT_HANDLE), 0, &ta); > HDC wh = GetDC(0); > SelectObject(wh, > CreateFontW(0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, 0, ta.FaceName)); > WCHAR xr[4] = {0xFFFD, 0x2592, 0x25A1, 0x01C4}; > WORD zu[4]; > GetGlyphIndicesW(wh, xr, 4, zu, 1); > printf("%ls:\n", ta.FaceName); > for (int q = 0; q < 4; q++) { > printf(" U+%04X: %s\n", > xr[q], zu[q] == 0xffff ? "failure" : "success"); > } > } > I get this result: > DejaVu Sans Mono: > U+FFFD: success > U+2592: success > U+25A1: success > U+01C4: failure -- With best regards, Andrey Repin Wednesday, September 5, 2018 16:30:20 Sorry for my terrible english... -- Problem reports: http://cygwin.com/problems.html FAQ: http://cygwin.com/faq/ Documentation: http://cygwin.com/docs.html Unsubscribe info: http://cygwin.com/ml/#unsubscribe-simple