Commit Graph

333 Commits

Author SHA1 Message Date
Roy Qu aa12dcc4d1 - fix: Crash if #include a non-exist header file in the source. 2023-11-05 21:00:52 +08:00
Roy Qu 43dbbf798a optimize 2023-10-28 09:20:01 +08:00
Roy Qu 6cf04c1ca6 minor refactor 2023-10-27 20:49:39 +08:00
Roy Qu 13d81b1134 reduce memory usage 2023-10-27 20:16:44 +08:00
Roy Qu 9a51678d09 Minor update 2023-10-27 09:49:34 +08:00
Roy Qu 5814043302 - enhancement: when induce type info for return value, try to select the overloaded one that doesn't have an "auto" type. 2023-10-26 08:57:40 +08:00
Roy Qu 94e955b07a - fix: If the integrated gcc compiler is add to path, auto find compilers will find in twice. (Windows) 2023-10-25 18:58:45 +08:00
Roy Qu 3a78819fb8 - fix: C++ compiler atrribute '[[xxx]]' are not correctly handled. 2023-10-25 17:01:42 +08:00
Roy Qu 85ef5986bf Add debug info for macro expansion 2023-10-25 11:49:25 +08:00
Roy Qu b287464b98 - fix: Macros that defined by the compiler are not correctly syntax-colored and tooltiped. 2023-10-25 00:34:29 +08:00
Roy Qu 0bc361e1f9 - enhancement: Better support for expanding macros with complex parameters. 2023-10-25 00:19:05 +08:00
Roy Qu 4eca58b62a - enhancement: Basic support for parsing variadic macros. 2023-10-24 20:35:43 +08:00
Roy Qu e0b9bfb4c8 minor cleanup 2023-10-22 20:04:21 +08:00
Roy Qu c3352ad661 - refactor: for/catch processing
- fix: Link in the project options dialog / precompiled header pages is not clickable.
2023-10-22 18:33:53 +08:00
Roy Qu 30cabe2faa - enhancement: Parse files that contains C++ 20 'concept' keyword. (No code suggesion for concepts now)
- enhancement: Parse files that contains C++ 20 'requires' keyword.
  - fix: Code suggestions in namespace.
  - enhancement: Code suggestions for namespace alias.
  - fix: Correctly handle statements like 'using xxx::operator()'.
2023-10-22 13:19:03 +08:00
Roy Qu 9467645bef - fix: __attribute__ is not correctly handled if it is after 'static'. 2023-10-21 22:19:26 +08:00
Roy Qu eb7c1d0c8f Merge branch '2.26' 2023-10-21 13:38:50 +08:00
Cyano Hao a62acc2eb0
Add Windows XP support (#146)
* improve Qt 5.6 support

* switch registry API to Windows XP compatible Unicode API

* update docs

* add comment for `CONFIG += c++14 c++17` in qmake .pro files

* fix logic for lockFile
2023-10-21 13:38:12 +08:00
Roy Qu 8fe15dab8a - enhancment: Code suggestion for embedded std::vectors. 2023-10-19 19:32:08 +08:00
Roy Qu 526e73d27a Use QRecursiveMutex instead of QMutex in CppParser 2023-10-10 19:59:39 +08:00
Roy Qu 85cd761e36 minor fix 2023-10-01 10:49:59 +08:00
Roy Qu 14ba74e705 - fix: Processing for #if/#elif/#else is not correct. 2023-10-01 10:45:43 +08:00
Roy Qu 98f015f661 fix: linux compatibility(from cyano.CN) 2023-08-17 22:08:31 +08:00
Roy Qu 6b2a800d37 - enhancement: Support SDCC Project. 2023-08-17 19:24:49 +08:00
Roy Qu dd5640d334 - enhancement: False branches are displayed as comments. 2023-08-17 13:24:08 +08:00
Roy Qu dcd53771d3 fix: Can't suggest members of variable defined by unname struct/union. 2023-08-13 22:19:56 +08:00
Roy Qu 37df656c82 add more sdcc keywords 2023-08-13 20:57:09 +08:00
Roy Qu 707358817c - enhancement: Autowrap tool output text. 2023-08-13 15:41:17 +08:00
Roy Qu 738faf0c90 - fix: Crash if close file while auto syntax checking.
- enhancement: support sdcc compiler.
2023-08-13 14:46:53 +08:00
Roy Qu f462d6708d - fix: Crash if close file while auto syntax checking. 2023-08-12 13:51:35 +08:00
Roy Qu 739f382f46 - change: Remove option "clear all symbols when current editor is hidden".
- fix: When opening multiple files, only the active file should be parsed.
2023-08-11 13:49:09 +08:00
Roy Qu 7104089e66 comment out debug info 2023-08-09 22:36:33 +08:00
Roy Qu 0f7b4b8ce5 - fix: Wrong code suggestion while inputing numbers in assembly files.
- fix: Defines in all files are wrongly cleared when reparsing.
2023-08-09 22:35:25 +08:00
Roy Qu f111433ac5 - fix: Can't parse virtual inherit. 2023-08-08 10:40:59 +08:00
Roy Qu 30426ac58f Crash when enum value is a symbol that not valid. 2023-08-07 18:28:30 +08:00
Roy Qu d1214e3d63 fix: Value of noname enum members are not shown in the class browser. 2023-08-07 14:42:42 +08:00
Roy Qu 6a06b5b3d6 - fix: Dummy struct/enum symbols shouldn't be shown in the completion suggestion.
- enhancement: Support optional enum name.
  - enhancement: Support optional enum type.
  - enhancement: Support simple const expression evaluation for enum values.
  - fix: Accessibilty for inherited members are not correct calculated in multiple inheritance.
  - fix: Can't handle full class name when handle inheritance.
2023-08-07 14:23:57 +08:00
Roy Qu d3a8a57cf5 - fix: Goto definition/declaration may choose wrong symbol is multiple files are opened and symbols have the same name. 2023-07-27 15:44:33 +08:00
Roy Qu 8e6a1872db - fix: members of elements of stl maps are not correctly suggested. 2023-07-14 17:44:14 +08:00
Roy Qu 56f03a52d5 - fix: Keyword asm is not correctly parsed. 2023-07-05 09:01:38 +08:00
Roy Qu bd768552c0 - fix: Inherited class/struct members are not correctly shown in the completion suggestions. 2023-07-04 20:10:08 +08:00
Roy Qu 0e1332dd5e fix: "__max" in istream.tcc is wrongly expanded. 2023-07-03 18:21:33 +08:00
Roy Qu b571e5f535 - enhancement: Show code completion suggestion after "typedef" and "const". 2023-07-03 09:36:27 +08:00
Roy Qu 362cf5701c - improve: Correctly expands multi-line macros when parsing;
- improve: Correctly eppands macros when real param string contains '(' or  ')'.
2023-07-01 18:06:39 +08:00
Roy Qu 58b92a6360 - fix: crash when source files contains macro definitions like "#define cfun (cfun + 0)" 2023-07-01 13:41:27 +08:00
Roy Qu 88b592f829 - fix: crash when parsing files containing inline assembly code. 2023-06-30 11:52:01 +08:00
Roy Qu e5e322dea4 - enhancement: correctly highlight multiline raw string literals.
- change: remove "Assembly" color scheme item (it's not used anymore).
2023-06-30 10:53:58 +08:00
Roy Qu 8ad9e22976 - fix: "typedef struct" for arrays is not correctly parsed. 2023-06-30 09:29:20 +08:00
Roy Qu d71cd7e7dc - fix: "typedef struct" that don't have definition of the struct is not correctly parsed. 2023-06-29 21:31:30 +08:00
Roy Qu 4070362cdc - enhancement: improve parsing result for function parameters like 'Node (&node)[10]' 2023-06-21 19:30:02 +08:00