DevTools named hook parsing logic currently matches AST nodes using the original line number:
https://github.com/facebook/react/blob/ed6c091fe961a3b95e956ebcefe8f152177b1fb7/packages/react-devtools-extensions/src/parseHookNames.js#L341-L346

But this may not be sufficient, as mentioned in comment https://github.com/facebook/react/pull/21641#discussion_r662951987:
> Are we assuming that a line number is sufficient to identify a hook call? Seems like that assumption breaks down in edge cases:
>
> 1. Minified code (either without a source map, or a bundle *built* from pre-minified inputs) can have multiple hooks on one line.
> 2. Some code might be authored with quirky formatting, i.e. not with a typical Prettier / ESLint setup.
return Promise.resolve(null);
  }
  const hooksList: Array<HooksNode> = [];
  flattenHooksList(hooksTree, hooksList);
  if (__DEBUG__) {
    console.log('parseHookNames() hooksList:', hooksList);
  }
  
  const locationKeyToHookSourceData: Map<string, HookSourceData> = new Map();
  for (let i = 0; i < hooksList.length; i++) {
    const hook = hooksList[i];
    const hookSource = hook.hookSource;
    if (hookSource == null) {
      
      
      throw Error('Hook source code location not found.');
    }
    const locationKey = getHookSourceLocationKey(hookSource);
    if (!locationKeyToHookSourceData.has(locationKey)) {
      
      const runtimeSourceURL = ((hookSource.fileName: any): string);
      const hookSourceData: HookSourceData = {
        hookSource,
        originalSourceAST: null,
        originalSourceCode: null,
        originalSourceURL: null,