From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: from mail-lf1-x12c.google.com (mail-lf1-x12c.google.com [IPv6:2a00:1450:4864:20::12c]) by sourceware.org (Postfix) with ESMTPS id F3B9E3858C01 for ; Wed, 23 Aug 2023 08:41:03 +0000 (GMT) DMARC-Filter: OpenDMARC Filter v1.4.2 sourceware.org F3B9E3858C01 Authentication-Results: sourceware.org; dmarc=pass (p=none dis=none) header.from=gmail.com Authentication-Results: sourceware.org; spf=pass smtp.mailfrom=gmail.com Received: by mail-lf1-x12c.google.com with SMTP id 2adb3069b0e04-5007c8308c3so5128762e87.0 for ; Wed, 23 Aug 2023 01:41:03 -0700 (PDT) DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=gmail.com; s=20221208; t=1692780062; x=1693384862; h=to:subject:message-id:date:from:mime-version:from:to:cc:subject :date:message-id:reply-to; bh=93FgMTeTIbDO7nhnrH9ClILiuqCerG66KnirsRw1YHE=; b=AWVWC2vYejuXPzs4QQyJbCuIybhQjfpRjVBZ5HbIYQQ0ntTx0CRPQC/8zLPHOGPYPt q36juSbToab3sPgSGB8C8hlAeWMSyb7sATs1u7cz97jeRUrcIUBqM8f+ZX7hByYNWpvB zydIbUC3bktT6rjQdc+kWoWNVipSChWCU1DxSjctX8dOUqQK8apGSCxSJMEE0CmCpPBh TivBAW1OvAma2k2ijtWe7u0r82nQLmIgCHLUU26boH3Spf2Yo6Qc9V1RHbNTDe6oF+n+ JaImbGwEptzn3fKagW+Pk0O+df5xmLtfcN8nDFpWZXmfQ7ys6EUn5OzyBHT1X6olW0qe 3wnQ== X-Google-DKIM-Signature: v=1; a=rsa-sha256; c=relaxed/relaxed; d=1e100.net; s=20221208; t=1692780062; x=1693384862; h=to:subject:message-id:date:from:mime-version:x-gm-message-state :from:to:cc:subject:date:message-id:reply-to; bh=93FgMTeTIbDO7nhnrH9ClILiuqCerG66KnirsRw1YHE=; b=guv7gsNsv9CccluQIByqIeNFBLUDtxyGvox1h73c9/Oi3Q1E3GedFCwKflVS/elwPc rF0l1ZRFSuOJRumGwepByvxUy12MkyO+00MorJYl+A9oTlVK4Cs24Irc55bw6OJ3Z3j4 9lVwiUsZN+y+XpY5KWUtFwNwAYaXwDUvwSM95AW5aa30k1UC5mBWOf0nuKGXI2VMp6M4 w0+vwUne0NnYzBfOGz81QeXCYx5hogqZKC2qu6Xnt5WuMh9VlGewdlUnaIBzr41n4syB SkR6reSebUenHBMWF+lPUh1D342gVt+ol3uA4VW7gpgr9/syghn46Sd4AkkpWIYyfNP6 TapQ== X-Gm-Message-State: AOJu0Yx76K6dS9IJ4oJo+wWLFGoNIAZCmvy3dtS0ASM/qH/5OEZ6xr8y opWZtd+xyk2j/y1fK+1X4/OGGNfuAuGmUL7+ixKpv8bzOwtGvg== X-Google-Smtp-Source: AGHT+IF2pfPnYPD7M//iJYqULG+MVx64WViClrHwYmVqZ5AbCaEfqTIqq6cA6vjtq/qRDRsu1w5hlocBkgIoKIBVjYA= X-Received: by 2002:a19:ca44:0:b0:500:90d1:90a6 with SMTP id h4-20020a19ca44000000b0050090d190a6mr2143151lfj.63.1692780061248; Wed, 23 Aug 2023 01:41:01 -0700 (PDT) MIME-Version: 1.0 From: Varun Kumar E Date: Wed, 23 Aug 2023 14:10:50 +0530 Message-ID: Subject: RTTI names for classes in anonymous namespaces To: libstdc++@gcc.gnu.org Content-Type: multipart/alternative; boundary="0000000000003bcea0060393124b" X-Spam-Status: No, score=0.5 required=5.0 tests=BAYES_00,DKIM_SIGNED,DKIM_VALID,DKIM_VALID_AU,DKIM_VALID_EF,FREEMAIL_ENVFROM_END_DIGIT,FREEMAIL_FROM,HTML_MESSAGE,RCVD_IN_DNSWL_NONE,SPF_HELO_NONE,SPF_PASS,TXREP autolearn=ham autolearn_force=no version=3.4.6 X-Spam-Checker-Version: SpamAssassin 3.4.6 (2021-04-09) on server2.sourceware.org List-Id: --0000000000003bcea0060393124b Content-Type: text/plain; charset="UTF-8" hello all, The RTTI names generated by gcc for classes in anonymous namespaces begin with the prefix asterisk(*). Once the __name pointer is different why do we not return immediately? Instead we perform a string comparison if the name does not begin with asterisk(*). Could you please explain the reasoning behind this. code snippet below: type_info::operator==(const type_info& __arg) const _GLIBCXX_NOEXCEPT { if (std::__is_constant_evaluated()) return this == &__arg; if (__name == __arg.__name) return true; #if !__GXX_TYPEINFO_EQUALITY_INLINE // ABI requires comparisons to be non-inline. return __equal(__arg); #elif !__GXX_MERGED_TYPEINFO_NAMES // Need to do string comparison. return __name[0] != '*' && __builtin_strcmp (__name, __arg.name()) == 0; #else return false; #endif } Code link: typeinfo - gcc-mirror/gcc - Sourcegraph regards, Varun --0000000000003bcea0060393124b--