{"action":"opened","issue":{"url":"https://api.github.com/repos/modelica/ModelicaSpecification/issues/318","repository_url":"https://api.github.com/repos/modelica/ModelicaSpecification","labels_url":"https://api.github.com/repos/modelica/ModelicaSpecification/issues/318/labels{/name}","comments_url":"https://api.github.com/repos/modelica/ModelicaSpecification/issues/318/comments","events_url":"https://api.github.com/repos/modelica/ModelicaSpecification/issues/318/events","html_url":"https://github.com/modelica/ModelicaSpecification/issues/318","id":377062542,"node_id":"MDU6SXNzdWUzNzcwNjI1NDI=","number":318,"title":"Fix consistent support of the equation concept","user":{"login":"modelica-trac-importer","id":22202507,"node_id":"MDQ6VXNlcjIyMjAyNTA3","avatar_url":"https://avatars1.githubusercontent.com/u/22202507?v=4","gravatar_id":"","url":"https://api.github.com/users/modelica-trac-importer","html_url":"https://github.com/modelica-trac-importer","followers_url":"https://api.github.com/users/modelica-trac-importer/followers","following_url":"https://api.github.com/users/modelica-trac-importer/following{/other_user}","gists_url":"https://api.github.com/users/modelica-trac-importer/gists{/gist_id}","starred_url":"https://api.github.com/users/modelica-trac-importer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/modelica-trac-importer/subscriptions","organizations_url":"https://api.github.com/users/modelica-trac-importer/orgs","repos_url":"https://api.github.com/users/modelica-trac-importer/repos","events_url":"https://api.github.com/users/modelica-trac-importer/events{/privacy}","received_events_url":"https://api.github.com/users/modelica-trac-importer/received_events","type":"User","site_admin":false},"labels":[],"state":"open","locked":false,"assignee":{"login":"MartinOtter","id":7248038,"node_id":"MDQ6VXNlcjcyNDgwMzg=","avatar_url":"https://avatars3.githubusercontent.com/u/7248038?v=4","gravatar_id":"","url":"https://api.github.com/users/MartinOtter","html_url":"https://github.com/MartinOtter","followers_url":"https://api.github.com/users/MartinOtter/followers","following_url":"https://api.github.com/users/MartinOtter/following{/other_user}","gists_url":"https://api.github.com/users/MartinOtter/gists{/gist_id}","starred_url":"https://api.github.com/users/MartinOtter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MartinOtter/subscriptions","organizations_url":"https://api.github.com/users/MartinOtter/orgs","repos_url":"https://api.github.com/users/MartinOtter/repos","events_url":"https://api.github.com/users/MartinOtter/events{/privacy}","received_events_url":"https://api.github.com/users/MartinOtter/received_events","type":"User","site_admin":false},"assignees":[{"login":"MartinOtter","id":7248038,"node_id":"MDQ6VXNlcjcyNDgwMzg=","avatar_url":"https://avatars3.githubusercontent.com/u/7248038?v=4","gravatar_id":"","url":"https://api.github.com/users/MartinOtter","html_url":"https://github.com/MartinOtter","followers_url":"https://api.github.com/users/MartinOtter/followers","following_url":"https://api.github.com/users/MartinOtter/following{/other_user}","gists_url":"https://api.github.com/users/MartinOtter/gists{/gist_id}","starred_url":"https://api.github.com/users/MartinOtter/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/MartinOtter/subscriptions","organizations_url":"https://api.github.com/users/MartinOtter/orgs","repos_url":"https://api.github.com/users/MartinOtter/repos","events_url":"https://api.github.com/users/MartinOtter/events{/privacy}","received_events_url":"https://api.github.com/users/MartinOtter/received_events","type":"User","site_admin":false}],"milestone":{"url":"https://api.github.com/repos/modelica/ModelicaSpecification/milestones/34","html_url":"https://github.com/modelica/ModelicaSpecification/milestone/34","labels_url":"https://api.github.com/repos/modelica/ModelicaSpecification/milestones/34/labels","id":3792680,"node_id":"MDk6TWlsZXN0b25lMzc5MjY4MA==","number":34,"title":"MSL3.2","description":"Modelica Standard Library version **3.2**","creator":{"login":"modelica-trac-importer","id":22202507,"node_id":"MDQ6VXNlcjIyMjAyNTA3","avatar_url":"https://avatars1.githubusercontent.com/u/22202507?v=4","gravatar_id":"","url":"https://api.github.com/users/modelica-trac-importer","html_url":"https://github.com/modelica-trac-importer","followers_url":"https://api.github.com/users/modelica-trac-importer/followers","following_url":"https://api.github.com/users/modelica-trac-importer/following{/other_user}","gists_url":"https://api.github.com/users/modelica-trac-importer/gists{/gist_id}","starred_url":"https://api.github.com/users/modelica-trac-importer/starred{/owner}{/repo}","subscriptions_url":"https://api.github.com/users/modelica-trac-importer/subscriptions","organizations_url":"https://api.github.com/users/modelica-trac-importer/orgs","repos_url":"https://api.github.com/users/modelica-trac-importer/repos","events_url":"https://api.github.com/users/modelica-trac-importer/events{/privacy}","received_events_url":"https://api.github.com/users/modelica-trac-importer/received_events","type":"User","site_admin":false},"open_issues":1,"closed_issues":0,"state":"closed","created_at":"2018-11-03T10:08:02Z","updated_at":"2018-11-03T15:06:10Z","due_on":"2010-09-29T07:00:00Z","closed_at":"2018-11-03T10:08:02Z"},"comments":0,"created_at":"2018-11-03T15:06:10Z","updated_at":"2018-11-03T15:06:10Z","closed_at":null,"author_association":"COLLABORATOR","body":"**Reported by petfr on 17 Mar 2010 08:31 UTC**\nOne of the most important and valuable properties\nof the Modelica language is its consistent\nsupport of the equation concept.\n\nAn equation, e.g.\n```\nexpr1 = expr2,  \nname = expr3, \n```\netc., once stated, always holds.\n\n'`=`' always means equation equality throughout the language\ndefined by the specification: in equation sections,\ndeclaration equations, equation modifiers, named binding at\nargument passing to functions (since bound formal parameters never change).\n\nHowever, for several years there has been bugs in several\nModelica implementations, allowing inconsistent use of `=`\ninstead of `:=` for function argument default values.\nThe following is the correct syntax according to the Modelica specification\n3.2 draft:\n 12.1\tFunction Declaration\n ...\n```text/x-modelica\nfunction functionname\n  input  TypeI1 in1;\n  input  TypeI2 in2;\n  input  TypeI3 in3 := default_expr1 \"Comment\" annotation(...);\n  ...\n  output TypeO1 out1;\n  output TypeO2 out2 := default_expr2;\n  ...\nprotected\n  <local variables>\n  ...\nalgorithm\n  ...\n  <statements>\n  ...\nend functionname;\n```\n\nHowever, in MSL 3.2 there are many places where the following bug\noccurs:\n\n```\ninput  TypeI3 in3 = default_expr1 \n```\n\nThis is **incorrect** Modelica. It is not allowed by the specification. Even if it was allowed it would not be a meaningful semantics, since a consistent semantics of `=` forces `in3` to always be equal to `default_expr1`,\ni.e.,\nit would not be possible to pass different argument values to in3 at\nfunction calls.\n\nThese bugs in MSL are caused by current Modelica tools allowing and not\nchecking\nfor the bug. On the other hand, since the bugs in MSL have not been\ncorrected,\nthe tool vendors are forced to continue supporting this bug in their\nimplementations.\nThus we have a negative circular dependency.\n\n----\n\nMigrated-From: https://trac.modelica.org/Modelica/ticket/318"}}
{"actor":{"display_login":"modelica-trac-importer"}}