<blockquote>
<p>but having tools themselves more deterministic is still a plus, because it avoids having to patch all callers.</p>
</blockquote>
<p>Sure, but its a workaround until Geany is changed.</p>
<p>Also in many cases the callers <strong>should</strong> care which order files are included, for context sensitive languages like C/C++ knowing that an identifier is a type name is important to correct parsing.  So you want to control order so that the declaration of the type name is before the use.  Essentially you want things to be seen in the order that the compiler will see them.</p>
<p>So the files need to be explicitly specified in the correct order.</p>
<p>That means Geany should keep the order the same as the command line, except that where a command line item is a glob, it is expanded to all matching items.</p>
<p>This behaviour is deterministic so meets both requirements.</p>

<p style="font-size:small;-webkit-text-size-adjust:none;color:#666;">—<br />You are receiving this because you are subscribed to this thread.<br />Reply to this email directly, <a href="https://github.com/geany/geany/pull/1989#issuecomment-437555783">view it on GitHub</a>, or <a href="https://github.com/notifications/unsubscribe-auth/ABDrJ_NGzu_69vWNBz0qfboUkJsOHqWnks5utkzHgaJpZM4YQS08">mute the thread</a>.<img src="https://github.com/notifications/beacon/ABDrJ8DeM72n4zxNQKOcc4X7MG1OKRATks5utkzHgaJpZM4YQS08.gif" height="1" width="1" alt="" /></p>
<script type="application/json" data-scope="inboxmarkup">{"api_version":"1.0","publisher":{"api_key":"05dde50f1d1a384dd78767c55493e4bb","name":"GitHub"},"entity":{"external_key":"github/geany/geany","title":"geany/geany","subtitle":"GitHub repository","main_image_url":"https://assets-cdn.github.com/images/email/message_cards/header.png","avatar_image_url":"https://assets-cdn.github.com/images/email/message_cards/avatar.png","action":{"name":"Open in GitHub","url":"https://github.com/geany/geany"}},"updates":{"snippets":[{"icon":"PERSON","message":"@elextr in #1989: \u003e but having tools themselves more deterministic is still a plus, because it avoids having to patch all callers.\r\n\r\nSure, but its a workaround until Geany is changed.\r\n\r\nAlso in many cases the callers __should__ care which order files are included, for context sensitive languages like C/C++ knowing that an identifier is a type name is important to correct parsing.  So you want to control order so that the declaration of the type name is before the use.  Essentially you want things to be seen in the order that the compiler will see them.\r\n\r\nSo the files need to be explicitly specified in the correct order.\r\n\r\nThat means Geany should keep the order the same as the command line, except that where a command line item is a glob, it is expanded to all matching items.\r\n\r\nThis behaviour is deterministic so meets both requirements.\r\n"}],"action":{"name":"View Pull Request","url":"https://github.com/geany/geany/pull/1989#issuecomment-437555783"}}}</script>
<script type="application/ld+json">[
{
"@context": "http://schema.org",
"@type": "EmailMessage",
"potentialAction": {
"@type": "ViewAction",
"target": "https://github.com/geany/geany/pull/1989#issuecomment-437555783",
"url": "https://github.com/geany/geany/pull/1989#issuecomment-437555783",
"name": "View Pull Request"
},
"description": "View this Pull Request on GitHub",
"publisher": {
"@type": "Organization",
"name": "GitHub",
"url": "https://github.com"
}
},
{
"@type": "MessageCard",
"@context": "http://schema.org/extensions",
"hideOriginalBody": "false",
"originator": "AF6C5A86-E920-430C-9C59-A73278B5EFEB",
"title": "Re: [geany/geany] Make geany -g tags output reproducible (#1989)",
"sections": [
{
"text": "",
"activityTitle": "**elextr**",
"activityImage": "https://assets-cdn.github.com/images/email/message_cards/avatar.png",
"activitySubtitle": "@elextr",
"facts": [

]
}
],
"potentialAction": [
{
"name": "Add a comment",
"@type": "ActionCard",
"inputs": [
{
"isMultiLine": true,
"@type": "TextInput",
"id": "IssueComment",
"isRequired": false
}
],
"actions": [
{
"name": "Comment",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"IssueComment\",\n\"repositoryFullName\": \"geany/geany\",\n\"issueId\": 1989,\n\"IssueComment\": \"{{IssueComment.value}}\"\n}"
}
]
},
{
"name": "Close pull request",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"PullRequestClose\",\n\"repositoryFullName\": \"geany/geany\",\n\"pullRequestId\": 1989\n}"
},
{
"targets": [
{
"os": "default",
"uri": "https://github.com/geany/geany/pull/1989#issuecomment-437555783"
}
],
"@type": "OpenUri",
"name": "View on GitHub"
},
{
"name": "Unsubscribe",
"@type": "HttpPOST",
"target": "https://api.github.com",
"body": "{\n\"commandName\": \"MuteNotification\",\n\"threadId\": 406924604\n}"
}
],
"themeColor": "26292E"
}
]</script>