Search Issue Tracker
Won't Fix
Votes
0
Found in
2018.1.0b12
Issue ID
1021350
Regression
No
[tvOS] APIUpdater fails when changing platform to tvOS
When switching platforms to tvOS, the required API updater fails and then building for tvOS is impossible
To reproduce:
1. Download attached project "Source.zip" and open in Unity
2. Open Build Settings and switch platform to tvOS
Expected result: Platform will be sucesfully switched
Actual result: Console will throw The Error:
APIUpdater encountered some issues and was not able to finish.
System.ArgumentException: preprocessorSymbols
at Microsoft.CodeAnalysis.CSharp.CSharpParseOptions..ctor (Microsoft.CodeAnalysis.CSharp.LanguageVersion languageVersion, Microsoft.CodeAnalysis.DocumentationMode documentationMode, Microsoft.CodeAnalysis.SourceCodeKind kind, System.Collections.Generic.IEnumerable`1[T] preprocessorSymbols) [0x00051] in <8d5a2b6695c6475bb1cb5b9a9f9c8dd7>:0
at CSharpUpdater.CSharpUpdater.ParseSyntaxTrees (APIUpdater.Framework.Core.SourceFile[] inputs, APIUpdater.Framework.Core.UpdaterParameters parameters) [0x00018] in <a746af91eb4946abb01fd402ed659b74>:0
at CSharpUpdater.CSharpUpdater.RunUpdater (APIUpdater.Framework.Core.SourceFile[] inputs, APIUpdater.Framework.Core.UpdaterParameters parameters) [0x00013] in <a746af91eb4946abb01fd402ed659b74>:0
at APIUpdater.Framework.Core.APIUpdaterBase.Update (APIUpdater.Framework.Core.SourceFile[] inputs, APIUpdater.Framework.Core.UpdaterParameters parameters) [0x0002a] in <3aa0dc9631894fbf9d7fb1f0bec9753b>:0
at ScriptUpdater.Program.UpdateLanguage (APIUpdater.Framework.Core.IScriptUpdater updater, APIUpdater.Framework.Configuration.CompilerResponseFile responseFile, System.String unityDataPath, System.String outputPath) [0x00083] in <5fbd3d45536c4995a0f985f31cf4fb54>:0
at ScriptUpdater.Program.Main (System.String[] args) [0x000c4] in <5fbd3d45536c4995a0f985f31cf4fb54>:0
Notes:
- This issue appears on Windows and OSX
- iOS and other platform API updater works with no issues
Reproduced on Unity 2017.1.3p3, 2017.2.2p3, 2017.3.2f1, 2017.4.1f1 and 2018.1.0f1
Could not reproduce issue on Unity 2018.2.0b1
Add comment
All about bugs
View bugs we have successfully reproduced, and vote for the bugs you want to see fixed most urgently.
Latest issues
- “Remove Unused Overrides” available on not loaded Scene and throws “ArgumentException: The scene is not loaded” warning
- Adaptive Probe Volume occlusion edge is calculated incorrectly when viewing probes near geometry edges
- Sampling a texture using an HLSL file throws shader errors and the code does not compile
- "Graphics.CopyTexture called with null source texture" error when Base Camera of an Overlay Camera is removed with DX11 Graphics API and Compatibility Mode enabled
- WebGL sends wrong value with large numbers when SendMessage function is used
Resolution Note:
The real problem is that for 'tvOS' there is a symbol defined as '69' and that is not valid. To fix this, simply go to Player Settings/tvOS and remove the offending symbol. The updater relies on a version of a library (Roslyn) that throws an exception instead of reporting an error. The newer versions of this library fixed this (and correctly reports an error instead of throwing an exception).