Hacktoberfest 2026 : les issues que les mainteneurs ont marquées pour octobre, ouvertes et accessibles aux débutants. Parcourir les issues Hacktoberfest

CAST function parameter fragment is incorrectly calculated during parsing

Ouverte
#224 0 commentaires 0 réactions 0 personnes assignées Voir sur GitHub

Personne n'a encore pris cette issue.

Évaluation

Difficulté
3/5
Temps estimé
1-2 jours
Accessibilité débutants
58/100
Type d'issue
Bug
Clarté
Plutôt claire
Activité
Calme
Stack technique
sql
Domaine
compilers

Piste de recherche

Commencez par reproduire le problème avec TSql180Parser et TSql170Parser à l’aide de SELECT CAST('TEST' AS VARCHAR(20)), puis examinez comment le fragment de paramètre de CAST est calculé. Le travail est terminé lorsque le fragment de paramètre inclut à la fois 'TEST' et AS VARCHAR(20), tout en permettant au parsing de réussir sans erreurs.

Rédigé par le modèle d'indexation à partir du texte de l'issue.

Description

Version - 180.78.1
Parser - TSql180Parser and TSql170Parser

Issue Description : When the fragment for the parameter in CAST function is calculated it consist only the "'Test'" part and does not contain the "AS VARCHAR(20)" section.

Steps to reproduce -

Try parsing the below SQL script with the parser:

SELECT CAST('TEST' AS VARCHAR(20))

Example -

using Microsoft.SqlServer.TransactSql.ScriptDom;

internal class Program
{
    static void Main(string[] args)
    {
        var script = "Example Script";
        var parser = new TSql180Parser(true);
        var fragment = parser.Parse(new StringReader(script), out var parseErrors);

        if (parseErrors.Count > 0)
        {
            foreach(var parseError in parseErrors)
                Console.WriteLine(parseError.Message);
        }
        else
        {
            Console.WriteLine("Parsed successfully");
        }
    }
}

Actual Output - Parameter fragment given by the parser - 'TEST'
Expected Output - Parameter fragment - 'TEST' AS VARCHAR(20)

Langage dominant
GAP
Étoiles
277
Forks
43
Merge moyen
9 j 23 h
PR mergées (30 j)
2

Préparer son environnement

Par où commencer

  1. Lisez l'issue en entier, puis le guide de contribution du projet.
  2. Signalez en commentaire que vous la prenez — cela évite que deux personnes fassent le même travail.
  3. Forkez le dépôt et travaillez sur une branche.
  4. Ouvrez une pull request qui référence le numéro de l'issue.

Autres issues de microsoft/SqlScriptDOM

Toutes les issues de microsoft/SqlScriptDOM

Issues similaires

Plus d'issues Compilers

Recevez les nouvelles issues par e-mail

Un résumé court des issues GitHub adaptées aux débutants.