From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 122478 invoked by alias); 30 Nov 2016 12:41:35 -0000 Mailing-List: contact gdb-patches-help@sourceware.org; run by ezmlm Precedence: bulk List-Id: List-Subscribe: List-Archive: List-Post: List-Help: , Sender: gdb-patches-owner@sourceware.org Received: (qmail 122429 invoked by uid 89); 30 Nov 2016 12:41:30 -0000 Authentication-Results: sourceware.org; auth=none X-Virus-Found: No X-Spam-SWARE-Status: No, score=-1.9 required=5.0 tests=AWL,BAYES_00 autolearn=ham version=3.3.2 spammy=our X-HELO: sessmg22.ericsson.net Received: from sessmg22.ericsson.net (HELO sessmg22.ericsson.net) (193.180.251.58) by sourceware.org (qpsmtpd/0.93/v0.84-503-g423c35a) with ESMTP; Wed, 30 Nov 2016 12:41:20 +0000 Received: from ESESSHC004.ericsson.se (Unknown_Domain [153.88.183.30]) by (Symantec Mail Security) with SMTP id C6.D3.31000.DE8CE385; Wed, 30 Nov 2016 13:41:18 +0100 (CET) Received: from EUR02-AM5-obe.outbound.protection.outlook.com (153.88.183.145) by oa.msg.ericsson.com (153.88.183.30) with Microsoft SMTP Server (TLS) id 14.3.319.2; Wed, 30 Nov 2016 13:40:28 +0100 Authentication-Results: spf=none (sender IP is ) smtp.mailfrom=antoine.tremblay@ericsson.com; Received: from elxa4wqvvz1 (192.75.88.130) by AM5PR0701MB1873.eurprd07.prod.outlook.com (10.167.216.22) with Microsoft SMTP Server (version=TLS1_2, cipher=TLS_ECDHE_RSA_WITH_AES_256_CBC_SHA384_P384) id 15.1.761.5; Wed, 30 Nov 2016 12:40:25 +0000 References: <20161124152428.24725-1-simon.marchi@polymtl.ca> <20161124152710.25007-16-simon.marchi@polymtl.ca> <82c06e7795f785cdff3090bb38880a2b@polymtl.ca> <5a48d12d-c6ab-1c31-53ce-80a85602362b@redhat.com> User-agent: mu4e 0.9.17; emacs 24.5.50.1 From: Antoine Tremblay To: Pedro Alves CC: Simon Marchi , Subject: Re: [PATCH 16/22] Class-ify ui_out_level In-Reply-To: <5a48d12d-c6ab-1c31-53ce-80a85602362b@redhat.com> Date: Wed, 30 Nov 2016 12:41:00 -0000 Message-ID: MIME-Version: 1.0 Content-Type: text/plain X-ClientProxiedBy: BLUPR18CA0027.namprd18.prod.outlook.com (10.162.230.37) To AM5PR0701MB1873.eurprd07.prod.outlook.com (10.167.216.22) X-MS-Office365-Filtering-Correlation-Id: 936155d5-d238-4297-75db-08d4191e0f3a X-Microsoft-Antispam: UriScan:;BCL:0;PCL:0;RULEID:(22001);SRVR:AM5PR0701MB1873; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1873;3:oV0G4HhIrmJuPNVxi0YGC3eCeC412zE8s3KV6yplAXilii8qp1EOFlFJTAccYX6t8nqVrRh8uZWDa6/6g4zq7WXnCs/Y3vKWbtI72+KQqgxYf2WuuYJYlXRi3TctxJuknqcz/nk49d+yRZobbxLB7uct/dr1vIkqeSKhd8KDP++8hcPZaBWFZ9JlCyPCbWCUcjNSEZQXAjQTkMOch2eeNJVxd8c8jSjFfSmZYaOuiX8k1bhP9lUv3CJq9m5Oqemhq6RWmcDhtyDsC1+5EiHznQ==;25:Q39gvcyTy9REuAkECUAt9897ZVhGy8qIPDWIyH4r8KNb/3srcqxKHaa+lFIVPfkZSjz2bpy87Aco1KHRv8zPE9Fpu02mSOQOaIG1TWF9wVsTrVEYsC8eXN7A3hZj+CaqihpvtzBQmIRkWVKAqZjvDVZ/MpuAP3iGQDAhCALsdLzzsfvFzy3aXzOij5Cu/kXnpqXh3iGQL8Hkkmgg9Le/glIdSBw9Cd79OTTjkFdSakZwjAjxhIHMqF4geBTHEX2B0J2x3JVxL2Z/FXL0ZyTwLdi3l0EhE4uWFjJv8HtrBdsZ4koYV9xURYWQiY8i49vDWJkHVtWuma1Y+Tu7FBZsRz/NeUmnvRVx930hyU+xQoS3ZjLO7hJhXKZY7GCGzlozXKvee88lFnhvILUZ0aUPSQF9ofIj4xxZtqu6w3DmnGASGh0Q/FpUlm1sEVVvZmNRpAAG3ql2JyHWLxGtf5zW9w== X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1873;31:sjPsi92YLkxLA3i8lwBUQAErSAiW36O+ZsvVztLy5yGzg5l/2olHUGzrVAMlQR+qG5b9qwfhOFVU9iZUkFrGqZkcpqwUcR2X1UwV9t5RrT7PiU12sBI2C6u5Wuk3NaIGjRt0SineNP3VmlxwiwH+R66D7prtkIighoVfkcylDRiIJIskDwwknB1KXDbvfkSkaJYaAnHRqU10Ym2WkWldVD4hReMb11f1z4xX8rh9Q2f4ARNssboEyAKxvS8kdBORN9LuHZk+RbYGMkOVsS99Zw==;20:71xHUFA/z5G/+5v5IHRK4gomqhdjOp6qzeQ8ivcfclABJWmsWS3DoK72YbTO09enKLL7Mhsii/Qb3l0DLqjrxpCSqzIjP/x4f+Lbk0tARnTEgxfrThviGosWy7gJ1O2OF+FZe4Sxi+n4hCOp8eXnTXd7npzD8B8pHrvq0tyvEbAsJIGEpkpllS3QTR5SojMPXC3A+D8Ax2wL8oYtw4czeJ8HBZBDotO3887nESuDjWcKxjUvo1/oMwea5vYly8TLZjZDY9/No7w4TXcxgfn/7qlEp79rwgF877CEH6dG262uihnKCEtAS8a87WU61Ks0DSxFuQXJiImpj0rWwg2OUMlNXisCSSCYLi4oVmHxh9YShagxAOQVhFZO3xZeZhyV29Mni/OydRNDcSJg9CDheDJNt+qdsuKvsZPgvyeKSPyog6Q94c51a9md7X+cbVW5wT9yxFGxdZ8tpWiHIw4t4l1oUB6GdGR2F32N78/QC/bZ/m37y7IncSrBnvOcrK5H X-Microsoft-Antispam-PRVS: X-Exchange-Antispam-Report-Test: UriScan:(22074186197030)(183786458502308); X-Exchange-Antispam-Report-CFA-Test: BCL:0;PCL:0;RULEID:(6040375)(601004)(2401047)(5005006)(8121501046)(10201501046)(3002001)(6041248)(20161123562025)(20161123560025)(20161123555025)(20161123564025)(6072148);SRVR:AM5PR0701MB1873;BCL:0;PCL:0;RULEID:;SRVR:AM5PR0701MB1873; X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1873;4:i7BakcZz4Vu8EIPn4jtVCNiKNfDjBbb0HyjDQUq4R/NzqAdu8R/Lp3kS19sG+160mA3G88HeXxNydmNnSUDJt5a0p6j0v2/gOmLD2/iYYYlWBpAQ+McHzSp0vbQxC5wQDYvB5/GbFOTTuk+LeYLnF2ZJHv1myjaEMs+KDRHta8tM4cs4nLo/8gW65OIxiOvg6XBtcN7ql47wR3JB4bLcdJ2ZJlyzMx+8mqVndKSvXi64ileZkw13xwFHRbcniP6j7C10pjbMJtgFkAc26n1VpP9oLLT1O9v2pNNePv/Xu9jON0XIf3S84VWyMf7S0xYgmZOkDuHwA4K0BIcuNJHQrd3Oz5omfqEfTFcP1JZJMKKREUetIoo5ScdUImNnn98r8ycSitT7nxQh6KD0e5spUTtrRb8OL4rGDT6384tTxe2Oum/9x9DQJ/FxyCPBIDjyVgiu7LKAbaJCzvVQQjo5vw1/ewMclQDYZjeTXCtA+5IuNUpGf0kZnDMc8KceE7Us55GxIxe77UZl8OSQ4T+a0fm6RE8Db24m2KaO2QyrGHcoQ4VrzEzmKTwdKnkSLU6sWPn2JrKMaNg6K6tw9q6yx+O4ZIHqc723Nf4ina6kKUJFW3vGndtS2rsYywWCiUgWps6/CgMEk8zlmwQgbTrLGw== X-Forefront-PRVS: 0142F22657 X-Forefront-Antispam-Report: SFV:NSPM;SFS:(10009020)(4630300001)(6009001)(7916002)(377454003)(24454002)(377424004)(199003)(189002)(5003940100001)(2950100002)(3846002)(7736002)(6916009)(6116002)(66066001)(36756003)(110136003)(229853002)(305945005)(189998001)(4001350100001)(81166006)(97736004)(47776003)(8676002)(81156014)(39410400001)(106356001)(733004)(4001150100001)(39450400002)(5660300001)(6486002)(86362001)(38730400001)(83506001)(6496003)(93886004)(92566002)(33646002)(6666003)(50466002)(50986999)(76176999)(7846002)(42186005)(54356999)(48376002)(101416001)(105586002)(4326007)(2906002)(68736007);DIR:OUT;SFP:1101;SCL:1;SRVR:AM5PR0701MB1873;H:elxa4wqvvz1;FPR:;SPF:None;PTR:InfoNoRecords;A:1;MX:1;LANG:en; Received-SPF: None (protection.outlook.com: ericsson.com does not designate permitted sender hosts) X-Microsoft-Exchange-Diagnostics: =?us-ascii?Q?1;AM5PR0701MB1873;23:I4Qjxza9d3CZNrQEa1QP9l04kAj7qaPfcFqneO6?= =?us-ascii?Q?NE8e4IMZGz2Zsf/3w9A/8M7awn71dYw5lcYosHisc/Mm1vGeX1r/7KK9O0LG?= =?us-ascii?Q?Nmm70DourOe4AXDItkSZ8DPVO9Fx4MTBb5Pqu+VplLpIF0UB272oI3Aq0pST?= =?us-ascii?Q?SX5+YGmS9d1LXZFyg0EocujaNlx6fA75bgqsB5jpOZjFZqfje9+90MN/mvUr?= =?us-ascii?Q?iPKzop750yKKZG9W+NEQroskkiygkjORH86qJsVVz3vplnQlAWDlsRQsOikk?= =?us-ascii?Q?x/YPzCgrg4eu4VONOzn35+NVwiJ4yM9Psn3bXNO9oDc6atOUmaDXDhA7krZv?= =?us-ascii?Q?0E2Q2n7aTAP1diINynyCoM+vpGeNv+vura+LZGa3EW488Wrc5zUUZlOZ1yM6?= =?us-ascii?Q?kRsj1DsXlhMhZ4CT0R8Sy4IOyrfYFgdMSKmRfNVksIYqkyGDXLvYwjzZ4nwc?= =?us-ascii?Q?AnYBmQ9aE4lF8+FRbW8tP+kYduOqNfav5byd24z0urLwJG4o+ngBMJFMUIf8?= =?us-ascii?Q?5QkpwPmAXwQnk6bMi8yGr2daSgAC51Ec3SnQHFo9mgDC4avqPZEjQSbjqEsH?= =?us-ascii?Q?TOtydAvIeLExW5nXXS/3EVTHKNtkcmqaefkmAr2NlsCjYUh5XmYK4RlJjV71?= =?us-ascii?Q?9VjfKLFefbWAveo55tZdzLxeOa8cWPUuds6WUx2BcXmLraOBoLZKgVLQoG+f?= =?us-ascii?Q?v8ETJ++mWU5q78ZTbwqoRwveCzAZpSFNtIDfflghTx24heMxflUdMFhjiZVG?= =?us-ascii?Q?B2rY30ZG/z+dWt/8wJIfSN23vt5nTYLIs1E/34aVsZT5BMETEkEAB2E2dIBk?= =?us-ascii?Q?aoB78BSDM8PkIdwC7i3eS6LdrUYQr8A8vnn5Od4pYy+/Cwwq6sztKd6ZSQNB?= =?us-ascii?Q?ZIcIvrl5ihzGpckElWqA+1MAUg88uMUi5X0NTThOTba/D3IioCvzh0fq18XG?= =?us-ascii?Q?K/upRwdf6iSUflv5ZlJ+ko0NeVQV9YQBo7Jn3Ck1oGEKH+4szX0AacNxmx6T?= =?us-ascii?Q?ene7OSjngTU1mx9XyhaJ5cA2WfUmtY6bSYIQphtrW6/lf6J/EUQXgYwHMZPR?= =?us-ascii?Q?GiFMWIQQxqdSNAyrNs6S5EawfOq4uhX0z9jZXhTWzSjrmrrDt5IzAsCZWpfl?= =?us-ascii?Q?1mpnw7hZFGZm7sXXfyid0kGvL3nKdqBGy+jG0d0hbRsuL0azdE/70umqGUt0?= =?us-ascii?Q?DoK1uo9ToL0glaZ2Ar38pE68FFW89AXA5cwjAhLZTIsDLkGDTlm8oXS6LSlM?= =?us-ascii?Q?qKwgNmgP4p/itFrads41rlGkBlySLHLH9Dn9iM+ocXYXcl02zMFL0WZEiIAT?= =?us-ascii?Q?TYg=3D=3D?= X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1873;6:uokWeob/YYpZcZX8CjGTbqAcEDloUPEBkuQipbp1jGqUoNeyri5DslMqm/GUz2Rt5ZUkS4R4OlLN7DTDgwWb6+YkrugLbzXGsO1Rwk5PqJUX2g7uL7W7vooF01sJXyJI+BtatfjKcWnPF7jKq9uGwFLa8jNzVP1uaxZLBDfBRdJqTQPullRPygozDoiuCyYk6kRyS9F8lwDhpukBsUDd+NBVzcQStn8UlupQ6jLzp8Ql9v2HaUkUdWwYt7MNlRNxIGdoc2EuCq7z9/0UloR/GIf2oNHCHJOVNJeNpYv4cBJNCKcQiiYTcx1u8PMF8KqPL0kvDXRl7ixxYebeG+KZwNC0GzTCu6U6rFUSBia2Ui32rv+KDY/ZeN3h7l8RRiQGN71rrA/W+Ew0oqYaVOggA1l9SLCGBFvjtFR6a9ObYOHnwxCLs9zavyWOG5eatP2Dy0MH1Gtj+VIVOExPFoiO/w==;5:Ps8sxlqeWzORIB5FG8ZquwYbmo+67DB0m0Or6d/qVDx6r+zc1GnsWCRgOg1i8aVptT4RWFxhxfm1HnM7k3MfFXVQ0upL5ncAuMCwyjNxR/ge1fSMHMEB3B5ROvJO1tVLK0lU8BA2u5GDj8eCi7HOwf+KWsFDFLvN/km35hN22PM=;24:7m60trFHRPi+eRowTSPqz5NfRPBYFApD2sFV6o02PxEBtD0sFmXdBklviZbI4pP7PqaioM7gQjNxokOp4gbqnhNWKNyQ+vdqulnzjhbxsMM= SpamDiagnosticOutput: 1:99 SpamDiagnosticMetadata: NSPM X-Microsoft-Exchange-Diagnostics: 1;AM5PR0701MB1873;7:gXocokoCnaBH87G9rSX/uadlFWtqL6U3wxnONOztOWmNsuzqKQm2ioi0s9QL8lP9Vjq7rpxNkPVJSJkUqoAceAqOf8RBIZxnAIcm76+u/w8wbopEseExddSaezcsih8ve1ypNchehDxghOR55Iy5mkQdRPHqSfKdaW21J2AHlCIlDjeWR6VeemV14gLKN2qfKLsveeINJFv9b+sNa4CupD6QDhG/C0yIGkJeX33SaZSD1cWm7lsKwU/hKMxADv7LG4Y5CF7sZ2pxp+aYob8rjXuZd5q/8+rjQt2E0BJjNY/yJyq4T8OpwhMBI0B0AqYIdMGvB2/O6l2Z0xBHd13Cxmy2nf8bftKUMVKlpTNNqEke3PgpxADr8450hOecAPS3JmuvkFHAQcR1/2Kk80WdCzSR3BbIfMH/5MuZrjts9QtsDiIfVo99/78RA1FIA7KpJgav6b8WhleSKYY1ji6LAg== X-MS-Exchange-CrossTenant-OriginalArrivalTime: 30 Nov 2016 12:40:25.5150 (UTC) X-MS-Exchange-CrossTenant-FromEntityHeader: Hosted X-MS-Exchange-Transport-CrossTenantHeadersStamped: AM5PR0701MB1873 X-OriginatorOrg: ericsson.com X-IsSubscribed: yes X-SW-Source: 2016-11/txt/msg00980.txt.bz2 Pedro Alves writes: > On 11/26/2016 04:22 PM, Simon Marchi wrote: >> On 2016-11-24 13:41, Pedro Alves wrote: >>>> -struct ui_out_level >>>> +/* A level of nesting (either a list or a tuple) in a ui_out >>>> output. */ >>>> + >>>> +class ui_out_level >>>> +{ >>>> + public: >>>> + >>>> + ui_out_level (ui_out_type type) >>> >>> explicit ? >> >> I had a discussion about this with Antoine. Is it a good practice to >> use explicit all the time, and only omit it when there's a good reason >> why? > > Yes, I believe so. > > Let's turn the question around: why _would_ you want to support > implicit conversion from ui_out_type to ui_out_level? > E.g, would this code make any sense? > > ui_out_level level = ui_out_type_list; > if (level == ui_out_type_tuple) > > I'd leave implicit conversions for when you're actually trying > to code a converting constructor. > >> I initially put it on all the constructors, but decided to drop it >> after our discussion. > Note that in the discussion I argued that it would be a good idea to keep it for single argument constructors, but that I though that there was little chance of confusion for multiple argument constructors like: ui_out_table (int entry_level, int nr_cols, const std::string &id) (See: https://gcc.gnu.org/codingconventions.html#Conversions) I'm starting to think we need to document these things as the GCC coding conventions may not be exactly what we want and reading the ML there's more and more questions about this...