We read every piece of feedback, and take your input very seriously.
To see all available qualifiers, see our documentation.
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
Trying to parse the code void foo(int s = is causing an out-of-bounds error:
void foo(int s =
core.exception.ArrayIndexError@/home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d(9104): index [6] is out of bounds for array of length 6 ---------------- ??:? onArrayIndexError [0x7f0e1e4139be] ??:? _d_arraybounds_indexp [0x7f0e1e413fff] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:9104 const pure nothrow @property @nogc @safe std.experimental.lexer.TokenStructure!(ubyte, "import dparse.lexer:TokenTriviaFields,TriviaToken; mixin TokenTriviaFields;").TokenStructure dparse.parser.Parser.current() [0x565523b92951] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:7325 dparse.ast.TemplateValueParameterDefault dparse.parser.Parser.parseTemplateValueParameterDefault() [0x565523b8d125] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:7295 dparse.ast.TemplateValueParameter dparse.parser.Parser.parseTemplateValueParameter() [0x565523b8d026] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:7112 dparse.ast.TemplateParameter dparse.parser.Parser.parseTemplateParameter() [0x565523b8c56c] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:8821 dparse.ast.TemplateParameterList dparse.parser.Parser.parseCommaSeparatedRule!(dparse.ast.TemplateParameterList, dparse.ast.TemplateParameter, false).parseCommaSeparatedRule(bool) [0x565523b9afb3] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:7132 dparse.ast.TemplateParameterList dparse.parser.Parser.parseTemplateParameterList() [0x565523b8c61d] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:7148 dparse.ast.TemplateParameters dparse.parser.Parser.parseTemplateParameters() [0x565523b8c686] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:2669 dparse.ast.Declarator dparse.parser.Parser.parseDeclarator() [0x565523b7d7bc] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:8107 dparse.ast.VariableDeclaration dparse.parser.Parser.parseVariableDeclaration(dparse.ast.Type, bool) [0x565523b8fb17] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:2492 dparse.ast.Declaration dparse.parser.Parser.parseDeclaration(bool, bool, bool) [0x565523b7ca7e] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:5046 dparse.ast.Module dparse.parser.Parser.parseModule() [0x565523b85a51] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:71 dparse.ast.Module dparse.parser.parseModule!().parseModule(dparse.parser.ParserConfig) [0x565523b031c8] /home/happy/.dub/packages/libdparse/~master/libdparse/src/dparse/parser.d:100 dparse.ast.Module dparse.parser.parseModule!().parseModule(const(std.experimental.lexer.TokenStructure!(ubyte, "import dparse.lexer:TokenTriviaFields,TriviaToken; mixin TokenTriviaFields;").TokenStructure)[], immutable(char)[], dparse.rollback_allocator.RollbackAllocator*, , uint*, uint*) [0x565523b0314d] ./a.d:23 _Dmain [0x565523aff767] Error Program exited with code 1
The above stack trace is from the modified README example below:
/+dub.sdl: dependency "libdparse" version="~master" +/ import dparse.ast; import std.stdio, std.range; class TestVisitor : ASTVisitor {} void main() { import dparse.lexer; import dparse.parser : parseModule; import dparse.rollback_allocator : RollbackAllocator; auto sourceCode = q{ void foo(int s = }; LexerConfig config; auto cache = StringCache(StringCache.defaultBucketCount); auto tokens = getTokensForParser(sourceCode, config, &cache); RollbackAllocator rba; auto m = parseModule(tokens, "test.d", &rba); auto visitor = new TestVisitor(); visitor.visit(m); }
I hit this in serve-d when it crashed after I saved an incomplete buffer that contained the snippet.
The text was updated successfully, but these errors were encountered:
No branches or pull requests
Trying to parse the code
void foo(int s =
is causing an out-of-bounds error:The above stack trace is from the modified README example below:
I hit this in serve-d when it crashed after I saved an incomplete buffer that contained the snippet.
The text was updated successfully, but these errors were encountered: