Running compile() with large size expression crashes IronPython.
Calling function compile() in "single" mode to compile large size expression can cause a crash IronPython. See the following example. The example trigger crash when n > 10000, e.g. n = 1000,100000,1000000
test.py
mylist = []
n = 10000
print(compile("mylist"+"+mylist"*n,'','single'))
Crash report:
.... 00f] in <5cd2739cd27844619789a1aa1ffdb0b0>:0 at Microsoft.Scripting.Hosting.Shell.CommandLine.Run () [0x0003a] in <252827dbc7924637ba1c8c95b5f54810>:0 at IronPython.Hosting.PythonCommandLine.Run () [0x000d8] in <5cd2739cd27844619789a1aa1ffdb0b0>:0 at Microsoft.Scripting.Hosting.Shell.CommandLine.Run (Microsoft.Scripting.Hosting.ScriptEngine engine, Microsoft.Scripting.Hosting.Shell.IConsole console, Microsoft.Scripting.Hosting.Shell.ConsoleOptions options) [0x0003c] in <252827dbc7924637ba1c8c95b5f54810>:0 at Microsoft.Scripting.Hosting.Shell.ConsoleHost.RunCommandLine () [0x00053] in <252827dbc7924637ba1c8c95b5f54810>:0 at Microsoft.Scripting.Hosting.Shell.ConsoleHost.ExecuteInternal () [0x00051] in <252827dbc7924637ba1c8c95b5f54810>:0 at PythonConsoleHost.ExecuteInternal () [0x00025] in <9cafe2448f474c41b81ba0c1d71815eb>:0 at Microsoft.Scripting.Hosting.Shell.ConsoleHost.Execute () [0x00032] in <252827dbc7924637ba1c8c95b5f54810>:0 at Microsoft.Scripting.Hosting.Shell.ConsoleHost.Run (System.String[] args) [0x0015b] in <252827dbc7924637ba1c8c95b5f54810>:0 at PythonConsoleHost.Main (System.String[] args) [0x00020] in <9cafe2448f474c41b81ba0c1d71815eb>:0
System:
IronPython 3.4.0a1 (3.4.0.0001) [.NETFramework,Version=v4.6 on Mono 6.12.0.122 (64-bit)] on linux