Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

System.Text.RegularExpressions.Tests.RegexGroupTests.Groups failure on Windows Server 2022 #65353

Closed
runfoapp bot opened this issue Feb 15, 2022 · 3 comments
Labels
area-System.Text.RegularExpressions untriaged New issue has not been triaged by the area owner

Comments

@runfoapp
Copy link

runfoapp bot commented Feb 15, 2022

    System.Text.RegularExpressions.Tests.RegexGroupTests.Groups(engine: SourceGenerated, cultureName: null, pattern: "^cat\\s+dog", input: "cat   \n\n\n   dog", options: Multiline, expectedGroups: ["cat   \n\n\n   dog"]) [FAIL]
      System.ArgumentException :      0: // <auto-generated/>
           1: #nullable enable
           2: #pragma warning disable CS0162 // Unreachable code
           3: #pragma warning disable CS0164 // Unreferenced label
           4: #pragma warning disable CS0219 // Variable assigned but never used
           5: 
           6: partial class C
           7: {
           8:     [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Text.RegularExpressions.Generator", "42.42.42.42")]
           9:     public static partial global::System.Text.RegularExpressions.Regex Get0() => GeneratedRegex_Get0_E95584BB.Instance;
          10:     
          11:     [global::System.CodeDom.Compiler.GeneratedCodeAttribute("System.Text.RegularExpressions.Generator", "42.42.42.42")]
          12:     [global::System.ComponentModel.EditorBrowsable(global::System.ComponentModel.EditorBrowsableState.Never)]
          13:     private sealed class GeneratedRegex_Get0_E95584BB : global::System.Text.RegularExpressions.Regex
          14:     {
          15:         public static global::System.Text.RegularExpressions.Regex Instance { get; } = new GeneratedRegex_Get0_E95584BB();
          16:     
          17:         private GeneratedRegex_Get0_E95584BB()
          18:         {
          19:             base.pattern = "^cat\\s+dog";
          20:             base.roptions = global::System.Text.RegularExpressions.RegexOptions.Multiline | global::System.Text.RegularExpressions.RegexOptions.Compiled;
          21:             base.internalMatchTimeout = global::System.Threading.Timeout.InfiniteTimeSpan;
          22:             base.factory = new RunnerFactory();
          23:             base.capsize = 1;
          24:         }
          25:         
          26:         private sealed class RunnerFactory : global::System.Text.RegularExpressions.RegexRunnerFactory
          27:         {
          28:             protected override global::System.Text.RegularExpressions.RegexRunner CreateInstance() => new Runner();
          29:     
          30:             private sealed class Runner : global::System.Text.RegularExpressions.RegexRunner
          31:             {
          32:                 protected override void InitTrackCount() => base.runtrackcount = 3;
          33:     
          34:                 // Description:
          35:                 // 	 Match if at the beginning of a line.
          36:                 // 	 Match the string "cat".
          37:                 // 	 Match a whitespace character atomically at least once.
          38:                 // 	 Match the string "dog".
          39:     
          40:                 protected override bool FindFirstChar()
          41:                 {
          42:                     int pos = base.runtextpos, end = base.runtextend;
          43:                     global::System.ReadOnlySpan<char> inputSpan = base.runtext;
          44:                     int beginning = base.runtextbeg;
          45:                     
          46:                     if (pos < end - 6)
          47:                     {
          48:                         // Beginning-of-line anchor
          49:                         if (pos > beginning && inputSpan[pos - 1] != '\n')
          50:                         {
          51:                             int newlinePos = global::System.MemoryExtensions.IndexOf(inputSpan.Slice(pos), '\n');
          52:                             if (newlinePos < 0 || newlinePos + pos + 1 > end)
          53:                             {
          54:                                 goto NoStartingPositionFound;
          55:                             }
          56:                             pos = newlinePos + pos + 1;
          57:                         }
          58:                         
          59:                         int i = global::System.MemoryExtensions.IndexOf(inputSpan.Slice(pos, end - pos), "cat");
          60:                         if (i >= 0)
          61:                         {
          62:                             base.runtextpos = pos + i;
          63:                             return true;
          64:                         }
          65:                     }
          66:                     
          67:                     // No starting position found
          68:                     NoStartingPositionFound:
          69:                     base.runtextpos = end;
          70:                     return false;
          71:                 }
          72:     
          73:                 protected override void Go()
          74:                 {
          75:                     global::System.ReadOnlySpan<char> inputSpan = base.runtext;
          76:                     int pos = base.runtextpos, end = base.runtextend;
          77:                     int original_pos = pos;
          78:                     global::System.ReadOnlySpan<byte> byteSpan;
          79:                     int beginning = base.runtextbeg;
          80:                     global::System.ReadOnlySpan<char> slice = inputSpan.Slice(pos, end - pos);
          81:                     
          82:                     // Match if at the beginning of a line.
          83:                     {
          84:                         if (pos > beginning && inputSpan[pos - 1] != '\n')
          85:                         {
          86:                             goto NoMatch;
          87:                         }
          88:                     }
          89:                     
          90:                     // Match the string "cat".
          91:                     {
          92:                         byteSpan��������l::System.Runtime.InteropServices.MemoryMarshal.AsBytes(slice);
          93:                         if ((uint)slice.Length < 3 ||
          94:                             global::System.Buffers.Binary.BinaryPrimitives.ReadUInt32LittleEndian(byteSpan) != 0x610063u ||
          95:                             slice[2] != 't')
          96:                         {
          97:                             goto NoMatch;
          98:                         }
          99:                     }
         100:                     
         101:                     // Match a whitespace character atomically at least once.
         102:                     {
         103:                         pos += 3;
         104:                         slice = slice.Slice(3);
         105:                         int iteration = 0;
         106:                         while ((uint)iteration < (uint)slice.Length && char.IsWhiteSpace(slice[iteration]))
         107:                         {
         108:                             iteration++;
         109:                         }
         110:                         
         111:                         if (iteration == 0)
         112:                         {
         113:                             goto NoMatch;
         114:                         }
         115:                         
         116:                         slice = slice.Slice(iteration);
         117:                         pos += iteration;
         118:                     }
         119:                     
         120:                     // Match the string "dog".
         121:                     {
         122:                         byteSpan = global::System.Runtime.InteropServices.MemoryMarshal.AsBytes(slice);
         123:                         if ((uint)slice.Length < 3 ||
         124:                             global::System.Buffers.Binary.BinaryPrimitives.ReadUInt32LittleEndian(byteSpan) != 0x6F0064u ||
         125:                             slice[2] != 'g')
         126:                         {
         127:                             goto NoMatch;
         128:                         }
         129:                     }
         130:                     
         131:                     // The input matched.
         132:                     pos += 3;
         133:                     base.runtextpos = pos;
         134:                     base.Capture(0, original_pos, pos);
         135:                     return;
         136:                     
         137:                     // The input didn't match.
         138:                     NoMatch:;
         139:                 }
         140:             }
         141:         }
         142:     }
         143: }
         144: 
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,33): error CS1002: ; expected
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,33): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,34): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,35): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,36): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,37): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,38): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,39): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,40): error CS1056: Unexpected character '�'
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,41): error CS0432: Alias 'l' not found
      System.Text.RegularExpressions.Generator\System.Text.RegularExpressions.Generator.RegexGenerator\RegexGenerator.g.cs(93,25): error CS0165: Use of unassigned local variable 'byteSpan'
      Stack Trace:
        /_/src/libraries/System.Text.RegularExpressions/tests/RegexGeneratorHelper.netcoreapp.cs(145,0): at System.Text.RegularExpressions.Tests.RegexGeneratorHelper.SourceGenRegexAsync(ValueTuple`3[] regexes, CancellationToken cancellationToken)
        /_/src/libraries/System.Text.RegularExpressions/tests/RegexGeneratorHelper.netcoreapp.cs(57,0): at System.Text.RegularExpressions.Tests.RegexGeneratorHelper.SourceGenRegexAsync(String pattern, Nullable`1 options, Nullable`1 matchTimeout, CancellationToken cancellationToken)
        /_/src/libraries/System.Text.RegularExpressions/tests/Regex.Tests.Common.cs(122,0): at System.Text.RegularExpressions.Tests.RegexHelpers.GetRegexAsync(RegexEngine engine, String pattern, Nullable`1 options, Nullable`1 matchTimeout)
        /_/src/libraries/System.Text.RegularExpressions/tests/Regex.Groups.Tests.cs(956,0): at System.Text.RegularExpressions.Tests.RegexGroupTests.Groups(RegexEngine engine, String cultureName, String pattern, String input, RegexOptions options, String[] expectedGroups)

Runfo Tracking Issue: System.Text.RegularExpressions.Tests.RegexGroupTests.Groups failure on Windows Server 2022

Build Definition Kind Run Name Console Core Dump Test Results Run Client
1612202 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1612202 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1612202 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1612202 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1606293 runtime-extra-platforms PR 64952 net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1606293 runtime-extra-platforms PR 64952 net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1606293 runtime-extra-platforms PR 64952 net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1606293 runtime-extra-platforms PR 64952 net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1602008 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1602008 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1602008 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py
1602008 runtime-extra-platforms Rolling net7.0-windows-Release-x86-CoreCLR_release-Windows.Amd64.Server2022.Open console.log runclient.py

Build Result Summary

Day Hit Count Week Hit Count Month Hit Count
0 2 3
@dotnet-issue-labeler dotnet-issue-labeler bot added area-System.Text.RegularExpressions untriaged New issue has not been triaged by the area owner labels Feb 15, 2022
@ghost
Copy link

ghost commented Feb 15, 2022

Tagging subscribers to this area: @dotnet/area-system-text-regularexpressions
See info in area-owners.md if you want to be subscribed.

Issue Details

Runfo Creating Tracking Issue (data being generated)

Author: runfoapp[bot]
Assignees: -
Labels:

area-System.Text.RegularExpressions, untriaged

Milestone: -

@stephentoub
Copy link
Member

Seems likely this is related to #65026 and maybe #65235.

@adamsitnik
Copy link
Member

It has been most likely fixed by #65490. I am going to close the issue, please reopen it if it fails again.

@ghost ghost locked as resolved and limited conversation to collaborators Mar 20, 2022
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
area-System.Text.RegularExpressions untriaged New issue has not been triaged by the area owner
Projects
None yet
Development

No branches or pull requests

2 participants