This issue tracker has been migrated to GitHub, and is currently read-only.
For more information, see the GitHub FAQs in the Python's Developer Guide.

Author methane
Recipients methane, vstinner
Date 2017-02-06.14:21:15
SpamBayes Score -1.0
Marked as misclassified Yes
Message-id <>
spin off of #11549.

> b) Docstring is now an attribute of Module, FunctionDef and ClassDef, > rather than a first statement. Docstring is a special syntactic 
> construction, it's not an executable code, so it makes sense to separate it. Otherwise, optimizer would have to take extra care not to introduce, change or remove docstring. For example:
>  def foo():
>    "doc" + "string"
>Without optimizations foo doesn't have a docstring. After folding, however, the first statement in foo is a string literal. This means that docstring depends on the level of optimizations. Making it an attribute avoids the problem.
Date User Action Args
2017-02-06 14:21:19methanesetrecipients: + methane, vstinner
2017-02-06 14:21:16methanesetmessageid: <>
2017-02-06 14:21:16methanelinkissue29463 messages
2017-02-06 14:21:16methanecreate