xgopilot
034b05c53c
cl: remove Underlying() call to reject string type aliases in rewrites
...
Type aliases like `type T string` are no longer supported for
-ldflags -X rewrites. Only direct *string types are now allowed.
- Removed Underlying() call from isStringPtrType
- Added TestRewriteIgnoresStringAlias test case
Generated with [codeagent](https://github.com/qbox/codeagent )
Co-authored-by: cpunion <8459+cpunion@users.noreply.github.com >
2025-11-14 14:49:30 +00:00
xgopilot
1ba7d1e561
fix: change to isStringPtrType for global string var
...
- Replace isStringType with isStringPtrType to properly validate that only *string type variables can be rewritten with -ldflags -X
- Remove maxStringTypeDepth constant as it's no longer needed
- Update tests to reflect the new function name and add test case for valid *string type
- Fix compileGlobal to use gbl.Type() for accurate type checking
This addresses the review feedback that Go only allows -X rewrites for the basic string type, not derived types like "type T string".
Generated with [codeagent](https://github.com/qbox/codeagent )
Co-authored-by: cpunion <8459+cpunion@users.noreply.github.com >
2025-11-14 14:38:46 +00:00
xgopilot
d17ff2592a
build: improve error handling and code quality
...
- Fix missing error handling in exportObject function
- Add explicit warning for non-string variable rewrites
- Improve documentation for maxRewriteValueLength constant
Generated with [codeagent](https://github.com/qbox/codeagent )
Co-authored-by: cpunion <8459+cpunion@users.noreply.github.com >
2025-11-14 11:37:09 +00:00
Li Jie
3a1d8693e9
rewrite: address review feedback
2025-11-14 17:57:05 +08:00
Li Jie
22a43622a0
cl: fix global var rewrite in alt pkg
2025-11-14 16:58:30 +08:00
Li Jie
9b76be9e9e
support ldflags rewrites for initialized globals
2025-11-14 11:59:13 +08:00
Li Jie
21fef123d2
di: clean unreachable code
2025-11-13 15:48:50 +08:00
Li Jie
16709411a0
defer: enable loop lowering
2025-11-13 15:48:46 +08:00
Li Jie
729e5772a0
process //export with initLink
2025-09-11 08:53:17 +08:00
visualfc
fd17a43ade
cl: interface support __llgo_va_list
2025-09-09 16:51:08 +08:00
visualfc
89af430329
cl: embed struct support __llgo_va_list
2025-09-09 16:14:25 +08:00
visualfc
d7f2f4efdd
cl: patchType check func signature
2025-07-03 20:48:51 +08:00
xushiwei
915cdf2c23
#1165
2025-06-23 22:01:42 +08:00
xushiwei
b7b6e3bc93
testFrom: use test.Diff
2025-06-23 21:14:26 +08:00
Li Jie
ed366568b4
move out c/cpp/py
2025-04-03 16:26:11 +08:00
Li Jie
1172e5bdce
build: separate compiler and libs
2025-01-08 14:59:01 +08:00
Li Jie
c3407eac5e
cgo: supports //export functions only calls in C
2024-11-27 20:24:53 +08:00
Li Jie
90763de93c
cgo: supports c/go callback funcs
2024-11-27 18:41:56 +08:00
Li Jie
d6c527f662
cgo: support macros
2024-11-27 18:41:56 +08:00
Li Jie
43c4a3bfdc
test: enable debug testing
2024-11-26 15:43:34 +08:00
Li Jie
e732e5158e
cl: fix package patching
2024-11-25 11:36:26 +08:00
Li Jie
9f0b3963cb
cgo: support full cgo tags
2024-11-15 16:08:24 +08:00
Li Jie
a64f4219e9
cgo: full supports cgo preambles and auto compile c files
2024-11-14 23:44:25 +08:00
Li Jie
ec38943c53
cl: compile cgo
2024-11-13 20:32:08 +08:00
visualfc
38091b2021
ssa: func Instantiate
2024-10-30 21:39:30 +08:00
visualfc
ce87f293aa
ssa: fix map key has typeargs
2024-10-30 20:22:05 +08:00
Li Jie
88cb607975
debug: supports scope (if, for)
2024-09-30 10:15:47 +08:00
Li Jie
e392956e2a
debug: fix basic types
2024-09-27 21:36:12 +08:00
Li Jie
2e042f0c59
lldb: fix struct vars debugging
2024-09-27 21:36:08 +08:00
Li Jie
6c18dc63aa
build: enable ssa.GlobalDebug when LLGO_DEBUG=1 enabled, enable ssa.NaiveForm when LLGO_OPTIMIZED=0
2024-09-24 14:16:49 +08:00
Li Jie
dad22b1686
cl: switch debug symbols with LLGO_DEBUG
2024-09-22 11:52:23 +08:00
Li Jie
f71e34fd9f
ssa: fix function and global var debug info scope
2024-09-20 17:14:27 +08:00
Li Jie
d89b68a279
cl: don't declare var of ssa.Alloc and ssa.FieldAddr
2024-09-20 12:20:46 +08:00
Li Jie
f4089bc164
ssa: struct debug info creation supports resursive
2024-09-19 09:45:26 +08:00
Li Jie
b0f04d91bf
cl: fix dbg.declare (and local var)
2024-09-18 23:47:48 +08:00
Li Jie
87f6c8087f
ssa: debug info of global variable
2024-09-18 22:17:49 +08:00
Li Jie
90a83c8f11
ssa: debug info of function/closure
2024-09-18 21:14:04 +08:00
Li Jie
d85a080f9b
ssa: support string and pointer debug info, fix params debugging
2024-09-18 21:14:04 +08:00
Li Jie
53097ab183
fix debug info of struct parameter,
2024-09-18 21:14:04 +08:00
Li Jie
9978a370f1
x
2024-09-18 21:14:04 +08:00
Li Jie
7ddc8c6aeb
increase coverage rate
2024-09-18 21:14:04 +08:00
Li Jie
d8838503b2
generate llvm.dbg.value
2024-09-18 21:14:04 +08:00
Li Jie
78b7742354
fix argNo with 1-based index
2024-09-18 21:14:04 +08:00
Li Jie
db128dbc40
test: debug symbols generation
2024-09-18 21:14:04 +08:00
Li Jie
d6f87a8254
rename debug info class/funcs
2024-09-18 21:14:04 +08:00
Li Jie
4c5f37db0f
debug symbols switch
2024-09-18 21:14:04 +08:00
Li Jie
3e5338c902
ssa: add llvm debug info
2024-09-18 21:14:04 +08:00
visualfc
b7088510c5
cl: remove checkInstanceNamed
2024-09-09 11:36:39 +08:00
visualfc
3bdb921ee5
cl: processPkg check runtimeTypes for generic method
2024-09-09 11:22:03 +08:00
visualfc
2feb3e1d7a
ssa: prog.linkname; abi llvm.LinkOnceAnyLinkage always
2024-08-20 21:11:27 +08:00