Feature 'out variable declaration' is not available in C# 6

Anybody know when bpms might come into the current age?

System.Drawing.Bitmap CS8059 Feature 'out variable declaration' is not available in C# 6. Please use language version 7.0 or greater.

It’s frustrating to be stuck with a version that was released 10 years ago, prevented from using so many current features that have been added. Yes I know I can use the bpm to call a function and the function will compile, but sometimes its like one line of code and its more code to call a function than to just do the thing in a bpm.

3 Likes

Interesting, somehow functions are on a newer version of c#? Or my sever is?

I can do out variable declaration in a function library anyway.

Functions are on v7, bpms are on v6.

4 Likes

Well, its a hassle but if you find it worth it I suppose calling a function from a BPM can get you around the restriction. But I have to wonder why its there at all, maybe they just don’t want to update the UI?

1 Like

At least move BPMs up to C# 7 - not a big ask. It’s frustrating when I have to change my code style moving between BPMs and functions.

5 Likes

This is what I am saying, how hard could it be??

3 Likes

At least 6 releases behind current we ask for humbly!

3 Likes

Here’s an idea I found - 3 years old, still “gauging interest”. Nothing likely to happen for a while
Update C# language version support | Epicor Ideas Portal

4 Likes

I have given up voting on ideas, they have made it crystal clear its not important to them what we vote for.

2 Likes

I feel the same way. I think we’ve all voiced our concerns in multiple places, so I will not go on about it.

It’s wasted effort until noticeable changes are made.

4 Likes

^this at least please Epicor

2 Likes

Well, I have tested the out variable decl in these 3 versions and it still gives the same error. They can’t bump .NET version to a non LTS (Long-Term Support), so we should expect to get .NET 8 support at a minimum on both, EFX and BPM (soon 10).

Kinetic 23.2, 24.2, 25.1
System.Drawing.Bitmap CS8059 Feature ‘out variable declaration’ is not available in C# 6. Please use language version 7.0 or greater.

Smart Client and Kinetic BPM Designer both complain.

1 Like

Perhaps when the smart client is retired, they can update the c# version?

2 Likes

Well, 2023.2 was still .NET 6 on server, so that error was expected. However,2024 onwards is NET 8.

The PowerTools are still “SmartClient”, probably still target .NET Framework 4.8. Haven’t checked.

2 Likes

I would assume power tools is just a minimal version of the smart client, not a rewrite to the latest version of .NET

1 Like

Don’t need to assume, that is correct.

2 Likes

I ran into this same error today. I believe you need to define the variable wordConfDouble first, and then you can use it in the TryParse.

2 Likes